@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary-blue: #1e40af;--primary-blue-light: #3b82f6;--primary-blue-dark: #1e3a8a;--primary-blue-soft: #dbeafe;--secondary-green: #059669;--secondary-green-light: #10b981;--secondary-green-dark: #047857;--secondary-green-soft: #d1fae5;--accent-purple: #7c3aed;--accent-orange: #f59e0b;--accent-red: #dc2626;--accent-yellow: #eab308;--white: #ffffff;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--success: #059669;--warning: #f59e0b;--error: #dc2626;--info: #3b82f6;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--bg-card: #ffffff;--bg-light: #f8fafc;--text-primary: #1f2937;--text-secondary: #4b5563;--text-muted: #6b7280;--text-light: #9ca3af;--text-white: #ffffff;--border-light: #e5e7eb;--border-medium: #d1d5db;--border-dark: #9ca3af;--border-card: #e5e7eb;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--primary-gradient: linear-gradient(135deg, #1e40af 0%, #3b82f6 100%);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6}.fade-in{animation:fadeIn .5s ease-in-out}.slide-in-right{animation:slideInRight .5s ease-out}.slide-in-left{animation:slideInLeft .5s ease-out}.slide-in-up{animation:slideInUp .5s ease-out}.scale-in{animation:scaleIn .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.status-active{background-color:var(--secondary-green-soft);color:var(--secondary-green-dark)}.status-inactive{background-color:var(--gray-100);color:var(--gray-600)}.status-urgent{background-color:#fee2e2;color:var(--accent-red)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:var(--radius-lg);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal);text-decoration:none;white-space:nowrap}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn:active{transform:translateY(0)}.btn-primary{background-color:var(--primary-blue);color:var(--white)}.btn-primary:hover{background-color:var(--primary-blue-dark)}.btn-secondary{background-color:var(--gray-100);color:var(--text-primary);border:1px solid var(--border-medium)}.btn-secondary:hover{background-color:var(--gray-200)}.btn-success{background-color:var(--secondary-green);color:var(--white)}.btn-success:hover{background-color:var(--secondary-green-dark)}.btn-danger{background-color:var(--accent-red);color:var(--white)}.btn-danger:hover{background-color:#b91c1c}.form-input{width:100%;padding:.75rem 1rem;border:1px solid var(--border-medium);border-radius:var(--radius-lg);font-size:.875rem;transition:all var(--transition-normal);background-color:var(--white)}.form-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.form-input::placeholder{color:var(--text-muted)}.form-input.error{border-color:var(--accent-red)}.form-input.error:focus{box-shadow:0 0 0 3px #dc26261a}.card{background-color:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.spinner{width:2rem;height:2rem;border:2px solid var(--gray-200);border-top:2px solid var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 768px){.btn{padding:.625rem 1.25rem;font-size:.8125rem}.text-2xl{font-size:1.25rem}.text-3xl{font-size:1.5rem}}@media (max-width: 480px){.btn{padding:.5rem 1rem;font-size:.75rem}}.sidebar{background:linear-gradient(180deg,#3b82f6,#2563eb);color:#f8fafc;width:260px;min-width:260px;height:100vh;display:flex;flex-direction:column;position:fixed;left:0;top:0;z-index:1000;box-shadow:2px 0 10px #0003;overflow-y:auto;transition:transform .3s ease;font-family:Inter,sans-serif}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#ffffff1a}.sidebar::-webkit-scrollbar-thumb{background-color:#ffffff4d;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff80}.sidebar-header{padding:24px 20px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.2);background:#ffffff1a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);color:#fff}.sidebar-header h2{margin:0;font-size:22px;font-weight:700;display:flex;align-items:center;gap:8px;text-shadow:0 1px 2px rgba(0,0,0,.2)}.sidebar-header h2 svg{font-size:28px;color:#fff}.sidebar-nav{flex-grow:1;padding:12px 0}.nav-list{list-style:none;padding:0;margin:0}.nav-item{position:relative}.nav-link{display:flex;align-items:center;gap:12px;padding:12px 20px;color:#e2e8f0;text-decoration:none;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;border-radius:8px;margin:4px 12px}.nav-link:hover{color:#fff;background-color:#ffffff1a}.nav-link.active{color:#fff;font-weight:600;background-color:#fff3;box-shadow:0 1px 3px #0000001a}.nav-link.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:80%;background-color:#fff;border-radius:0 4px 4px 0}.nav-icon{display:flex;align-items:center;justify-content:center;font-size:20px}.dropdown-toggle{display:flex}.dropdown-arrow{transition:transform .2s ease;display:flex;align-items:center;color:#e2e8f0}.dropdown-toggle:hover .dropdown-arrow,.dropdown-toggle.open .dropdown-arrow{transform:rotate(180deg);color:#fff}.dropdown-menu{list-style:none;padding:0;background-color:#0000001a;border-radius:8px;overflow:hidden;max-height:0;transition:max-height .3s cubic-bezier(.4,0,.2,1);margin:0 12px 4px}.dropdown-menu.open{max-height:350px;overflow-y:auto}.dropdown-item{display:flex;align-items:center;gap:12px;padding:10px 16px 10px 24px;color:#e2e8f0;font-size:14px;cursor:pointer;transition:all .2s ease;border-radius:4px;margin:2px 8px}.dropdown-item:hover{color:#fff;background-color:#ffffff0d}.dropdown-item.active{color:#fff;font-weight:600;background-color:#ffffff1a}.sidebar-footer{padding:16px 20px;border-top:1px solid rgba(255,255,255,.2);background:#ffffff1a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.logout-btn{width:100%;padding:12px;background:#ef4444;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease;box-shadow:0 4px 6px #0000001a}.logout-btn:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 6px 10px #00000026}@media (max-width: 992px){.sidebar{transform:translate(-100%);box-shadow:none}.sidebar.open{transform:translate(0);box-shadow:2px 0 10px #0003}}.sidebar-toggle-btn{display:none;position:fixed;top:15px;left:15px;z-index:1001;background:#3b82f6;color:#fff;border:none;padding:10px;border-radius:8px;box-shadow:0 2px 10px #0003;cursor:pointer;font-size:24px;transition:all .2s ease;line-height:1}.sidebar-toggle-btn:hover{background:#2563eb;transform:scale(1.05)}@media (max-width: 992px){.sidebar-toggle-btn{display:flex}}.main-content{padding:20px;transition:margin-left .3s ease;min-height:100vh;width:100%;box-sizing:border-box}@media (min-width: 993px){.main-content{margin-left:260px;width:calc(100% - 260px)}}.sidebar-header{padding:20px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:12px;flex-direction:column;min-height:100px;justify-content:center}.sidebar-header h2{margin:0;font-size:20px;font-weight:700;color:#fff;display:flex;align-items:center;gap:10px;text-align:center}.hospital-logo{width:60px;height:60px;border-radius:50%;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0003;padding:5px}.hospital-logo img{width:100%;height:100%;object-fit:contain}.header-loading{display:flex;align-items:center;justify-content:center;padding:20px}.header-loading-spinner{width:30px;height:30px;border:3px solid rgba(255,255,255,.3);border-top:3px solid white;border-radius:50%;animation:headerSpin 1s linear infinite}@keyframes headerSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.sidebar-header{padding:15px;min-height:80px}.sidebar-header h2{font-size:18px}.hospital-logo{width:50px;height:50px}}:root{--primary-medical: #2563eb;--primary-medical-dark: #1d4ed8;--primary-medical-light: #3b82f6;--secondary-health: #059669;--secondary-health-dark: #047857;--accent-care: #dc2626;--accent-wellness: #7c3aed;--white: #ffffff;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--text-primary: #0f172a;--text-secondary: #64748b;--text-muted: #94a3b8;--border-light: #e2e8f0;--border-medium: #cbd5e1;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 2.5rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--text-primary);background:var(--gray-50)}.login-container{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe,#f8fafc);padding:var(--spacing-lg);position:relative;overflow:hidden}.login-background{position:absolute;inset:0;pointer-events:none;z-index:1}.medical-pattern{position:absolute;inset:0;background-image:radial-gradient(circle at 25% 25%,rgba(37,99,235,.1) 0%,transparent 25%),radial-gradient(circle at 75% 75%,rgba(5,150,105,.1) 0%,transparent 25%);background-size:200px 200px;animation:patternMove 20s ease-in-out infinite}.login-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);padding:var(--spacing-2xl);width:100%;max-width:420px;position:relative;z-index:2;border:1px solid var(--border-light)}.login-header{text-align:center;margin-bottom:var(--spacing-2xl)}.login-logo{margin-bottom:var(--spacing-lg)}.logo-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--primary-medical),var(--secondary-health));border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;margin:0 auto;box-shadow:var(--shadow-md)}.logo-icon svg{width:32px;height:32px;color:var(--white)}.login-title{font-size:var(--text-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs);letter-spacing:-.025em}.login-subtitle{font-size:var(--text-sm);color:var(--text-secondary);font-weight:400}.form-group{margin-bottom:var(--spacing-xl);position:relative}.input-wrapper{position:relative;width:100%}.form-input{width:100%;padding:1rem 3rem 1rem 1rem;border:2px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--text-base);transition:all var(--transition-normal);background:var(--white);color:var(--text-primary);outline:none;font-weight:400;line-height:1.5;font-family:inherit}.form-input:focus{border-color:var(--primary-medical);box-shadow:0 0 0 3px #2563eb1a}.form-input:disabled{background-color:var(--gray-50);color:var(--text-muted);cursor:not-allowed}.input-label{position:absolute;left:1rem;top:50%;transform:translateY(-50%);background:var(--white);padding:0 .5rem;color:var(--text-muted);font-size:var(--text-base);font-weight:400;transition:all var(--transition-normal);pointer-events:none;z-index:2}.form-input:focus~.input-label,.form-input:not(:placeholder-shown)~.input-label{top:0;left:.75rem;font-size:var(--text-sm);font-weight:500;color:var(--primary-medical);background:var(--white)}.input-icon{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:var(--text-muted);transition:color var(--transition-normal);z-index:2;pointer-events:none}.input-icon svg{width:18px;height:18px}.form-input:focus~.input-icon{color:var(--primary-medical)}.password-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-normal);z-index:3;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.password-toggle:hover{color:var(--primary-medical);background:#2563eb0d}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.password-toggle svg{width:18px;height:18px}.error-message{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--accent-care);font-size:var(--text-sm);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:#dc26260d;border:1px solid rgba(220,38,38,.2);border-radius:var(--radius-lg);font-weight:500}.error-message svg{width:16px;height:16px;flex-shrink:0}.login-btn{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,var(--primary-medical),var(--primary-medical-light));color:var(--white);border:none;border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);min-height:48px;font-family:inherit}.login-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,var(--primary-medical-dark),var(--primary-medical))}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{background:var(--gray-300);cursor:not-allowed;transform:none;box-shadow:none}.login-btn svg{width:18px;height:18px}.login-btn.loading{color:transparent}.login-btn.loading span{opacity:0}.spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top:2px solid var(--white);border-radius:50%;animation:spin 1s linear infinite}.login-footer{text-align:center}.help-section{margin-top:var(--spacing-md)}.help-text{font-size:var(--text-sm);color:var(--text-muted);font-weight:400}.help-link{color:var(--primary-medical);text-decoration:none;font-weight:500;transition:color var(--transition-normal)}.help-link:hover{color:var(--primary-medical-dark);text-decoration:underline}@media (max-width: 480px){.login-container{padding:var(--spacing-md)}.login-card{padding:var(--spacing-xl)}.logo-icon{width:56px;height:56px}.logo-icon svg{width:28px;height:28px}.login-title{font-size:var(--text-xl)}}@keyframes patternMove{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.form-input:focus-visible{outline:2px solid var(--primary-medical);outline-offset:2px}.login-btn:focus-visible{outline:2px solid var(--primary-medical);outline-offset:2px}.dashboard-container{padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.dashboard-header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2rem;margin-bottom:2rem;box-shadow:0 10px 30px #0000001a;border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden}.dashboard-header:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2,#f093fb,#f5576c);background-size:400% 400%;animation:gradientShift 4s ease infinite}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.dashboard-header h1{font-size:2.5rem;font-weight:700;color:#2d3748;margin-bottom:.5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-header p{font-size:1.1rem;color:#718096;margin-bottom:1rem}.current-date{display:flex;align-items:center;gap:.5rem;font-size:.95rem}.date-label{color:#4a5568;font-weight:500}.date-value{color:#2d3748;font-weight:600;background:linear-gradient(135deg,#e2e8f0,#cbd5e0);padding:.25rem .75rem;border-radius:20px;border:1px solid rgba(0,0,0,.05)}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:1.5rem;box-shadow:0 8px 25px #0000001a;border:1px solid rgba(255,255,255,.2);transition:all .3s ease;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s ease}.stat-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #00000026}.stat-card:hover:before{transform:scaleX(1)}.stat-card{display:flex;align-items:center;gap:1rem}.stat-icon{font-size:3rem;width:4rem;height:4rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;flex-shrink:0}.stat-content h3{font-size:.9rem;color:#4a5568;font-weight:600;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.stat-number{font-size:2rem;font-weight:700;color:#2d3748;margin:0}.ot-schedule-section{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2rem;margin-bottom:2rem;box-shadow:0 10px 30px #0000001a;border:1px solid rgba(255,255,255,.2)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e2e8f0}.section-header h2{font-size:1.8rem;font-weight:700;color:#2d3748;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.refresh-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:12px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.refresh-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#4a5568}.loading-spinner{width:3rem;height:3rem;border:3px solid #e2e8f0;border-top:3px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.ot-calendar{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 15px #0000000d}.calendar-header{display:grid;grid-template-columns:100px repeat(5,1fr);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.time-header,.ot-header{padding:1rem;text-align:center;border-right:1px solid rgba(255,255,255,.2);font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.time-header{background:#0000001a}.calendar-grid{max-height:600px;overflow-y:auto}.time-row{display:grid;grid-template-columns:100px repeat(5,1fr);border-bottom:1px solid #e2e8f0;min-height:60px}.time-row:hover{background:#f8fafc}.time-cell{display:flex;align-items:center;justify-content:center;background:#f7fafc;border-right:1px solid #e2e8f0;font-weight:600;color:#4a5568;font-size:.85rem}.ot-cell{border-right:1px solid #e2e8f0;padding:.5rem;position:relative;min-height:60px}.patient-event{background:#3b82f6;color:#fff;border-radius:8px;padding:.5rem;margin-bottom:.25rem;font-size:.8rem;position:relative;overflow:hidden;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000001a}.patient-event:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.patient-event:before{content:"";position:absolute;top:0;left:0;bottom:0;width:4px;background:#ffffff80}.event-title{font-weight:600;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-details{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;opacity:.9;margin-bottom:.25rem}.patient-id{background:#fff3;padding:.1rem .3rem;border-radius:4px;font-weight:600}.surgeon{font-style:italic}.event-time{font-size:.7rem;opacity:.8;text-align:right}.calendar-legend{margin-top:1.5rem;padding:1rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.calendar-legend h4{color:#2d3748;margin-bottom:1rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.legend-items{display:flex;flex-wrap:wrap;gap:1rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#4a5568}.legend-color{width:16px;height:16px;border-radius:4px;box-shadow:0 2px 4px #0000001a}.dashboard-recent{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2rem;box-shadow:0 10px 30px #0000001a;border:1px solid rgba(255,255,255,.2)}.dashboard-recent h2{font-size:1.8rem;font-weight:700;color:#2d3748;margin-bottom:1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000000d;border:1px solid #e2e8f0;transition:all .3s ease}.activity-item:hover{transform:translate(5px);box-shadow:0 6px 20px #0000001a}.activity-icon{font-size:1.5rem;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e2e8f0,#cbd5e0);border-radius:50%;flex-shrink:0}.activity-content{flex:1}.activity-content p{color:#2d3748;font-weight:500;margin-bottom:.25rem}.activity-time{color:#718096;font-size:.85rem}@media (max-width: 1200px){.calendar-header,.time-row{grid-template-columns:80px repeat(5,1fr)}.time-cell{font-size:.75rem}}@media (max-width: 768px){.dashboard-container{padding:1rem}.dashboard-header{padding:1.5rem}.dashboard-header h1{font-size:2rem}.dashboard-stats{grid-template-columns:1fr}.section-header{flex-direction:column;gap:1rem;align-items:stretch}.ot-calendar{overflow-x:auto}.calendar-header,.time-row{grid-template-columns:60px repeat(5,120px);min-width:660px}.legend-items{justify-content:center}.activity-item{flex-direction:column;text-align:center;gap:.75rem}}.calendar-grid::-webkit-scrollbar{width:6px}.calendar-grid::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.calendar-grid::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:3px}.calendar-grid::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#5a6fd8,#6b4190)}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.patient-event{animation:slideIn .3s ease-out}.ipd-container{padding:20px;max-width:1400px;margin:0 auto;background-color:#f8f9fa;min-height:100vh}.ipd-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;background:#fff;padding:20px;border-radius:10px;box-shadow:0 2px 8px #0000001a}.ipd-header h2{margin:0;color:#2c3e50;font-size:24px;font-weight:600}.ipd-buttons{display:flex;gap:10px}.ipd-buttons button{padding:10px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;display:flex;align-items:center;gap:5px}.ipd-buttons button.blue{background-color:#3498db;color:#fff}.ipd-buttons button.blue:hover{background-color:#2980b9;transform:translateY(-1px)}.search-bar input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.status-indicator{padding:12px 16px;background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #3498db4d}.status-indicator span{font-size:14px;font-weight:500}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px}.patient-table{width:100%;border-collapse:collapse;font-size:14px}.patient-table thead{background:linear-gradient(135deg,#34495e,#2c3e50);color:#fff}.patient-table th{padding:16px 12px;text-align:left;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.patient-table tbody tr{transition:background-color .2s ease;border-bottom:1px solid #ecf0f1}.patient-table tbody tr:hover{background-color:#f8f9fa}.patient-table td{padding:14px 12px;vertical-align:middle}.ipd-link{color:#3498db;text-decoration:none;font-weight:600;transition:color .3s ease}.ipd-link:hover{color:#2980b9;text-decoration:underline}.status-badge.active{background-color:#27ae60;color:#fff}.no-data{text-align:center;padding:40px 20px;color:#7f8c8d;font-style:italic}.pagination button.active{background-color:#3498db;color:#fff;border-color:#3498db}@media (max-width: 1200px){.patient-table{font-size:13px}.patient-table th,.patient-table td{padding:10px 8px}}@media (max-width: 768px){.ipd-header{flex-direction:column;gap:15px;align-items:stretch}.ipd-buttons{justify-content:center;flex-wrap:wrap}.table-wrapper{overflow-x:auto}.patient-table{min-width:1000px}.table-footer{flex-direction:column;gap:10px;text-align:center}}.ipd-container{background:#f7fafd;min-height:80vh;padding:2rem;border-radius:16px;box-shadow:0 4px 24px #4f8cff14;max-width:100%;margin:2rem auto;font-family:Inter,Segoe UI,Arial,sans-serif;color:#222b45}.ipd-container h2{font-size:2rem;font-weight:700;margin-bottom:2rem;color:#1976d2;letter-spacing:.5px;text-shadow:0 2px 8px rgba(79,140,255,.08)}.date-filters-container{display:flex;gap:1.5rem;margin-bottom:2rem;flex-wrap:wrap}.date-filter-column{flex:1;min-width:280px;background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 12px #4f8cff0f;border-top:4px solid #1976d2;display:flex;flex-direction:column}.date-filter-header{margin-bottom:1rem;border-bottom:2px solid #e3eefe;padding-bottom:.8rem}.date-filter-header h4{font-size:1rem;font-weight:600;color:#1976d2;margin:0 0 .5rem;text-align:center}.date-range-indicator{font-size:.75rem;color:#43a047;font-weight:500;background:#e8f5e9;padding:.3rem .6rem;border-radius:6px;display:block;text-align:center;margin-top:.5rem}.date-filter-controls{display:flex;flex-direction:column;gap:1rem;flex:1}.date-inputs-vertical{display:flex;flex-direction:column;gap:.8rem}.date-input-group{display:flex;flex-direction:column;gap:.4rem}.date-input-group label{font-size:.85rem;font-weight:500;color:#555;text-transform:uppercase;letter-spacing:.5px}.date-input{padding:.7rem .8rem;border:2px solid #e0e7ef;border-radius:8px;font-size:.9rem;transition:all .2s;background:#fff;color:#222b45;width:100%}.date-input:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.quick-filters-vertical{display:flex;flex-direction:column;gap:.6rem;margin-top:.5rem}.quick-filter-btn{background:#e3eefe;color:#1976d2;border:2px solid transparent;padding:.6rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;text-align:center;width:100%}.quick-filter-btn:hover{background:#1976d2;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #1976d233}.show-all-btn-full{background:#43a047;color:#fff;border:none;padding:.7rem 1.2rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;width:100%;margin-top:auto;text-transform:uppercase;letter-spacing:.5px}.show-all-btn-full:hover{background:#388e3c;transform:translateY(-1px);box-shadow:0 4px 12px #43a0474d}@media (max-width: 1200px){.date-filters-container{flex-wrap:wrap}.date-filter-column{flex:1 1 calc(50% - .75rem);min-width:280px}}@media (max-width: 900px){.date-filters-container{flex-direction:column}.date-filter-column{flex:1 1 100%;min-width:100%}}@media (max-width: 600px){.date-filter-column{padding:1rem}.date-filter-header h4{font-size:.95rem}.date-range-indicator{font-size:.7rem}.quick-filter-btn{font-size:.85rem;padding:.55rem .8rem}.show-all-btn-full{font-size:.9rem}}.active-filters-summary{background:#e8f5e9;border-left:4px solid #43a047;padding:1rem 1.2rem;border-radius:8px;margin-bottom:1.5rem;display:flex;gap:.8rem;align-items:center;flex-wrap:wrap}.active-filters-summary strong{color:#2e7d32;font-size:.95rem}.filter-badge{background:#fff;color:#2e7d32;padding:.4rem .8rem;border-radius:6px;font-size:.85rem;font-weight:500;box-shadow:0 2px 6px #2e7d321a}.ipd-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:12px;box-shadow:0 2px 12px #4f8cff0f;overflow:hidden;margin-bottom:2rem}.ipd-table th,.ipd-table td{padding:1rem 1.2rem;text-align:left;font-size:.95rem;border-bottom:1px solid #e0e7ef}.ipd-table th{font-weight:600;color:#1976d2;background:#e3eefe;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px}.ipd-table tbody tr{background:#fff;transition:all .2s}.ipd-table tbody tr:hover{background:#eaf2ff;transform:scale(1.01)}.ipd-table td{color:#222b45;vertical-align:middle}.ipd-table tbody tr:last-child td{border-bottom:none}.no-data{text-align:center;color:#999;font-style:italic;padding:2rem!important}.move-to-ipd-btn{background:linear-gradient(135deg,#1976d2,#1565c0);color:#fff;border:none;padding:.6rem 1.3rem;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;box-shadow:0 2px 8px #1976d233;transition:all .2s}.move-to-ipd-btn:hover{background:linear-gradient(135deg,#43e97b,#38f9d7);transform:translateY(-2px);box-shadow:0 4px 16px #43e97b4d}.move-to-ipd-btn:active{transform:translateY(0)}.loading-container,.error-container{text-align:center;padding:3rem;background:#fff;border-radius:12px;box-shadow:0 2px 12px #4f8cff0f}.loading-container p{color:#1976d2;font-size:1.1rem;font-weight:500}.error-container p{font-size:1rem}.ipd-tabs{display:flex;gap:1.2rem;margin-bottom:1.5rem;flex-wrap:wrap}.ipd-tab-btn{background:#e3eefe;color:#1976d2;border:none;padding:.7rem 1.5rem;border-radius:8px 8px 0 0;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border-bottom:3px solid transparent}.ipd-tab-btn.active{background:#1976d2;color:#fff;border-bottom-color:#43e97b}.ipd-tab-btn:hover{background:#1976d2;color:#fff}.ipd-tab-content{background:#fff;border-radius:0 0 12px 12px;box-shadow:0 2px 8px #4f8cff0f;padding:2rem 1.5rem;min-height:180px}@media (max-width: 900px){.ipd-container{padding:1.5rem 1rem}.ipd-container h2{font-size:1.7rem}.date-filter-section{padding:1.2rem}.date-inputs{flex-direction:column;align-items:stretch}.date-input-group{min-width:100%}.show-all-btn{width:100%}.quick-filters{justify-content:center}.ipd-table th,.ipd-table td{padding:.8rem .6rem;font-size:.9rem}.ipd-tab-content{padding:1.2rem .7rem}}@media (max-width: 600px){.ipd-container{padding:1rem .5rem;margin:1rem auto}.ipd-container h2{font-size:1.5rem;margin-bottom:1.5rem}.date-filter-section{padding:1rem}.date-filter-header{flex-direction:column;align-items:flex-start}.date-range-indicator{font-size:.8rem}.quick-filters{flex-direction:column;width:100%}.quick-filter-btn{width:100%}.active-filters-summary{flex-direction:column;align-items:flex-start}.ipd-table,.ipd-table thead,.ipd-table tbody,.ipd-table th,.ipd-table td,.ipd-table tr{display:block;width:100%}.ipd-table thead{display:none}.ipd-table tr{margin-bottom:1.2rem;box-shadow:0 2px 8px #4f8cff1a;border-radius:12px;background:#fff;padding:.7rem .5rem}.ipd-table td{padding:.6rem .8rem;border:none;position:relative;font-size:.95rem;display:flex;justify-content:space-between;align-items:center}.ipd-table td:before{content:attr(data-label);font-weight:600;color:#1976d2;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;margin-right:1rem}.move-to-ipd-btn{width:100%;margin-top:.5rem}.ipd-tabs{flex-direction:column;gap:.5rem}.ipd-tab-btn{width:100%;border-radius:8px}}.bed-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-in-out}.bed-modal-content{background:#fff;border-radius:16px;width:90%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.bed-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:2px solid #e8eef5;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px 16px 0 0}.bed-modal-title h3{margin:0;font-size:24px;font-weight:600;display:flex;align-items:center;gap:10px}.patient-info{margin:8px 0 0;font-size:14px;opacity:.95;font-weight:400}.bed-modal-close{background:#fff3;border:none;width:40px;height:40px;border-radius:50%;font-size:28px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}.bed-modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.floor-tabs{display:flex;gap:8px;padding:20px 28px;background:#f8f9fc;border-bottom:1px solid #e8eef5;overflow-x:auto}.floor-tab{padding:12px 20px;border:2px solid #e0e7ef;background:#fff;border-radius:10px;cursor:pointer;font-size:14px;font-weight:500;color:#4a5568;transition:all .2s;white-space:nowrap;display:flex;align-items:center;gap:8px}.floor-tab:hover{border-color:#667eea;background:#f0f4ff;color:#667eea}.floor-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea;box-shadow:0 4px 12px #667eea4d}.bed-count-badge{background:#ffffff40;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600}.floor-tab.active .bed-count-badge{background:#ffffff4d}.bed-grid-container{flex:1;overflow-y:auto;padding:24px 28px;background:#fafbfc}.floor-section{margin-bottom:32px}.floor-section:last-child{margin-bottom:0}.floor-section-title{margin:0 0 16px;font-size:18px;font-weight:600;color:#2d3748;padding-bottom:8px;border-bottom:2px solid #667eea;display:inline-block}.bed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.bed-card{background:#fff;border:2px solid #e0e7ef;border-radius:12px;padding:16px;cursor:pointer;transition:all .2s;position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;min-height:130px}.bed-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001a}.bed-card.available{border-color:#48bb78;background:linear-gradient(135deg,#f0fff4,#fff)}.bed-card.available:hover{border-color:#38a169;box-shadow:0 8px 20px #48bb7833}.bed-card.occupied{border-color:#fc8181;background:linear-gradient(135deg,#fff5f5,#fff);cursor:not-allowed;opacity:.6}.bed-card.occupied:hover{transform:none;box-shadow:none}.bed-card.maintenance{border-color:#f6ad55;background:linear-gradient(135deg,#fffaf0,#fff);cursor:not-allowed;opacity:.6}.bed-card.maintenance:hover{transform:none;box-shadow:none}.bed-card.selected{border-color:#667eea;border-width:3px;background:linear-gradient(135deg,#e0e7ff,#fff);box-shadow:0 8px 24px #667eea4d;transform:translateY(-4px)}.bed-card.selected:before{content:"✓";position:absolute;top:-10px;right:-10px;background:#667eea;color:#fff;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;box-shadow:0 4px 8px #667eea66}.bed-number{font-size:28px;font-weight:700;color:#2d3748}.bed-room-type{font-size:13px;color:#718096;font-weight:500;text-align:center}.bed-status-badge{padding:6px 12px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.bed-status-badge.available{background:#48bb78;color:#fff}.bed-status-badge.occupied{background:#fc8181;color:#fff}.bed-status-badge.maintenance{background:#f6ad55;color:#fff}.selected-bed-info{padding:16px 28px;background:linear-gradient(135deg,#e0e7ff,#f0f4ff);border-top:1px solid #cbd5e0;border-bottom:1px solid #cbd5e0}.selected-bed-details{display:flex;align-items:center;gap:12px;font-size:15px}.info-label{font-weight:600;color:#4a5568}.info-value{font-weight:500;color:#667eea;background:#fff;padding:8px 16px;border-radius:8px;border:1px solid #667eea}.bed-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 28px;background:#f8f9fc;border-radius:0 0 16px 16px}.btn-cancel,.btn-confirm{padding:12px 28px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-cancel{background:#fff;color:#4a5568;border:2px solid #cbd5e0}.btn-cancel:hover{background:#f7fafc;border-color:#a0aec0}.btn-confirm{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;box-shadow:0 4px 12px #48bb784d}.btn-confirm:hover{transform:translateY(-2px);box-shadow:0 6px 16px #48bb7866}.btn-confirm:disabled{background:#cbd5e0;color:#a0aec0;cursor:not-allowed;box-shadow:none;transform:none}@media (max-width: 768px){.bed-modal-content{width:95%;max-height:95vh}.bed-modal-header{padding:20px}.bed-modal-title h3{font-size:20px}.floor-tabs{padding:16px 20px}.bed-grid-container{padding:20px}.bed-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.bed-card{padding:12px;min-height:110px}.bed-number{font-size:24px}.selected-bed-info{padding:12px 20px}.selected-bed-details{flex-direction:column;align-items:flex-start;gap:8px}.bed-modal-footer{padding:16px 20px}}@media (max-width: 480px){.bed-grid{grid-template-columns:repeat(2,1fr)}}.navigation-section{background:#fff;border-radius:8px;padding:20px;border:1px solid #e9ecef;margin-bottom:15px}.nav-row{display:flex;align-items:flex-start;margin-bottom:12px;min-height:32px}.nav-row:last-child{margin-bottom:0}.nav-label{min-width:140px;font-size:13px;color:#495057;font-weight:500;padding-top:6px}.nav-separator{margin:0 10px;color:#6c757d;padding-top:6px}.nav-buttons-group{display:flex;gap:6px;flex-wrap:wrap}.nav-btn{padding:4px 10px;border-radius:4px;border:1px solid;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.nav-btn.default{background:#f8f9fa;border-color:#dee2e6;color:#495057}.nav-btn.default:hover{background:#e9ecef;border-color:#adb5bd}.nav-btn.primary{background:#007bff;border-color:#007bff;color:#fff}.nav-btn.primary:hover{background:#0056b3;border-color:#0056b3}.nav-btn.danger{background:#dc3545;border-color:#dc3545;color:#fff}.nav-btn.danger:hover{background:#c82333;border-color:#c82333}.nav-btn.discharge{background:#dc3545;border-color:#dc3545;color:#fff}.nav-btn.discharge:hover{background:#c82333;border-color:#c82333}.nav-btn:disabled{opacity:.6;cursor:not-allowed}.patient-info-only{background:#fff;border-radius:8px;padding:20px;border:1px solid #e9ecef;margin-bottom:15px}.overview-wrapper{padding:0;margin:0;background:#f8f9fa}.overview-grid{display:grid;grid-template-columns:350px 1fr;gap:20px;padding:20px}.left-column{display:flex;flex-direction:column;gap:15px}.patient-card{background:#fff;border-radius:8px;padding:20px;border:1px solid #e9ecef;display:flex;gap:15px}.patient-image{width:100px;height:100px;border:2px solid #dee2e6;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#f8f9fa}.patient-image img{width:100%;height:100%;object-fit:cover;border-radius:6px}.no-image-placeholder{text-align:center;color:#6c757d;font-size:10px}.avatar-icon{font-size:30px;margin-bottom:5px}.patient-info{flex:1}.info-row{display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #f1f3f4}.info-row:last-child{border-bottom:none;margin-bottom:0}.info-row label{font-weight:600;color:#6c757d;font-size:13px}.info-row span{color:#495057;font-size:13px}.case-details{background:#fff;border-radius:8px;padding:20px;border:1px solid #e9ecef}.detail-item{display:flex;justify-content:space-between;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #f1f3f4}.detail-item:last-child{border-bottom:none;margin-bottom:0}.detail-item label{font-weight:600;color:#6c757d;font-size:13px}.detail-item span{color:#495057;font-size:13px}.allergies-card{background:#fff;border-radius:8px;padding:20px;border:1px solid #e9ecef}.allergies-card h3{margin:0 0 10px;font-size:14px;color:#495057}.allergies-card p{margin:0;color:#6c757d;font-size:13px}.consultant-section{background:#fff;border-radius:8px;padding:20px;border:1px solid #e9ecef}.consultant-section h3{margin:0 0 10px;font-size:12px;font-weight:700;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.consultant-name{color:#007bff;font-size:14px;font-weight:500}.section-header{background:#fff;border-radius:8px;padding:20px;border:1px solid #e9ecef}.section-header h3{margin:0;font-size:12px;font-weight:700;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.iol-details-card{background:#fff;border-radius:8px;padding:20px;border:1px solid #e9ecef}.iol-details-card h3{margin:0 0 15px;font-size:14px;font-weight:700;color:#495057;text-transform:uppercase;letter-spacing:.5px}.iol-info-grid{display:grid;grid-template-columns:1fr;gap:8px}.iol-info-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f1f3f4}.iol-info-row:last-child{border-bottom:none}.iol-info-row label{font-weight:600;color:#6c757d;font-size:12px}.iol-info-row span{color:#495057;font-size:12px;text-align:right}.status-badge{padding:2px 6px;border-radius:3px;font-size:10px;font-weight:600;text-transform:uppercase}.status-badge.used{background:#f8d7da;color:#721c24}.iol-found{color:#28a745;font-weight:600}.right-column{display:flex;flex-direction:column;gap:15px}.payment-progress-section{margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.progress-item{margin-bottom:15px}.progress-item:last-child{margin-bottom:0}.progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.progress-label{font-weight:600;font-size:14px;color:#495057;text-transform:uppercase;letter-spacing:.5px}.progress-stats{font-size:13px;color:#6c757d;font-weight:500}.progress-bar{width:100%;height:8px;background-color:#e9ecef;border-radius:4px;overflow:hidden;position:relative}.progress-fill{height:100%;background-color:#007bff;border-radius:4px;transition:width .3s ease}.content-section{background:#fff;border-radius:8px;padding:20px;border:1px solid #e9ecef}.content-section h3{margin:0;font-size:14px;font-weight:700;color:#495057;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #007bff;padding-bottom:8px}.table-section{background:#fff;border-radius:8px;padding:20px;border:1px solid #e9ecef}.table-section h3{margin:0 0 15px;font-size:14px;font-weight:700;color:#495057;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #007bff;padding-bottom:8px}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th{background:#f8f9fa;padding:10px 8px;text-align:left;font-weight:600;color:#495057;border-bottom:1px solid #dee2e6;font-size:11px;text-transform:uppercase}.data-table td{padding:10px 8px;border-bottom:1px solid #f1f3f4;color:#495057}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover{background:#f8f9fa}.badge{padding:2px 6px;border-radius:3px;font-size:10px;font-weight:600;text-transform:uppercase}.badge.ipd{background:#e3f2fd;color:#1976d2}.transaction-id{font-weight:600;color:#007bff}.loading{display:flex;justify-content:center;align-items:center;height:300px;font-size:16px;color:#6c757d}.diagnosis-list-overview{margin-top:15px}.diagnosis-item{padding:12px;margin-bottom:8px;border-radius:6px;border:1px solid}.diagnosis-item.provisional{background-color:#fff3cd;border-color:#ffeaa7}.diagnosis-item.final{background-color:#d4edda;border-color:#c3e6cb}.diagnosis-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}.diagnosis-main{flex:1}.diagnosis-name{font-size:14px;margin-right:10px}.diagnosis-item.provisional .diagnosis-name{color:#856404}.diagnosis-item.final .diagnosis-name{color:#155724}.diagnosis-code{padding:2px 6px;border-radius:3px;font-size:11px;margin-left:10px}.diagnosis-code.provisional{background-color:#d4edda;color:#155724}.diagnosis-code.final{background-color:#cce5ff;color:#004085}.diagnosis-date{font-size:11px;color:#6c757d;text-align:right;min-width:80px}.diagnosis-meta{font-size:12px;color:#6c757d;margin-bottom:4px}.meta-separator{margin:0 8px}.diagnosis-comment{font-size:12px;color:#495057;font-style:italic;margin-top:4px}.no-diagnosis{padding:20px;text-align:center;color:#6c757d;background-color:#f8f9fa;border-radius:6px;margin-top:15px}.diagnosis-error{padding:15px;background-color:#f8d7da;color:#721c24;border-radius:6px;border:1px solid #f5c6cb;font-size:14px;margin-top:15px}.medication-list-overview,.prescription-list-overview{margin-top:15px}.medication-item,.prescription-item{margin-bottom:8px;border-radius:6px;border:1px solid #e9ecef}@media (max-width: 768px){.overview-grid{grid-template-columns:1fr;gap:15px;padding:15px}.patient-card{flex-direction:column;text-align:center}.data-table{font-size:10px}.data-table th,.data-table td{padding:6px 4px}.progress-info{flex-direction:column;align-items:flex-start;gap:4px}.progress-stats{font-size:12px}.progress-label{font-size:13px}.diagnosis-header{flex-direction:column;gap:4px}.diagnosis-date{text-align:left;min-width:auto}.iol-info-grid{grid-template-columns:1fr}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.consent-modal-container{background:#fff;width:95%;max-width:900px;max-height:95vh;overflow-y:auto;border-radius:8px;box-shadow:0 4px 20px #00000026}.consent-content{padding:40px;font-family:Times New Roman,serif;line-height:1.6;color:#000;background:#fff}.consent-header{text-align:center;margin-bottom:30px;border-bottom:2px solid #333;padding-bottom:15px}.consent-header h1{margin:0;font-size:24px;font-weight:700;text-decoration:underline}.consent-text p{margin-bottom:15px;text-align:justify;font-size:14px}.inline-input{border:none;border-bottom:1px solid #333;background:transparent;padding:2px 5px;margin:0 3px;font-family:inherit;font-size:inherit;min-width:150px}.inline-input.long{min-width:200px}.signature-section{margin-top:40px;border-top:1px solid #ccc;padding-top:20px}.signature-row{display:flex;justify-content:space-between;margin-bottom:20px;gap:20px}.signature-item{display:flex;align-items:center;gap:10px;flex:1}.signature-item label{font-weight:700;min-width:120px;white-space:nowrap}.signature-item input{border:none;border-bottom:1px solid #333;background:transparent;padding:5px;font-family:inherit;min-width:200px;flex:1}.signature-line{border-bottom:1px solid #333;min-width:150px;height:20px}.patient-details{margin-bottom:30px}.detail-row{margin-bottom:10px;display:flex;align-items:center}.detail-row span{font-weight:700;margin-right:10px}.detail-row input{border:none;border-bottom:1px solid #333;background:transparent;padding:2px 5px;font-family:inherit;min-width:200px}.surgery-content h3{margin-top:25px;margin-bottom:15px;font-size:16px;font-weight:700}.surgery-content ul{margin-left:20px}.surgery-content li{margin-bottom:8px}.consent-section{margin-top:30px}.consent-section h3{margin-bottom:15px;font-size:16px;font-weight:700}.eye-select{border:none;border-bottom:1px solid #333;background:transparent;font-family:inherit;margin:0 5px;padding:2px 5px}.individual-risks{margin-top:15px}.individual-risks h4{margin-bottom:10px;font-size:14px;font-weight:700}.individual-risks textarea{width:100%;min-height:80px;border:1px solid #333;padding:10px;font-family:inherit;resize:vertical}.signatures-section{margin-top:40px;border-top:1px solid #ccc;padding-top:20px}.signature-block{margin-bottom:30px}.signature-block h4{margin-bottom:10px;font-size:14px;font-weight:700}.signature-block p{margin-bottom:15px;font-size:13px;line-height:1.5}.signature-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}.signature-fields>div{display:flex;align-items:center;gap:10px}.signature-fields input{border:none;border-bottom:1px solid #333;background:transparent;padding:2px 5px;font-family:inherit;flex:1}.witnesses-section{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:20px}.witness-block h4{margin-bottom:15px;font-size:14px;font-weight:700}.witness-block>div{margin-bottom:10px;display:flex;align-items:center;gap:10px}.witness-block input{border:none;border-bottom:1px solid #333;background:transparent;padding:2px 5px;font-family:inherit;flex:1;min-width:150px}.upload-section{padding:20px 40px;border-top:1px solid #e9ecef;background:#f8f9fa}.upload-section h3{margin:0 0 15px;font-size:16px;color:#495057}.upload-section input[type=file]{padding:10px;border:2px dashed #007bff;border-radius:4px;width:100%;background:#fff;cursor:pointer}.upload-success{color:#28a745;font-weight:500;margin-top:10px}.surgery-select{padding:5px 10px;border:1px solid #ced4da;border-radius:4px;margin-right:10px;background:#fff}@media print{@page{margin:15mm;size:A4 portrait}body{margin:0!important;padding:0!important}body *{visibility:hidden!important}.modal-overlay,.modal-overlay *{visibility:visible!important}.modal-overlay{position:absolute!important;top:0!important;left:0!important;background:#fff!important;display:block!important;width:100%!important;height:auto!important;z-index:9999!important}.consent-modal-container{width:100%!important;max-width:none!important;max-height:none!important;overflow:visible!important;border-radius:0!important;box-shadow:none!important;margin:0!important;padding:0!important;background:#fff!important}.consent-content{padding:20mm!important;width:100%!important;max-width:none!important;background:#fff!important;page-break-after:auto!important}.no-print,.modal-header,.upload-section,.modal-buttons,.print-btn,.close-btn,.surgery-select{display:none!important;visibility:hidden!important}.consent-content,.consent-content *{visibility:visible!important;color:#000!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}input,textarea,select{border:none!important;border-bottom:1px solid #000!important;background:transparent!important;color:#000!important;-webkit-appearance:none!important;font-size:14px!important}input:focus,textarea:focus,select:focus{outline:none!important}.consent-header,.patient-details,.surgery-content,.consent-section,.signature-section,.signatures-section,.signature-block,.witness-block,.signature-row,.consent-text p{page-break-inside:avoid!important}.signature-line{border-bottom:1px solid #000!important;display:inline-block!important;min-width:150px!important}.consent-header h1{visibility:visible!important;color:#000!important;font-size:24px!important;font-weight:700!important;text-decoration:underline!important}p,span,label,h1,h2,h3,h4{color:#000!important}}@media (max-width: 768px){.consent-content{padding:20px}.signature-row{flex-direction:column;gap:15px}.signature-fields,.witnesses-section{grid-template-columns:1fr}.signature-item label{min-width:100px}.signature-item input,.detail-row input{min-width:100%}}@media (max-width: 480px){.consent-content{padding:15px}.consent-header h1{font-size:20px}.surgery-content h3{font-size:14px}}input,textarea,select{border:none!important;border-bottom:1px solid #000!important;background:transparent!important;color:#000!important;-webkit-appearance:none!important;font-size:14px!important}input[type=text],input[type=date],textarea,select{display:inline-block!important;visibility:visible!important;opacity:1!important;color:#000!important;font-family:Times New Roman,serif!important;font-size:14px!important}.print-value{display:inline-block!important;visibility:visible!important;color:#000!important;border-bottom:1px solid #000!important;font-family:Times New Roman,serif!important;font-size:14px!important;padding:2px 5px!important}.modal-container{background:#fff;width:90%;max-width:1000px;max-height:90vh;overflow-y:auto;border-radius:8px;box-shadow:0 4px 20px #00000026}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #e9ecef;background:#f8f9fa}.modal-header h2{margin:0;font-size:20px;color:#495057;font-weight:600}.modal-buttons{display:flex;gap:10px}.save-btn{background:#28a745;color:#fff;border:none;padding:8px 20px;border-radius:4px;cursor:pointer;font-weight:500;transition:background .2s}.save-btn:disabled{background:#6c757d;cursor:not-allowed}.close-btn{background:#6c757d;color:#fff;border:none;padding:8px 20px;border-radius:4px;cursor:pointer;font-weight:500;transition:background .2s}.close-btn:hover{background:#5a6268}.modal-content{padding:30px}.form-section{margin-bottom:30px}.form-section:last-child{margin-bottom:0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.section-header label{font-weight:600;color:#495057;font-size:14px}.dropdown-container{min-width:200px}.instruction-dropdown,.medication-dropdown,.investigation-dropdown{width:100%;padding:6px 10px;border:1px solid #ced4da;border-radius:4px;font-size:13px;background:#fff;color:#6c757d}.form-textarea{width:100%;min-height:120px;padding:12px;border:2px solid #17a2b8;border-radius:4px;font-family:inherit;font-size:14px;line-height:1.5;resize:vertical;outline:none}.form-textarea:focus{border-color:#138496;box-shadow:0 0 0 2px #17a2b840}.form-textarea::placeholder{color:#adb5bd}@media (max-width: 768px){.modal-container{width:95%;margin:10px}.modal-header{padding:15px 20px}.modal-content{padding:20px}.section-header{flex-direction:column;align-items:flex-start;gap:10px}.dropdown-container{width:100%;min-width:auto}}.preoperative-modal-container{background:#fff;width:95%;max-width:1200px;max-height:95vh;overflow-y:auto;border-radius:8px;box-shadow:0 4px 20px #00000026}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 30px;border-bottom:1px solid #e9ecef;background:#f8f9fa}.note-date{color:#dc3545;font-weight:500;border-bottom:2px solid #dc3545;padding-bottom:2px}.modal-header h2{margin:0;font-size:20px;color:#495057}.patient-info-header{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:20px 30px;background:#f8f9fa;border-bottom:1px solid #e9ecef}.patient-detail{font-size:14px;color:#495057}.tab-navigation{display:flex;background:#f8f9fa;border-bottom:1px solid #e9ecef}.tab{display:flex;align-items:center;gap:8px;padding:12px 20px;border:none;background:transparent;color:#6c757d;font-weight:500;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s}.tab.active{background:#fff;color:#007bff;border-bottom-color:#007bff}.tab-number{background:#6c757d;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.tab.active .tab-number{background:#007bff}.form-content{padding:30px}.form-grid{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:15px;align-items:center}.form-row.full-width{grid-template-columns:auto 1fr}.form-row label{font-weight:500;color:#495057;white-space:nowrap}.form-textarea{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;resize:vertical;font-family:inherit}.radio-group{display:flex;gap:8px}.radio-btn{padding:6px 12px;border:1px solid #ced4da;border-radius:4px;background:#f8f9fa;color:#495057;cursor:pointer;font-size:13px;transition:all .2s}.radio-btn.active{background:#007bff;color:#fff;border-color:#007bff}.input-with-unit{display:flex;align-items:center;gap:8px}.number-input{width:80px;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px}.payment-buttons{display:flex;gap:6px;flex-wrap:wrap}.payment-btn{padding:6px 10px;border:1px solid #ced4da;border-radius:4px;background:#f8f9fa;color:#495057;cursor:pointer;font-size:12px;transition:all .2s}.payment-btn.active{background:#007bff;color:#fff;border-color:#007bff}.case-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:30px}.case-info-grid div{display:flex;flex-direction:column;gap:5px}.case-info-grid label{font-weight:500;color:#495057;font-size:13px}.chief-complaints{margin-bottom:30px}.chief-complaints h3{margin:0 0 15px;font-size:14px;font-weight:700;color:#495057;text-transform:uppercase}.complaint-item{padding:10px;background:#f8f9fa;border-radius:4px;color:#495057}.diagnosis-section,.procedures-section{margin-bottom:30px}.diagnosis-section h3,.procedures-section h3{margin:0 0 15px;font-size:14px;font-weight:700;color:#495057;text-transform:uppercase}.search-input{width:100%;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;margin-bottom:15px}.diagnosis-list{margin-bottom:15px}.diagnosis-item{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #e9ecef;border-radius:4px;margin-bottom:5px}.textbox-label{background:#17a2b8;color:#fff;padding:8px 12px;font-weight:600;font-size:12px;text-transform:uppercase;border-radius:4px 4px 0 0}.diagnosis-textbox,.procedure-textbox,.investigation-textbox{width:100%;border:2px solid #17a2b8;border-top:none;border-radius:0 0 4px 4px;padding:15px;font-family:inherit;font-size:14px;resize:vertical}.procedures-table{border:1px solid #e9ecef;border-radius:4px;margin-bottom:15px}.table-header{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr;gap:10px;padding:10px;background:#f8f9fa;font-weight:600;font-size:12px;color:#495057;border-bottom:1px solid #e9ecef}.no-procedures{padding:20px;text-align:center;color:#6c757d;font-style:italic}.selected-diagnosis{padding:10px;background:#f8f9fa;border-radius:4px;margin-bottom:15px;color:#495057;font-weight:500}.investigations-section h3{margin:0 0 15px;font-size:14px;font-weight:700;color:#495057;text-transform:uppercase}.investigation-category{margin-bottom:20px}.investigation-category h4{margin:0 0 8px;font-size:14px;font-weight:600;color:#495057;text-decoration:underline}.investigation-advised{padding:8px 12px;background:#f8f9fa;border-radius:4px;color:#495057;font-size:14px}.form-navigation{display:flex;justify-content:space-between;padding:20px 30px;border-top:1px solid #e9ecef;background:#f8f9fa}.nav-btn{padding:8px 20px;border:1px solid #ced4da;border-radius:4px;background:#fff;color:#495057;cursor:pointer;font-weight:500;transition:all .2s}.nav-btn:hover:not(:disabled){background:#007bff;color:#fff;border-color:#007bff}.nav-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.preoperative-modal-container{width:98%;margin:10px}.form-content{padding:20px}.patient-info-header{grid-template-columns:1fr 1fr;gap:15px}.form-row{grid-template-columns:1fr;gap:10px}.form-row label{font-weight:600}.case-info-grid{grid-template-columns:1fr}.table-header{font-size:10px}}.assessment-modal-container{background:#fff;width:95%;max-width:1400px;max-height:95vh;overflow-y:auto;border-radius:8px;box-shadow:0 4px 20px #00000026}.assessment-content{padding:20px 30px}.assessment-sections{display:flex;flex-direction:column;gap:30px}.assessment-section{background:#f8f9fa;border-radius:8px;padding:20px}.section-header{margin:0 0 20px;padding:12px 20px;border-radius:6px;font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;text-align:center}.section-header.primary,.section-header.secondary,.section-header.vital{background:#e9ecef;color:#495057}.subsection{margin-bottom:30px}.subsection h4{margin:0 0 15px;font-size:14px;font-weight:700;color:#495057;text-transform:uppercase}.assessment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;align-items:center}.assessment-row{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#fff;border-radius:6px;border:1px solid #e9ecef}.assessment-row.full-width{grid-column:1 / -1;flex-direction:column;align-items:flex-start;gap:10px}.assessment-row label{font-weight:500;color:#495057;font-size:14px;min-width:120px;text-align:left}.button-group{display:flex;gap:8px;flex-wrap:wrap}.button-group.multi{gap:4px}.assessment-btn{padding:6px 12px;border:1px solid #ced4da;border-radius:4px;background:#f8f9fa;color:#495057;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s;min-width:70px}.assessment-btn:hover{border-color:#adb5bd}.assessment-btn.active.normal{background:#8b4513;color:#fff;border-color:#8b4513}.assessment-btn.active.abnormal{background:#dc3545;color:#fff;border-color:#dc3545}.assessment-btn.active.no{background:#8b4513;color:#fff;border-color:#8b4513}.assessment-btn.active.yes{background:#28a745;color:#fff;border-color:#28a745}.assessment-btn.active{background:#007bff;color:#fff;border-color:#007bff}.comment-textarea{width:100%;min-height:80px;padding:10px;border:1px solid #ced4da;border-radius:4px;font-family:inherit;font-size:14px;resize:vertical}.vitals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.vital-row{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#fff;border-radius:6px;border:1px solid #e9ecef}.vital-row label{font-weight:500;color:#495057;font-size:14px;min-width:140px}.vital-input{width:100px;padding:6px 8px;border:1px solid #ced4da;border-radius:4px;font-size:14px}.vital-input.readonly{background:#e9ecef;cursor:not-allowed}.vital-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}@media (max-width: 768px){.assessment-modal-container{width:98%;margin:10px}.assessment-content{padding:15px}.assessment-grid{grid-template-columns:1fr}.assessment-row{flex-direction:column;align-items:flex-start;gap:10px}.assessment-row label{min-width:auto;font-weight:600}.vitals-grid{grid-template-columns:1fr}.vital-row{flex-direction:column;align-items:flex-start;gap:8px}.vital-input{width:100%}}.care-plan-modal-container{background:#fff;width:95%;max-width:1400px;max-height:95vh;overflow-y:auto;border-radius:8px;box-shadow:0 4px 20px #00000026}.care-plan-content{padding:30px}.medication-section{margin-bottom:40px}.medication-section h3{margin:0 0 20px;font-size:18px;font-weight:600;color:#495057}.medication-table{background:#f8f9fa;border-radius:8px;padding:20px;border:1px solid #e9ecef}.table-header{display:grid;grid-template-columns:1fr .8fr .6fr .8fr .8fr .8fr 1fr .8fr .8fr .6fr;gap:10px;margin-bottom:15px;font-weight:600;color:#495057;font-size:13px;padding:10px 5px;border-bottom:2px solid #007bff}.medication-row{display:grid;grid-template-columns:1fr .8fr .6fr .8fr .8fr .8fr 1fr .8fr .8fr .6fr;gap:10px;margin-bottom:10px;align-items:center;padding:8px 5px;background:#fff;border-radius:4px;border:1px solid #e9ecef}.med-input,.med-select{padding:6px 8px;border:1px solid #ced4da;border-radius:4px;font-size:13px}.med-input:focus,.med-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.action-buttons{display:flex;gap:5px;justify-content:center}.add-btn,.remove-btn{width:24px;height:24px;border-radius:50%;border:none;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center}.add-btn{background:#007bff;color:#fff}.add-btn:hover{background:#0056b3}.remove-btn{background:#dc3545;color:#fff}.remove-btn:hover{background:#c82333}.medication-controls{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:20px}.save-med-btn{background:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-weight:500}.save-med-btn:hover{background:#218838}.med-set-controls{display:flex;align-items:center;gap:15px}.med-set-select{padding:6px 12px;border:1px solid #ced4da;border-radius:4px}.med-search{display:flex;flex-direction:column;gap:5px}.med-search label{font-size:12px;color:#6c757d}.search-input{padding:6px 8px;border:1px solid #ced4da;border-radius:4px;width:150px}.patient-education-section h3{margin:0 0 20px;font-size:18px;font-weight:600;color:#495057}.education-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:30px}.education-row{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.education-row label{font-weight:500;color:#495057;font-size:14px;min-width:180px}.education-btn{padding:6px 16px;border:1px solid #ced4da;border-radius:4px;background:#fff;color:#495057;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s;min-width:50px}.education-btn:hover{border-color:#adb5bd}.education-btn.active.no{background:#8b4513;color:#fff;border-color:#8b4513}.education-btn.active.yes{background:#28a745;color:#fff;border-color:#28a745}.information-section{display:flex;flex-direction:column;gap:10px}.information-section label{font-weight:500;color:#495057;font-size:14px}.information-textarea{width:100%;min-height:100px;padding:12px;border:1px solid #ced4da;border-radius:4px;font-family:inherit;font-size:14px;resize:vertical}@media (max-width: 768px){.care-plan-modal-container{width:98%;margin:10px}.care-plan-content{padding:20px}.table-header,.medication-row{grid-template-columns:1fr;gap:5px}.medication-controls{flex-direction:column;align-items:flex-start;gap:15px}.education-grid{grid-template-columns:1fr}}.ward-checklist-modal-container{background:#fff;width:90%;max-width:1200px;max-height:90vh;overflow-y:auto;border-radius:8px;box-shadow:0 4px 20px #00000026}.ward-checklist-content{padding:30px}.form-info{margin-bottom:30px}.info-row{display:flex;align-items:center;gap:15px;margin-bottom:15px}.info-row label{font-weight:500;color:#495057;min-width:150px}.form-input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px}.checklist-header{text-align:center;margin-bottom:30px;padding:15px;background:#f8f9fa;border-radius:8px}.checklist-header h3{margin:0;font-size:18px;color:#495057;font-weight:600}.checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.checklist-column{display:flex;flex-direction:column;gap:15px}.checklist-item{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef;min-height:50px}.checklist-item label{font-weight:500;color:#495057;font-size:14px;flex:1;margin-right:15px}.yes-no-buttons{display:flex;gap:8px}.checklist-btn{padding:6px 16px;border:1px solid #ced4da;border-radius:4px;background:#fff;color:#495057;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s;min-width:50px}.checklist-btn:hover{border-color:#adb5bd}.checklist-btn.active.no{background:#8b4513;color:#fff;border-color:#8b4513}.checklist-btn.active.yes{background:#28a745;color:#fff;border-color:#28a745}.time-input{padding:6px 8px;border:1px solid #ced4da;border-radius:4px;font-size:13px;width:100px}@media (max-width: 768px){.ward-checklist-modal-container{width:98%;margin:10px}.ward-checklist-content{padding:20px}.checklist-grid{grid-template-columns:1fr;gap:20px}.checklist-item{flex-direction:column;align-items:flex-start;gap:10px;min-height:auto}.checklist-item label{margin-right:0;font-weight:600}}.upload-papers-modal-container{background:#fff;border-radius:8px;width:90%;max-width:800px;max-height:90vh;overflow-y:auto}.upload-papers-content{padding:20px}.consent-section{margin-bottom:30px;border:1px solid #e0e0e0;border-radius:8px;padding:20px;background-color:#fafafa}.consent-section h3{margin:0 0 20px;color:#333;font-size:18px}.consent-upload-area{display:flex;flex-direction:column;gap:20px}.file-upload-section{display:flex;flex-direction:column;align-items:center}.file-upload-label{display:inline-block;padding:15px 30px;background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border-radius:8px;cursor:pointer;transition:all .3s ease;font-weight:500;text-align:center;min-width:250px}.file-upload-label:hover{background:linear-gradient(135deg,#0056b3,#004494);transform:translateY(-2px)}.consent-details{display:flex;flex-direction:column;gap:15px;padding:20px;background:#fff;border-radius:8px;border:1px solid #ddd}.detail-row{display:flex;align-items:center;gap:15px}.detail-row label{min-width:120px;font-weight:500;color:#555}.detail-input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.detail-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}@media (max-width: 768px){.upload-papers-modal-container{width:95%;margin:10px}.consent-section{padding:15px}.detail-row{flex-direction:column;align-items:flex-start;gap:8px}.detail-row label{min-width:auto}.detail-input{width:100%}}.nav-btn.success{background-color:#28a745;color:#fff}.nav-btn.success:hover{background-color:#218838}.ot-schedule-modal{max-width:800px;max-height:90vh;overflow-y:auto}.ot-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.ot-form .form-group.full-width{grid-column:span 2}.ot-form .form-input,.ot-form .form-textarea{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.ot-form .form-input.disabled{background-color:#f5f5f5;color:#666}.ot-form .form-input.error{border-color:#dc3545}.ot-form .error-text{color:#dc3545;font-size:12px;margin-top:4px;display:block}.ot-form label{display:block;margin-bottom:5px;font-weight:500;color:#333}.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid #eee}.btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.loading-banner{background-color:#e3f2fd;padding:10px 15px;margin-bottom:20px;border-radius:4px;border-left:4px solid #2196f3;color:#1976d2;font-weight:500}.counselling-info-banner{background-color:#f0f8e7;padding:15px;margin-bottom:20px;border-radius:4px;border-left:4px solid #4caf50}.counselling-info-banner h4{margin:0 0 10px;color:#2e7d32;font-size:16px}.counselling-info-banner .info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;font-size:14px}.counselling-info-banner .info-grid span{color:#2e7d32}.auto-filled{color:#4caf50;font-size:12px;font-weight:400;margin-left:5px}.form-input.auto-filled{background-color:#f8fff8;border-color:#4caf50}.ot-schedule-modal{max-width:900px}.discharge-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.discharge-modal{background:#fff;border-radius:8px;width:90%;max-width:800px;max-height:90vh;overflow:hidden;box-shadow:0 10px 25px #0003}.discharge-modal-header{background:#2c5282;color:#fff;padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.discharge-modal-header h2{margin:0;font-size:16px;font-weight:600}.header-buttons{display:flex;gap:5px}.minimize-btn,.close-btn{background:none;border:none;color:#fff;padding:5px 10px;cursor:pointer;border-radius:3px;font-size:12px}.minimize-btn:hover,.close-btn:hover{background:#fff3}.discharge-modal-content{padding:20px;max-height:calc(90vh - 70px);overflow-y:auto}.form-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px;margin-bottom:20px}.form-group label{font-size:13px;font-weight:500;color:#374151;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{padding:8px 12px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;color:#374151}.form-actions{display:flex;justify-content:flex-end;margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb}.save-btn{background:#2563eb;color:#fff;border:none;padding:10px 20px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.save-btn:hover:not(:disabled){background:#1d4ed8}.save-btn:disabled{background:#9ca3af;cursor:not-allowed}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.discharge-modal{width:95%;margin:20px}}.discharge-summary,.discharge-summary *,.discharge-summary *:before,.discharge-summary *:after{color:#000!important;background:#fff!important;-webkit-text-fill-color:black!important;text-decoration-color:#000!important}.discharge-summary{max-width:210mm;margin:0 auto;padding:20mm;font-family:Arial,sans-serif;font-size:12px;line-height:1.4;background:#fff!important;color:#000!important;box-sizing:border-box}.discharge-header{text-align:center;margin-bottom:20px;border-bottom:2px solid black!important;padding-bottom:15px}.discharge-header h1{font-size:22px;margin:0 0 10px;font-weight:700;text-transform:uppercase;color:#000!important}.hospital-info h2{font-size:18px;margin:0;font-weight:700;color:#000!important}.hospital-info p{color:#000!important;margin:5px 0}.patient-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px;border:1px solid black!important;padding:15px;background:#f9f9f9!important}.detail-row{display:flex;gap:10px;margin-bottom:5px}.detail-row .label{font-weight:700;min-width:130px;color:#000!important}.detail-row .value{flex:1;color:#000!important;border-bottom:1px solid black;padding-bottom:2px}.dates-section{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:25px;border:1px solid black!important;padding:15px;background:#f5f5f5!important}.date-item{display:flex;gap:10px;margin-bottom:5px}.date-item .label{font-weight:700;min-width:130px;color:#000!important}.date-item .value{flex:1;color:#000!important;border-bottom:1px solid black;padding-bottom:2px}.medical-info{margin-bottom:25px}.info-section{margin-bottom:18px}.info-section strong{display:block;margin-bottom:8px;font-weight:700;color:#000!important;text-decoration:underline;text-decoration-color:#000!important}.info-section p{margin:5px 0 5px 20px;color:#000!important;line-height:1.4}.medications-section,.medications-administered,.post-operative-medications{margin-bottom:25px}.medications-administered strong,.post-operative-medications strong{display:block;margin-bottom:10px;font-weight:700;color:#000!important;text-decoration:underline;text-decoration-color:#000!important}.medications-table,.post-op-table{width:100%;border-collapse:collapse;margin:15px 0;border:2px solid black!important}.medications-table th,.medications-table td,.post-op-table th,.post-op-table td{border:1px solid black!important;padding:8px;text-align:left;vertical-align:top;color:#000!important;background:#fff!important}.medications-table th,.post-op-table th{background:#e0e0e0!important;font-weight:700;text-align:center;color:#000!important}.medications-table tbody tr:nth-child(2n),.post-op-table tbody tr:nth-child(2n){background:#f8f8f8!important}.procedure-section{margin:20px 0}.procedure-section strong{display:block;margin-bottom:8px;font-weight:700;color:#000!important;text-decoration:underline;text-decoration-color:#000!important}.procedure-section p{margin:5px 0 5px 20px;color:#000!important}.notes-section{margin-bottom:25px}.notes,.followup{margin-bottom:18px}.notes strong,.followup strong{display:block;margin-bottom:8px;font-weight:700;color:#000!important;text-decoration:underline;text-decoration-color:#000!important}.notes p,.followup p{margin:5px 0 5px 20px;color:#000!important}.doctor-signature{display:flex;justify-content:space-between;margin:30px 0;border-top:2px solid black!important;padding-top:25px}.signature-section,.patient-signature{width:45%;border:1px solid black!important;padding:15px;background:#fff!important}.signature-section strong,.patient-signature strong,.signature-section p,.patient-signature p{color:#000!important}.signature-line{margin-top:40px;border-bottom:2px solid black!important;height:35px;display:flex;align-items:end;padding-bottom:5px;color:#000!important}.important-notes{margin-top:30px;border:2px solid black!important;padding:20px;background:#fffacd!important}.emergency-note,.emergency-contact,.acknowledgment{margin-bottom:12px;font-weight:700;color:#000!important}.emergency-contact{font-size:14px;text-align:center;padding:10px;background:#ffebee!important;border:1px solid black!important;color:#000!important}.multilingual-notes{margin:25px 0;font-size:10px;line-height:1.3;border:1px solid black!important;padding:15px;background:#f9f9f9!important}.multilingual-notes p{margin-bottom:10px;color:#000!important}.footer-note{text-align:center;margin-top:25px;font-weight:700;border:1px solid black!important;padding:15px;background:#e8f5e8!important}.footer-note p,.footer-note em{color:#000!important}.debug-section{background:#ff0!important;border:3px solid red!important;padding:15px!important;margin-bottom:25px!important;color:#000!important}.debug-section h3,.debug-section p{color:#000!important}@media print{*,*:before,*:after{background:#fff!important;color:#000!important;-webkit-print-color-adjust:exact!important;color-adjust:exact!important;print-color-adjust:exact!important;-webkit-text-fill-color:black!important}.discharge-summary{width:100%!important;max-width:none!important;margin:0!important;padding:15mm!important;font-size:11px!important;background:#fff!important;color:#000!important}.patient-details-grid{background:#f9f9f9!important}.dates-section{background:#f5f5f5!important}.medications-table th,.post-op-table th{background:#e0e0e0!important;color:#000!important}.important-notes{background:#fffacd!important}.emergency-contact{background:#ffebee!important;color:#000!important}.footer-note{background:#e8f5e8!important}.multilingual-notes{background:#f9f9f9!important}.debug-section{display:none!important}}a,a:visited,a:hover,a:active{color:#000!important;text-decoration-color:#000!important}.discharge-summary *{opacity:1!important;visibility:visible!important}.discharge-summary table{display:table!important}.discharge-summary tr{display:table-row!important}.discharge-summary td{display:table-cell!important}.ipd-charges-container{padding:24px;background-color:#f5f7fa;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.ipd-charges-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.loading-spinner{width:50px;height:50px;border:4px solid #e9ecef;border-top:4px solid #007bff;border-radius:50%;animation:ipd-spin 1s linear infinite}@keyframes ipd-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text{font-size:16px;color:#6c757d;font-weight:500}.error-container{background-color:#fff;padding:32px;border-radius:8px;text-align:center;box-shadow:0 2px 8px #0000001a}.error-title{color:#dc3545;font-size:20px;margin-bottom:12px;font-weight:600}.error-message{color:#6c757d;margin-bottom:20px;font-size:14px}.retry-button{background-color:#007bff;color:#fff;border:none;padding:10px 24px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .3s ease}.retry-button:hover{background-color:#0056b3}.package-info-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px;border-radius:12px;margin-bottom:24px;box-shadow:0 4px 16px #667eea4d}.package-info-title{font-size:20px;font-weight:600;margin:0 0 16px;display:flex;align-items:center;gap:8px}.package-info-title:before{content:"📦";font-size:24px}.package-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:20px}.package-detail{background-color:#ffffff26;padding:12px;border-radius:8px;font-size:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.detail-label{font-weight:600;opacity:.9;margin-right:4px}.package-amounts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:20px}.amount-card{background-color:#fff;padding:16px;border-radius:8px;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.amount-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.amount-label{display:block;font-size:11px;color:#6c757d;font-weight:600;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.amount-value{font-size:24px;font-weight:700;color:#212529}.total-amount .amount-value{color:#6610f2}.charges-amount .amount-value{color:#fd7e14}.advance-amount .amount-value{color:#20c997}.paid-amount .amount-value{color:#28a745}.remaining-amount .amount-value{color:#dc3545}.remaining-amount.negative .amount-value{color:#d63384}.charges-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:16px}.charges-title{font-size:24px;font-weight:600;color:#212529;margin:0}.action-buttons{display:flex;gap:12px;flex-wrap:wrap}.generate-bill-btn,.add-charges-btn{padding:12px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;white-space:nowrap}.generate-bill-btn{background-color:#28a745;color:#fff}.generate-bill-btn:hover{background-color:#218838;transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d}.add-charges-btn{background-color:#007bff;color:#fff}.add-charges-btn:hover{background-color:#0056b3;transform:translateY(-1px);box-shadow:0 4px 12px #007bff4d}.ipd-charges-table-wrapper{background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #00000014;overflow-x:auto}.ipd-charges-data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;table-layout:auto;min-width:1400px}.ipd-charges-data-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:sticky;top:0;z-index:10}.ipd-charges-data-table thead th{padding:14px 12px;text-align:left;font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.5px;white-space:nowrap;border-bottom:2px solid rgba(255,255,255,.2)}.ipd-charges-data-table tbody{background-color:#fff}.ipd-charge-data-row{border-bottom:1px solid #e9ecef;transition:background-color .2s ease}.ipd-charge-data-row:hover{background-color:#f8f9fa}.ipd-charge-data-row:last-child{border-bottom:none}.ipd-charges-data-table tbody td{padding:14px 12px;color:#495057;vertical-align:middle}.ipd-no-charges-cell{text-align:center!important;padding:48px 20px!important;color:#6c757d!important;font-style:italic;font-size:14px}.ipd-date-cell{font-size:13px;color:#495057;white-space:nowrap}.ipd-type-cell,.ipd-category-cell{font-size:13px;color:#495057}.ipd-name-cell{font-weight:600;color:#212529;font-size:13px}.ipd-amount-cell{font-weight:600;color:#212529;text-align:right;font-size:13px;white-space:nowrap}.ipd-qty-cell{text-align:center;font-weight:500;font-size:13px}.ipd-tax-cell{text-align:center;font-size:13px}.ipd-paid-cell{text-align:right;font-weight:600}.ipd-paid-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:700}.ipd-paid-badge.ipd-paid-full{background-color:#d4edda;color:#155724}.ipd-paid-badge.ipd-paid-partial{background-color:#fff3cd;color:#856404}.ipd-paid-badge.ipd-paid-none{background-color:#f8d7da;color:#721c24}.ipd-status-cell{text-align:center}.ipd-status-label{display:inline-block;padding:5px 12px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.ipd-status-label.ipd-status-complete{background-color:#d4edda;color:#155724}.ipd-status-label.ipd-status-pending{background-color:#fff3cd;color:#856404}.ipd-status-label.ipd-status-unpaid{background-color:#f8d7da;color:#721c24}.ipd-actions-cell{text-align:center;padding:8px!important}.ipd-action-buttons-group{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:nowrap}.ipd-pay-action-btn,.ipd-delete-action-btn{padding:6px 12px;border:none;border-radius:5px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap;flex-shrink:0}.ipd-pay-action-btn{background-color:#17a2b8;color:#fff;min-width:70px}.ipd-pay-action-btn:hover{background-color:#138496;transform:scale(1.05);box-shadow:0 2px 8px #17a2b84d}.ipd-delete-action-btn{background-color:#dc3545;color:#fff;min-width:40px}.ipd-delete-action-btn:hover{background-color:#c82333;transform:scale(1.05);box-shadow:0 2px 8px #dc35454d}.ipd-pay-action-btn:active,.ipd-delete-action-btn:active{transform:scale(.98)}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:ipd-fadeIn .2s ease}@keyframes ipd-fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background-color:#fff;border-radius:12px;width:90%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003;animation:ipd-slideUp .3s ease}.payment-modal{max-width:650px}@keyframes ipd-slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:2px solid #e9ecef;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px 12px 0 0}.modal-title{font-size:20px;font-weight:600;margin:0;display:flex;align-items:center;gap:8px}.modal-close{background:none;border:none;font-size:32px;color:#fff;cursor:pointer;line-height:1;transition:transform .2s ease;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.modal-close:hover{transform:rotate(90deg)}.info-banner,.warning-banner{padding:12px 16px;margin:16px 24px;border-radius:6px;font-size:14px}.info-banner{background-color:#d1ecf1;color:#0c5460;border-left:4px solid #17a2b8}.warning-banner{background-color:#fff3cd;color:#856404;border-left:4px solid #ffc107}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;padding:24px}.form-label{font-size:14px;font-weight:600;color:#495057;display:flex;align-items:center;gap:4px}.billing-indicator{color:#28a745;font-size:12px}.charges-indicator{color:#dc3545;font-size:12px}.form-input,.form-textarea{padding:10px 12px;border:2px solid #e9ecef;border-radius:6px;font-size:14px;color:#495057;transition:border-color .3s ease,box-shadow .3s ease;font-family:inherit}.form-input.readonly{background-color:#f8f9fa;cursor:not-allowed}.form-input:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.6}.form-textarea{resize:vertical;min-height:80px}.form-hint{font-size:12px;color:#6c757d;margin-top:4px}.payment-charge-summary{padding:20px 24px;background-color:#f8f9fa;border-bottom:1px solid #e9ecef}.payment-charge-summary h4{margin:0 0 16px;font-size:16px;color:#495057;font-weight:600}.summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background-color:#fff;border-radius:6px;font-size:14px}.summary-item.highlight{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.summary-label{font-weight:500;color:#6c757d}.summary-item.highlight .summary-label{color:#fff;opacity:.9}.summary-value{font-weight:600;color:#212529}.summary-item.highlight .summary-value{color:#fff;font-size:16px}.payment-form{padding:24px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.form-row:last-child{margin-bottom:0}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e9ecef;background-color:#f8f9fa}.cancel-btn,.submit-btn{padding:10px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.cancel-btn{background-color:#6c757d;color:#fff}.cancel-btn:hover:not(:disabled){background-color:#5a6268}.submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.payment-submit-btn{background:linear-gradient(135deg,#17a2b8,#138496)}.payment-submit-btn:hover:not(:disabled){box-shadow:0 4px 12px #17a2b866}.cancel-btn:disabled,.submit-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1024px){.ipd-charges-data-table{font-size:12px}.ipd-charges-data-table thead th{font-size:10px;padding:12px 10px}.ipd-charges-data-table tbody td{padding:12px 10px}}@media (max-width: 768px){.ipd-charges-container,.package-info-card{padding:16px}.package-details-grid,.package-amounts{grid-template-columns:1fr}.charges-header{flex-direction:column;align-items:stretch}.action-buttons{width:100%;flex-direction:row}.generate-bill-btn,.add-charges-btn{flex:1}.ipd-charges-table-wrapper{border-radius:0;margin:0 -16px}.modal-content{width:95%;max-height:95vh}.form-grid{grid-template-columns:1fr;padding:16px}.summary-grid,.form-row{grid-template-columns:1fr}}@media (max-width: 480px){.charges-title{font-size:20px}.action-buttons{flex-direction:column}.generate-bill-btn,.add-charges-btn{width:100%;justify-content:center}.modal-header{padding:16px}.modal-title{font-size:18px}.form-grid,.payment-form{padding:16px}.ipd-action-buttons-group{flex-direction:column;gap:4px}.ipd-pay-action-btn,.ipd-delete-action-btn{width:100%}}@media print{.action-buttons,.modal-overlay,.ipd-pay-action-btn,.ipd-delete-action-btn{display:none!important}.ipd-charges-container{background-color:#fff}.ipd-charges-data-table{page-break-inside:avoid}}.payments-container{padding:20px;font-family:Segoe UI,sans-serif;background:#f5f5fb;color:#333}.payments-header{display:flex;justify-content:space-between;align-items:center}.add-btn{padding:8px 14px;background-color:#036;color:#fff;border:none;cursor:pointer;font-size:14px}.add-btn:hover{background-color:#05a}table{width:100%;border-collapse:collapse;margin-top:20px;font-size:14px}table th,table td{padding:10px;border:1px solid #ddd}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0006;display:flex;align-items:flex-start;justify-content:center;padding-top:40px;z-index:1000}.modal-box{background:#fff;padding:20px;border-radius:5px;width:95%;max-width:600px;box-shadow:0 0 20px #0003;position:relative}.modal-header{display:flex;justify-content:space-between;align-items:center;background-color:#036;color:#fff;padding:10px 15px;border-radius:5px 5px 0 0}.modal-header h3{margin:0;font-size:18px}.close-btn{font-size:20px;font-weight:700;cursor:pointer}.payment-form{padding:15px}.form-row{display:flex;gap:20px;margin-bottom:15px}.form-row label{font-weight:700;display:block;margin-bottom:5px}.form-row input,.form-row select,.form-row textarea{width:100%;padding:8px;font-size:14px}textarea{resize:vertical;height:60px}.save-btn-wrap{display:flex;justify-content:flex-end}.save-btn{background-color:#036;color:#fff;padding:10px 16px;font-size:14px;border:none;cursor:pointer}.save-btn:hover{background-color:#05a}.ot-schedule-container{max-width:1400px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:#f8f9fa;min-height:100vh}.header-section{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:25px}.page-title{font-size:28px;font-weight:700;color:#2c3e50;margin:0 0 20px;text-align:center}.date-controls{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:20px;flex-wrap:wrap}.date-label{font-weight:600;color:#34495e;font-size:16px}.date-input{padding:10px 15px;border:2px solid #e0e6ed;border-radius:8px;font-size:16px;background:#fff;transition:border-color .3s ease;min-width:160px}.date-input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.refresh-btn{padding:10px 20px;background:#3498db;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.print-btn{padding:10px 20px;background:#27ae60;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.refresh-btn:hover:not(:disabled){background:#2980b9;transform:translateY(-1px)}.print-btn:hover:not(:disabled){background:#229954;transform:translateY(-1px)}.refresh-btn:disabled,.print-btn:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.summary-info{display:flex;justify-content:center;gap:30px;flex-wrap:wrap}.patient-count,.selected-date{font-size:16px;color:#7f8c8d}.patient-count strong,.selected-date strong{color:#2c3e50;font-weight:700}.error-message{background:#e74c3c;color:#fff;padding:15px;border-radius:8px;margin-bottom:20px;text-align:center;font-weight:600}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#7f8c8d}.loading-spinner{width:40px;height:40px;border:4px solid #ecf0f1;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px}.no-patients{background:#fff;padding:60px 20px;border-radius:12px;text-align:center;box-shadow:0 2px 8px #0000001a}.no-patients h3{color:#7f8c8d;font-size:24px;margin-bottom:10px}.no-patients p{color:#95a5a6;font-size:16px;margin:0}.ot-sections{display:flex;flex-direction:column;gap:30px}.ot-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.ot-header{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;padding:20px 25px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.ot-title{font-size:22px;font-weight:700;margin:0}.patient-count-badge{background:#fff3;padding:6px 12px;border-radius:20px;font-size:14px;font-weight:600}.patients-grid{padding:25px;display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.patient-card{border:2px solid #ecf0f1;border-radius:10px;padding:20px;background:#fdfdfd;transition:all .3s ease;position:relative}.patient-card:hover{border-color:#3498db;box-shadow:0 4px 12px #3498db26;transform:translateY(-2px)}.patient-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;flex-wrap:wrap;gap:10px}.patient-ids{display:flex;flex-direction:column;gap:5px}.case-id,.patient-id{font-size:14px;font-weight:600;color:#34495e}.case-id{color:#e74c3c}.patient-id{color:#27ae60}.status-badge{background:#27ae60;color:#fff;padding:4px 10px;border-radius:15px;font-size:12px;font-weight:600;text-transform:capitalize}.patient-details{display:flex;gap:8px}.detail-row{display:flex;justify-content:space-between;align-items:flex-start;padding:6px 0;border-bottom:1px solid #f8f9fa;gap:15px}.detail-row:last-child{border-bottom:none}.label{font-weight:600;color:#7f8c8d;font-size:14px;min-width:120px;flex-shrink:0}.value{color:#2c3e50;font-size:14px;text-align:right;word-break:break-word}.detail-row.notes .value,.detail-row.remarks .value{text-align:left;font-style:italic;color:#8e44ad}.follow-up{margin-top:15px;padding-top:15px;border-top:2px solid #ecf0f1;display:flex;justify-content:space-between;align-items:center}.follow-up-label{font-weight:600;color:#8e44ad;font-size:14px}.follow-up-date{color:#8e44ad;font-weight:600;font-size:14px}.status-badge,.patient-card[data-status=completed] .status-badge{background:#27ae60}.patient-card[data-status=scheduled] .status-badge{background:#f39c12}.patient-card[data-status=cancelled] .status-badge{background:#e74c3c}.patient-card[data-status=in-progress] .status-badge{background:#3498db}@media (max-width: 768px){.ot-schedule-container{padding:15px}.header-section{padding:20px}.page-title{font-size:24px}.date-controls{flex-direction:column;align-items:stretch}.date-input{min-width:auto}.summary-info{flex-direction:column;gap:10px;text-align:center}.patients-grid{grid-template-columns:1fr;padding:20px}.patient-card{padding:15px}.ot-header{padding:15px 20px}.ot-title{font-size:20px}.label{min-width:auto}.value{text-align:left}.follow-up{flex-direction:column;align-items:flex-start;gap:5px}}@media (max-width: 480px){.patient-header{flex-direction:column;align-items:flex-start}.status-badge{align-self:flex-start}}.print-view{display:none}.print-header{text-align:center;margin-bottom:30px;border-bottom:2px solid #2c3e50;padding-bottom:20px}.print-header h1{font-size:28px;color:#2c3e50;margin:0 0 15px;font-weight:700}.print-info{display:flex;justify-content:space-around;flex-wrap:wrap;gap:20px}.print-info p{margin:5px 0;font-size:14px;color:#34495e}.print-ot-section{margin-bottom:40px;page-break-inside:avoid}.print-ot-title{background:#34495e;color:#fff;padding:10px 15px;margin:0 0 15px;font-size:18px;font-weight:600}.print-table{width:100%;border-collapse:collapse;font-size:11px;margin-bottom:20px}.print-table th,.print-table td{border:1px solid #bdc3c7;padding:8px 6px;text-align:left;vertical-align:top}.print-table th{background:#ecf0f1;font-weight:600;color:#2c3e50}.print-table tr:nth-child(2n){background:#f8f9fa}.print-table td:first-child{text-align:center;font-weight:600}.print-table td:last-child{font-size:9px;max-width:180px;word-wrap:break-word;line-height:1.3}.no-patients-print{text-align:center;font-size:16px;color:#7f8c8d;margin:40px 0}.print-footer{margin-top:40px;padding-top:20px;border-top:1px solid #bdc3c7;text-align:center;font-size:12px;color:#7f8c8d}@media print{body *{visibility:hidden}.print-view,.print-view *{visibility:visible}.print-view{position:absolute;left:0;top:0;width:100%;display:block!important;background:#fff;font-family:Arial,sans-serif}.screen-view,.header-section,.loading-container,.error-message{display:none!important}.print-header{margin-bottom:20px;padding-bottom:15px}.print-header h1{font-size:24px;margin-bottom:10px}.print-info{justify-content:center;gap:30px}.print-info p{font-size:12px}.print-ot-section{margin-bottom:30px;page-break-inside:avoid}.print-ot-title{padding:8px 12px;font-size:16px;margin-bottom:10px}.print-table{font-size:10px}.print-table th,.print-table td{padding:6px 4px}.print-table td:last-child{font-size:8px;max-width:150px;line-height:1.2}.print-footer{margin-top:30px;padding-top:15px;font-size:10px}.print-ot-section:nth-child(4n){page-break-after:always}.print-table thead{display:table-header-group}.print-table tbody{display:table-row-group}}.iol-details-section{margin-top:15px;padding:15px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;border-left:4px solid #17a2b8;position:relative;transition:all .3s ease}.iol-details-section:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6);box-shadow:0 2px 8px #17a2b826}.detail-row.iol-header{background:#17a2b81a;margin:-15px -15px 12px;padding:12px 15px;border-radius:8px 8px 0 0;border-bottom:2px solid #17a2b8;position:relative}.detail-row.iol-header:before{content:"🔬";position:absolute;left:-2px;top:50%;transform:translateY(-50%);font-size:16px}.detail-row.iol-header .label{color:#17a2b8;font-weight:700;font-size:15px;text-transform:uppercase;letter-spacing:.5px}.iol-serial{background:#17a2b8;color:#fff!important;padding:4px 10px;border-radius:15px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #17a2b84d}.iol-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:8px}.iol-grid .detail-row{background:#fff;padding:8px 12px;border-radius:6px;border:1px solid #e9ecef;border-bottom:1px solid #e9ecef!important;transition:all .2s ease;position:relative;overflow:hidden}.iol-grid .detail-row:hover{border-color:#17a2b8;box-shadow:0 2px 6px #17a2b81a;transform:translateY(-1px)}.iol-grid .detail-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(to bottom,#17a2b8,#138496);opacity:0;transition:opacity .2s ease}.iol-grid .detail-row:hover:before{opacity:1}.iol-grid .detail-row .label{color:#6c757d;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.3px;min-width:auto;margin-bottom:2px}.iol-grid .detail-row .value{color:#495057;font-weight:600;font-size:13px;text-align:left!important;line-height:1.2}.iol-grid .detail-row:has(.label:contains("Power")) .value,.iol-grid .detail-row:has(.label:contains("A-Constant")) .value{color:#28a745;font-weight:700}.iol-grid .detail-row:has(.label:contains("Price")) .value{color:#dc3545;font-weight:700}.iol-grid .detail-row:has(.label:contains("Expiry")) .value{color:#fd7e14;font-weight:600}.iol-grid .detail-row:has(.label:contains("Company")) .value{color:#6f42c1;font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:.3px}.iol-details-section[data-iol-status=available]:after{content:"✓ Reserved";position:absolute;top:8px;right:12px;background:#28a745;color:#fff;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.iol-details-section[data-iol-expired=true]:after{content:"⚠ Check Expiry";background:#ffc107;color:#212529}@media print{.iol-details-section{background:transparent!important;border:1px solid #6c757d;margin:8px 0;padding:8px;page-break-inside:avoid}.detail-row.iol-header{background:#f8f9fa!important;margin:-8px -8px 8px;padding:6px 8px;border-bottom:1px solid #6c757d}.detail-row.iol-header:before{content:"IOL: ";position:static;transform:none;font-size:10px;font-weight:700}.iol-serial{background:#6c757d!important;color:#fff!important;padding:2px 6px;font-size:9px}.iol-grid{grid-template-columns:repeat(3,1fr);gap:6px}.iol-grid .detail-row{background:transparent!important;border:1px solid #dee2e6;padding:4px 6px}.iol-grid .detail-row:before{display:none}.iol-grid .detail-row .label{font-size:9px;color:#6c757d}.iol-grid .detail-row .value{font-size:10px;color:#495057;font-weight:600}.iol-details-section:after{display:none}}@media (max-width: 768px){.iol-details-section{margin:12px -15px 15px;border-radius:0;border-left:none;border-top:4px solid #17a2b8}.detail-row.iol-header{margin:-15px -15px 10px;border-radius:0}.iol-grid{grid-template-columns:1fr 1fr;gap:8px}.iol-grid .detail-row{padding:6px 10px}.iol-grid .detail-row .label{font-size:11px}.iol-grid .detail-row .value{font-size:12px}}@media (max-width: 480px){.iol-grid{grid-template-columns:1fr}.iol-details-section{padding:12px}.detail-row.iol-header{padding:10px 12px;margin:-12px -12px 8px}.iol-serial{font-size:11px;padding:3px 8px}}.iol-details-section{animation:slideInIOL .3s ease-out}@keyframes slideInIOL{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.iol-grid .detail-row:focus-within{outline:2px solid #17a2b8;outline-offset:2px}.iol-not-found{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-left-color:#ffc107;color:#856404}.iol-not-found .detail-row.iol-header .label{color:#856404}.iol-not-found:after{content:"⚠ No IOL Reserved";background:#ffc107;color:#212529}.iol-critical-info{position:relative}.iol-critical-info:before{content:"⭐";position:absolute;left:-20px;top:50%;transform:translateY(-50%);color:#ffc107;font-size:12px}.patient-card:hover .iol-details-section{border-left-color:#28a745}.patient-card:hover .detail-row.iol-header{background:#28a7451a;border-bottom-color:#28a745}.patient-card:hover .iol-serial{background:#28a745;box-shadow:0 2px 6px #28a74566}.medication-container{max-width:80%;margin:2rem auto;background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000014;padding:2rem 2.5rem;font-family:Segoe UI,Arial,sans-serif}.medication-title{font-size:2rem;font-weight:700;color:#2d3748;margin-bottom:.5rem}z .medication-desc{color:#718096;margin-bottom:1.5rem}.medication-list{list-style:none;padding:0;margin-bottom:1.5rem}.medication-list li{background:#f7fafc;border-radius:8px;margin-bottom:.75rem;padding:.75rem 1rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 4px #00000008}.medication-list strong{color:#3182ce}.add-medication-btn{background:linear-gradient(90deg,#3182ce,#63b3ed);color:#fff;border:none;border-radius:8px;padding:.6rem 1.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,box-shadow .2s;margin-bottom:1rem;box-shadow:0 2px 8px #3182ce14}.add-medication-btn:hover{background:linear-gradient(90deg,#2563eb,#4299e1)}.medication-form{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.medication-form input[type=text],.medication-form input[type=datetime-local]{padding:.5rem 1rem;border:1px solid #cbd5e1;border-radius:6px;font-size:1rem;outline:none;transition:border .2s}.medication-form input:focus{border-color:#3182ce}.medication-form button[type=submit]{background:#38a169;color:#fff;border:none;border-radius:6px;padding:.5rem 1.2rem;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.medication-form button[type=submit]:hover{background:#2f855a}@media (max-width: 600px){.medication-container{padding:1rem}.medication-title{font-size:1.3rem}}.prescription-page{padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;max-width:1400px;margin:0 auto}.prescription-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px 0;border-bottom:2px solid #e9ecef}.prescription-header h2{margin:0;color:#2c3e50;font-weight:600}.store-info{color:#6c757d;font-size:14px}.store-label strong{color:#007bff}.template-section{background:#f8f9fa;padding:20px;border-radius:8px;margin-bottom:20px;border:1px solid #e9ecef}.template-container{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.template-container label{font-weight:600;color:#495057;white-space:nowrap}.template-select{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;background:#fff;min-width:250px;font-size:14px}.template-select:disabled{background:#e9ecef;cursor:not-allowed}.loading-indicator{color:#007bff;font-size:12px;font-style:italic}.template-info{display:flex;align-items:center;gap:10px}.template-badge{background:#007bff;color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.clear-template-btn{background:#dc3545;color:#fff;border:none;padding:6px 12px;border-radius:4px;font-size:12px;cursor:pointer;transition:background-color .2s}.clear-template-btn:hover{background:#c82333}.prescription-table-section{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.table-container{overflow-x:auto;margin-bottom:15px}.prescription-table{width:100%;border-collapse:collapse;font-size:14px}.prescription-table th{background:#007bff;color:#fff;padding:12px 8px;text-align:left;font-weight:600;white-space:nowrap}.prescription-table td{padding:10px 8px;border-bottom:1px solid #e9ecef;vertical-align:middle}.prescription-table tr:hover{background:#f8f9fa}.prescription-table select{width:100%;padding:6px 8px;border:1px solid #ced4da;border-radius:4px;background:#fff;font-size:13px;min-width:120px}.prescription-table select:disabled{background:#e9ecef;cursor:not-allowed}.duration-container{display:flex;gap:5px}.duration-container select{flex:1;min-width:80px}.taper-container{display:flex;flex-direction:column;align-items:center;gap:5px}.taper-btn{background:#28a745;color:#fff;border:none;padding:6px 10px;border-radius:4px;font-size:12px;cursor:pointer;white-space:nowrap;transition:background-color .2s}.taper-btn:hover{background:#218838}.taper-summary{font-size:11px;color:#6c757d;font-style:italic}.instruction-input{width:100%;padding:6px 8px;border:1px solid #ced4da;border-radius:4px;font-size:13px;min-width:150px}.remove-btn{background:#dc3545;color:#fff;border:none;padding:6px 10px;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .2s}.remove-btn:hover:not(:disabled){background:#c82333}.remove-btn:disabled{background:#6c757d;cursor:not-allowed}.add-row-btn{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.add-row-btn:hover{background:#0056b3}.form-sections{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-bottom:20px}.comments-section,.patient-info-section{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.comments-section label,.patient-info-section label{display:block;margin-bottom:8px;font-weight:600;color:#495057}.comments-section textarea{width:100%;padding:10px;border:1px solid #ced4da;border-radius:4px;resize:vertical;font-family:inherit;font-size:14px}.patient-info-section input{width:100%;padding:10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;background:#f8f9fa}.patient-info-section input.success{border-color:#28a745;background:#d4edda}.patient-info-section input.warning{border-color:#ffc107;background:#fff3cd}.submit-section{text-align:center;padding:20px}.submit-btn{background:#28a745;color:#fff;border:none;padding:15px 40px;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .2s;min-width:200px}.submit-btn:hover:not(:disabled){background:#218838}.submit-btn:disabled{background:#6c757d;cursor:not-allowed}.modal-container{background:#fff;border-radius:8px;max-width:90vw;max-height:90vh;overflow:hidden;box-shadow:0 10px 25px #0003}.modal-container.large{width:1200px}.modal-header{background:#007bff;color:#fff;padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:18px;font-weight:600}.modal-close-btn{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.modal-content{padding:20px;overflow-y:auto;max-height:calc(90vh - 140px)}.form-group label{display:block;margin-bottom:5px;font-weight:600;color:#495057}.medicine-name-input{width:100%;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;background:#f8f9fa;font-size:14px}.taper-by-section{margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:4px}.radio-group{display:flex;gap:15px;margin:10px 0}.radio-label{display:flex;align-items:center;gap:5px;cursor:pointer}.radio-label input[type=radio]{margin:0}.note{font-size:12px;color:#6c757d;margin-top:10px}.taper-table-container{overflow-x:auto;margin:20px 0}.taper-table{width:100%;border-collapse:collapse;font-size:13px;min-width:800px}.taper-table th{background:#f8f9fa;padding:10px 8px;border:1px solid #dee2e6;text-align:left;font-weight:600;color:#495057}.taper-table td{padding:8px;border:1px solid #dee2e6;vertical-align:middle}.sr-no{text-align:center;width:60px;font-weight:600}.number-input,.date-input,.time-input{width:100%;padding:6px 8px;border:1px solid #ced4da;border-radius:4px;font-size:13px;min-width:80px}.interval-container{display:flex;align-items:center}.interval-input{width:70px;padding:6px 8px;border:1px solid #ced4da;border-radius:4px;font-size:13px}.delete-btn{background:#dc3545;color:#fff;border:none;padding:6px 8px;border-radius:4px;cursor:pointer;font-size:12px}.delete-btn:hover:not(:disabled){background:#c82333}.delete-btn:disabled{background:#6c757d;cursor:not-allowed}.add-taper-row-btn{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;margin-bottom:20px}.add-taper-row-btn:hover{background:#0056b3}.modal-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:20px;border-top:1px solid #dee2e6}.save-btn{background:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.save-btn:hover{background:#218838}.cancel-btn{background:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.error-message{text-align:center;padding:40px 20px;background:#f8d7da;color:#721c24;border-radius:8px;border:1px solid #f5c6cb}.error-message h3{margin-top:0;color:#721c24}.error-message button{background:#dc3545;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;margin-top:15px}.error-message button:hover{background:#c82333}@media (max-width: 768px){.form-sections{grid-template-columns:1fr}.template-container{flex-direction:column;align-items:flex-start}.template-select{min-width:100%}.prescription-table{font-size:12px}.prescription-table th,.prescription-table td{padding:8px 4px}}.lab-reports-container{padding:20px;background:#f8f9fa;min-height:500px}.lab-reports-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.lab-reports-header h3{margin:0;color:#333;font-size:1.5rem}.lab-filters{display:flex;gap:10px}.lab-filter-select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;background:#fff;font-size:14px}.lab-reports-loading{display:flex;justify-content:center;align-items:center;height:200px;font-size:16px;color:#666}.lab-no-reports{text-align:center;padding:40px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.lab-reports-content{display:grid;grid-template-columns:1fr 1fr;gap:20px;height:calc(100vh - 200px)}.lab-reports-list{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-y:auto;max-height:100%}.lab-report-card{padding:15px;border-bottom:1px solid #eee;cursor:pointer;transition:all .2s ease}.lab-report-card:hover{background:#f8f9fa}.lab-report-card.selected{background:#e3f2fd;border-left:4px solid #2196f3}.lab-report-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.lab-report-header h4{margin:0;color:#333;font-size:1.1rem}.lab-badges{display:flex;gap:8px;flex-wrap:wrap}.lab-badge{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.lab-status-pending{background:#fff3cd;color:#856404}.lab-status-completed{background:#d1edff;color:#0c5460}.lab-status-progress{background:#cce5ff;color:#004085}.lab-priority-urgent{background:#f8d7da;color:#721c24}.lab-priority-high{background:#ffeaa7;color:#6c5600}.lab-priority-normal{background:#d1f2eb;color:#155724}.lab-report-info{color:#666;font-size:14px}.lab-report-info p{margin:4px 0}.lab-report-details{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-y:auto;max-height:100%}.lab-detail-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee;background:#f8f9fa}.lab-detail-header h4{margin:0;color:#333}.lab-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#666;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center}.lab-close-btn:hover{background:#e9ecef}.lab-detail-content{padding:20px}.lab-detail-section{margin-bottom:25px}.lab-detail-section h5{margin:0 0 15px;color:#333;font-size:1.1rem;border-bottom:2px solid #2196f3;padding-bottom:5px}.lab-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.lab-detail-item{display:flex;flex-direction:column;gap:4px}.lab-detail-item label{font-weight:600;color:#555;font-size:14px}.lab-detail-item span{color:#333}.lab-results{background:#f8f9fa;border-radius:6px;overflow:hidden}.lab-result-item{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:15px;padding:12px 15px;border-bottom:1px solid #dee2e6;align-items:center}.lab-result-item:first-child{background:#e9ecef;font-weight:600}.lab-result-item:first-child:before{content:"Parameter"}.lab-result-item:first-child .lab-result-value:before{content:"Value"}.lab-result-item:first-child .lab-result-range:before{content:"Normal Range"}.lab-result-item:first-child .lab-result-flag:before{content:"Flag"}.lab-result-name{font-weight:500;color:#333}.lab-result-value{font-weight:600;color:#2196f3}.lab-result-range{color:#666;font-size:14px}.lab-result-flag{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600;text-align:center}.lab-result-flag.normal{background:#d1edff;color:#0c5460}.lab-result-flag.high{background:#f8d7da;color:#721c24}.lab-result-flag.low{background:#fff3cd;color:#856404}@media (max-width: 1024px){.lab-reports-content{grid-template-columns:1fr}.lab-result-item{grid-template-columns:1fr;gap:8px}.lab-detail-grid{grid-template-columns:1fr}}.insurance-container{padding:20px;background:#f8f9fa;min-height:500px}.insurance-header{margin-bottom:20px}.insurance-header h3{margin:0 0 15px;color:#333;font-size:1.5rem}.insurance-tabs{display:flex;gap:10px;border-bottom:2px solid #dee2e6}.insurance-tab{padding:10px 20px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:14px;font-weight:500;color:#666;transition:all .2s ease}.insurance-tab:hover{color:#2196f3}.insurance-tab.active{color:#2196f3;border-bottom-color:#2196f3}.insurance-loading{display:flex;justify-content:center;align-items:center;height:200px;font-size:16px;color:#666}.insurance-policy-section .discharged-container{padding:20px;max-width:1400px;margin:0 auto;background-color:#f8f9fa;min-height:100vh}.discharged-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:25px;background:#fff;padding:20px;border-radius:10px;box-shadow:0 2px 8px #0000001a}.header-content{display:flex;flex-direction:column;gap:10px}.back-button{background:#95a5a6;color:#fff;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .3s ease;align-self:flex-start}.back-button:hover{background:#7f8c8d;transform:translate(-2px)}.discharged-header h2{margin:0;color:#2c3e50;font-size:24px;font-weight:600}.discharged-buttons{display:flex;gap:10px}.discharged-buttons button{padding:10px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;display:flex;align-items:center;gap:5px}.discharged-buttons button.blue{background-color:#3498db;color:#fff}.discharged-buttons button.blue:hover{background-color:#2980b9;transform:translateY(-1px)}.discharged-buttons button.green{background-color:#27ae60;color:#fff}.discharged-buttons button.green:hover{background-color:#229954;transform:translateY(-1px)}.discharged-buttons button.orange{background-color:#f39c12;color:#fff}.discharged-buttons button.orange:hover{background-color:#e67e22;transform:translateY(-1px)}.search-bar{margin-bottom:20px}.search-bar input{width:100%;padding:12px 16px;border:2px solid #e1e8ed;border-radius:8px;font-size:14px;background:#fff;transition:border-color .3s ease}.search-bar input:focus{outline:none;border-color:#95a5a6;box-shadow:0 0 0 3px #95a5a61a}.search-bar input::placeholder{color:#95a5a6}.status-indicator.discharged{padding:12px 16px;background:linear-gradient(135deg,#95a5a6,#7f8c8d);color:#fff;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #95a5a64d;display:flex;align-items:center;gap:8px}.status-indicator.discharged .status-icon{font-size:16px}.status-indicator.discharged span{font-size:14px;font-weight:500}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #95a5a6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px}.error-container{color:#e74c3c}.error-icon{font-size:24px;margin-bottom:10px}.table-wrapper{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 4px 12px #0000001a}.discharged-table{width:100%;border-collapse:collapse;font-size:14px}.discharged-table thead{background:linear-gradient(135deg,#7f8c8d,#95a5a6);color:#fff}.discharged-table th{padding:16px 12px;text-align:left;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.discharged-table tbody tr{transition:background-color .2s ease;border-bottom:1px solid #ecf0f1}.discharged-table tbody tr:hover{background-color:#f8f9fa}.discharged-table td{padding:14px 12px;vertical-align:middle}.ipd-link{color:#7f8c8d;text-decoration:none;font-weight:600;transition:color .3s ease}.ipd-link:hover{color:#95a5a6;text-decoration:underline}.status-badge{padding:6px 12px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-block}.status-badge.discharged{background-color:#95a5a6;color:#fff}.no-data{text-align:center;padding:40px 20px}.no-data-content{display:flex;flex-direction:column;align-items:center;gap:15px}.no-data-icon{font-size:48px;opacity:.5}.no-data-content p{color:#7f8c8d;font-style:italic;margin:0;font-size:16px}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background-color:#f8f9fa;border-top:1px solid #ecf0f1}.record-info{color:#7f8c8d;font-size:13px}.pagination{display:flex;gap:5px}.pagination button{padding:8px 12px;border:1px solid #ddd;background:#fff;cursor:pointer;border-radius:4px;font-size:12px;transition:all .2s ease}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination button.active{background-color:#95a5a6;color:#fff;border-color:#95a5a6}.pagination button:not(:disabled):hover{background-color:#ecf0f1}@media (max-width: 1200px){.discharged-table{font-size:13px}.discharged-table th,.discharged-table td{padding:10px 8px}}@media (max-width: 768px){.discharged-header{flex-direction:column;gap:15px;align-items:stretch}.discharged-buttons{justify-content:center;flex-wrap:wrap}.table-wrapper{overflow-x:auto}.discharged-table{min-width:1100px}.table-footer{flex-direction:column;gap:10px;text-align:center}.header-content{align-items:center}}.emr-wrapper{min-height:100vh;background:linear-gradient(135deg,#2563eb,#1d4ed8 25%,#1e40af 75%,#1e3a8a);padding:20px}.emr-main-container{font-family:Inter,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);min-height:calc(100vh - 40px);padding:32px 28px;border-radius:24px;box-shadow:0 20px 40px #2563eb26,0 0 0 1px #fff3;border:1px solid rgba(255,255,255,.3)}.emr-main-header{background:linear-gradient(135deg,#2563eb1a,#1d4ed80d);padding:32px 28px;border-radius:20px;box-shadow:0 8px 32px #2563eb1f;margin-bottom:32px;border:1px solid rgba(37,99,235,.1)}.emr-main-title{font-size:2.5rem;font-weight:900;color:#1e293b;margin:0 0 24px;letter-spacing:-1.5px;background:linear-gradient(135deg,#2563eb,#1d4ed8,#1e3a8a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.emr-main-date-selector{margin:24px 0;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.emr-main-date-selector label{font-weight:700;color:#374151;font-size:1.1rem}.emr-date-navigation{display:flex;align-items:center;gap:12px;background:#fffc;padding:8px;border-radius:16px;border:1px solid rgba(37,99,235,.1)}.emr-date-arrow-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:12px;padding:10px 14px;cursor:pointer;font-size:16px;font-weight:600;color:#fff;transition:all .3s ease;box-shadow:0 4px 15px #2563eb4d;min-width:44px;height:44px;display:flex;align-items:center;justify-content:center}.emr-date-arrow-btn:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 8px 25px #2563eb66;background:linear-gradient(135deg,#1d4ed8,#1e40af)}.emr-date-input{padding:12px 18px;border:2px solid rgba(203,213,225,.5);border-radius:14px;font-size:1rem;background:#ffffffe6;transition:all .3s ease;font-weight:500;color:#374151;height:44px}.emr-date-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb26;background:#fff}.emr-today-btn{padding:12px 24px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:14px;cursor:pointer;font-size:1rem;font-weight:700;transition:all .3s ease;box-shadow:0 6px 20px #2563eb4d;height:44px}.emr-today-btn:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 10px 30px #2563eb66;background:linear-gradient(135deg,#1d4ed8,#1e40af)}.emr-main-counters{display:flex;gap:16px;margin-bottom:28px;flex-wrap:wrap}.emr-counter-btn{padding:14px 24px;background:#f8fafccc;border:2px solid rgba(37,99,235,.2);border-radius:16px;font-size:1rem;color:#2563eb;font-weight:700;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #2563eb1a}.emr-counter-btn:hover{background:#2563eb1a;transform:translateY(-2px) scale(1.02);box-shadow:0 8px 25px #2563eb33;border-color:#1d4ed8}.emr-counter-btn.emr-counter-active{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:transparent;box-shadow:0 8px 25px #2563eb66}.emr-main-filters{display:flex;gap:14px}.emr-filter-btn{padding:12px 20px;background:#f8fafccc;border:2px solid rgba(37,99,235,.2);border-radius:14px;font-size:.95rem;color:#64748b;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.emr-filter-btn.emr-filter-active{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:transparent;box-shadow:0 6px 20px #10b9814d;transform:translateY(-1px)}.emr-filter-btn:hover:not(.emr-filter-active){background:#f1f5f9e6;border-color:#2563eb;color:#2563eb;transform:translateY(-1px)}.emr-main-content{display:grid;grid-template-columns:2fr 1fr;gap:28px}.emr-left-panel{background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 12px 40px #2563eb1a;overflow:hidden;border:1px solid rgba(255,255,255,.3)}.emr-right-panel{background:linear-gradient(135deg,#fffffff2,#f8fafce6);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border-radius:24px;box-shadow:0 20px 50px #2563eb26,0 0 0 1px #fff6,inset 0 1px #ffffffb3;padding:0;max-height:85vh;overflow:hidden;border:1px solid rgba(37,99,235,.1);position:relative}.emr-right-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2563eb,#1d4ed8,#1e40af);border-radius:24px 24px 0 0}.emr-patient-card{background:linear-gradient(135deg,#2563eb0d,#1d4ed80d);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:0;padding:32px;margin:0;border:none;box-shadow:none;border-bottom:1px solid rgba(37,99,235,.1);position:relative;overflow:hidden}.emr-patient-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 20%,rgba(37,99,235,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(29,78,216,.1) 0%,transparent 50%);pointer-events:none;z-index:-1}.emr-patient-card-title{font-size:1.6rem;font-weight:900;color:#1e293b;margin-bottom:24px;background:linear-gradient(135deg,#2563eb,#1d4ed8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;display:flex;align-items:center;gap:12px}.emr-patient-card-title:before{content:"👤";font-size:1.2rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.emr-patient-info{display:flex;flex-direction:column;gap:0}.emr-info-row{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-radius:12px;margin-bottom:8px;background:#fff9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);transition:all .3s ease}.emr-info-row:hover{background:#fffc;transform:translate(4px);box-shadow:0 4px 15px #2563eb1a}.emr-info-label{font-weight:700;color:#2563eb;font-size:.95rem;display:flex;align-items:center;gap:8px;min-width:120px}.emr-info-label:before{content:"•";color:#1d4ed8;font-weight:900;font-size:1.2rem}.emr-info-value{font-weight:600;color:#1e293b;font-size:.95rem;text-align:right;flex:1}.emr-billing-section{margin:0;border-top:2px solid rgba(37,99,235,.1);padding:32px;background:linear-gradient(135deg,#10b9810d,#0596690d)}.emr-billing-title{font-size:1.3rem;font-weight:800;color:#1e293b;margin-bottom:20px;display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#10b981,#059669);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.emr-billing-title:before{content:"💰";font-size:1.1rem}.emr-bills-list{max-height:250px;overflow-y:auto;padding-right:8px}.emr-bill-item{border:2px solid rgba(16,185,129,.2)!important;padding:20px!important;margin:12px 0!important;border-radius:16px!important;background:linear-gradient(135deg,#ffffffe6,#f8fafccc)!important;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);transition:all .3s ease;position:relative;overflow:hidden}.emr-print-btn{background:linear-gradient(135deg,#059669,#047857)!important;color:#fff!important;border:none!important;padding:10px 18px!important;border-radius:10px!important;cursor:pointer!important;font-size:13px!important;font-weight:700!important;transition:all .3s ease!important;box-shadow:0 4px 15px #05966966!important;text-transform:uppercase!important;letter-spacing:.5px!important;min-width:70px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;position:relative!important;overflow:hidden!important}.emr-print-btn:hover{transform:translateY(-2px) scale(1.05)!important;box-shadow:0 8px 25px #05966999!important;background:linear-gradient(135deg,#047857,#065f46)!important}.emr-print-btn:before{content:"🖨️"!important;margin-right:6px!important;font-size:12px!important}.emr-bill-item{border:2px solid rgba(16,185,129,.2)!important;padding:20px!important;margin:12px 0!important;border-radius:16px!important;background:linear-gradient(135deg,#ffffffe6,#f8fafccc)!important;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);transition:all .3s ease;position:relative;overflow:hidden;min-height:120px!important}.emr-bill-item:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(135deg,#10b981,#059669)}.emr-bill-item:hover{transform:translateY(-4px);box-shadow:0 12px 35px #10b98133;border-color:#10b981!important}.emr-bill-item>div{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:15px!important}.emr-bill-item>div>div:first-child{flex:1!important;min-width:0!important}.emr-bill-item>div>div:first-child>div{margin-bottom:8px!important;font-size:14px!important;color:#374151!important}.emr-bill-item>div>div:first-child>div strong{color:#1f2937!important;font-weight:600!important}.emr-bills-list{max-height:300px!important;overflow-y:auto;padding-right:8px;margin-top:15px!important}.emr-billing-section p[style*=italic]{background:#9ca3af1a!important;padding:20px!important;border-radius:12px!important;border:1px dashed #9ca3af!important;text-align:center!important;font-style:italic!important;color:#6b7280!important}.emr-open-billing-btn,.emr-checkin-button{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:16px 24px;border-radius:16px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;width:100%;margin-top:20px;box-shadow:0 8px 25px #10b9814d;position:relative;overflow:hidden}.emr-open-billing-btn:before,.emr-checkin-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.emr-open-billing-btn:hover:before,.emr-checkin-button:hover:before{left:100%}.emr-open-billing-btn:hover,.emr-checkin-button:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 15px 40px #10b98166}.emr-checkout-button{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important;border:none;padding:16px 24px;border-radius:16px;cursor:pointer;margin-top:20px;font-weight:700;width:100%;font-size:1.1rem;transition:all .3s ease;box-shadow:0 8px 25px #ef44444d}.emr-checkout-button:hover{transform:translateY(-3px) scale(1.02)!important;box-shadow:0 15px 40px #ef444466!important}.emr-arrival-badge{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#059669;padding:16px 20px;border-radius:16px;font-size:1.1rem;font-weight:700;text-align:center;margin-top:20px;border:2px solid #4ade80;box-shadow:0 8px 25px #05966933;position:relative;overflow:hidden}.emr-arrival-badge:before{content:"✅";position:absolute;top:-5px;right:-5px;font-size:1.2rem}.emr-checkout-badge{padding:16px 20px;background:linear-gradient(135deg,#fecaca,#f87171);color:#7f1d1d;border:2px solid #f87171;border-radius:16px;text-align:center;font-weight:700;margin-top:20px;box-shadow:0 8px 25px #ef444433}.emr-patient-actions{display:flex;flex-direction:column;align-items:center;gap:16px}.emr-progress-flow{margin:0;padding:32px;background:linear-gradient(135deg,#2563eb0d,#1d4ed80d);border-top:2px solid rgba(37,99,235,.1);overflow-y:auto;max-height:200px}.emr-progress-title{font-size:1.3rem;font-weight:800;color:#1e293b;margin-bottom:20px;display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#2563eb,#1d4ed8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.emr-progress-title:before{content:"📊";font-size:1.1rem}.emr-flow-steps{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center}.emr-flow-step{background:#fffc;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:16px 20px;border-radius:16px;text-align:center;min-width:100px;border:2px solid rgba(37,99,235,.2);transition:all .3s ease;position:relative}.emr-flow-step.emr-flow-completed{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#10b981;transform:translateY(-4px);box-shadow:0 8px 25px #10b9814d}.emr-flow-step.emr-flow-completed:after{content:"✓";position:absolute;top:-8px;right:-8px;background:#10b981;color:#fff;border-radius:50%;width:20px;height:20px;font-size:12px;display:flex;align-items:center;justify-content:center;font-weight:700}.emr-step-title{font-size:.85rem;font-weight:800;color:#2563eb;text-transform:uppercase;letter-spacing:.5px}.emr-step-status{font-size:.75rem;color:#64748b;margin-top:6px;font-weight:600}.emr-flow-step.emr-flow-completed .emr-step-title{color:#059669}.emr-flow-step.emr-flow-completed .emr-step-status{color:#047857;font-weight:700}.emr-flow-arrow{color:#2563eb;font-weight:800;font-size:1.5rem;opacity:.7}.emr-patient-details{margin:0;padding:32px;background:linear-gradient(135deg,#06b6d40d,#0ea5e90d);border-top:2px solid rgba(6,182,212,.1);max-height:300px;overflow-y:auto}.emr-details-title{font-size:1.3rem;font-weight:800;color:#1e293b;margin-bottom:20px;display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#06b6d4,#0ea5e9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.emr-details-title:before{content:"📋";font-size:1.1rem}.emr-right-panel{overflow-y:auto}.emr-patient-card.emr-card-empty{text-align:center;color:#64748b;padding:60px 32px;background:linear-gradient(135deg,#f8fafccc,#f1f5f999);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.emr-patient-card.emr-card-empty:before{content:"👥";font-size:4rem;margin-bottom:20px;opacity:.5}.emr-patient-card.emr-card-empty h3{font-size:1.5rem;margin-bottom:16px;color:#475569;font-weight:700}.emr-patient-card.emr-card-empty p{font-size:1.1rem;margin:0;opacity:.8}.emr-appointment-table{width:100%;border-collapse:collapse;font-size:.95rem}.emr-appointment-table thead{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:2px solid rgba(37,99,235,.1)}.emr-appointment-table th{padding:20px 16px;text-align:left;font-weight:800;color:#1e293b;font-size:.9rem;text-transform:uppercase;letter-spacing:1px}.emr-appointment-table td{padding:16px;border-bottom:1px solid rgba(241,245,249,.8)}.emr-appointment-row{cursor:pointer;transition:all .3s ease;background:#ffffff80}.emr-appointment-row:hover{background:#f8fafccc;transform:translate(4px)}.emr-appointment-row.emr-row-selected{background:linear-gradient(135deg,#2563eb1a,#1d4ed826);border-left:6px solid #2563eb;box-shadow:inset 0 0 20px #2563eb1a}.emr-patient-name{font-weight:700;color:#1e293b;font-size:1rem}.emr-loading-cell,.emr-empty-cell{text-align:center;padding:48px 24px;color:#64748b;font-style:italic;background:#f8fafc80}.emr-status-badge{padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:1px solid}.emr-status-badge.scheduled{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8;border-color:#93c5fd}.emr-status-badge.in-progress{background:linear-gradient(135deg,#fef3c7,#fed7aa);color:#d97706;border-color:#fbbf24}.emr-type-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:1px solid;transition:all .3s ease}.emr-type-badge.emr-appointment{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1976d2;border-color:#90caf9}.emr-type-badge.emr-walk-in{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#f57c00;border-color:#ffb74d}.emr-arrival-status.emr-arrived{color:#059669;font-weight:700}.emr-arrival-status.emr-not-arrived{color:#dc2626;font-weight:700}.emr-patient-actions-row{background:#f8fafcb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.emr-patient-actions-row td{padding:16px}.emr-patient-action-buttons{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-start}.emr-action-btn{font-size:.8rem;padding:8px 16px;border-radius:12px;min-width:70px;justify-content:center;font-weight:600;border:2px solid;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.emr-action-btn:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 8px 25px #00000026}.emr-action-btn.emr-primary-action-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:transparent;box-shadow:0 6px 20px #2563eb4d}.emr-action-btn.emr-primary-action-btn:hover{box-shadow:0 10px 30px #2563eb66}.emr-action-btn.emr-ar-btn,.emr-action-btn.emr-optom-btn,.emr-action-btn.emr-doctor-btn,.emr-action-btn.emr-surgery-btn,.emr-action-btn.emr-advice-btn{background:linear-gradient(135deg,#f87171,#ef4444);color:#fff;border-color:transparent;box-shadow:0 6px 20px #f871714d}.emr-action-btn.emr-ar-btn:hover,.emr-action-btn.emr-optom-btn:hover,.emr-action-btn.emr-doctor-btn:hover,.emr-action-btn.emr-surgery-btn:hover,.emr-action-btn.emr-advice-btn:hover{box-shadow:0 10px 30px #f8717166}.emr-action-btn.emr-btn-completed{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 6px 20px #10b9814d!important;position:relative}.emr-action-btn.emr-btn-completed:hover{box-shadow:0 10px 30px #10b98166!important}.emr-action-btn.emr-btn-completed:after{content:"✓";position:absolute;top:-2px;right:-2px;background:#047857;color:#fff;border-radius:50%;width:18px;height:18px;font-size:12px;display:flex;align-items:center;justify-content:center;font-weight:700}.emr-action-btn.emr-investigation-btn,.emr-action-btn.emr-lab-btn{background:#f8fafccc;color:#64748b;border-color:#e2e8f0cc}.emr-investigation-btn.emr-status-pending,.emr-lab-btn.emr-status-pending{background:linear-gradient(135deg,#fef3c7,#fed7aa);color:#d97706;border-color:#fbbf24}.emr-investigation-btn.emr-status-partial,.emr-lab-btn.emr-status-partial{background:linear-gradient(135deg,#fed7aa,#fdba74);color:#ea580c;border-color:#fb923c}.emr-investigation-btn.emr-status-complete,.emr-lab-btn.emr-status-complete{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important;border-color:transparent!important}@media (max-width: 768px){.emr-wrapper{padding:12px}.emr-main-container{padding:20px 16px;border-radius:16px}.emr-main-content{grid-template-columns:1fr;gap:20px}.emr-main-counters{gap:12px}.emr-counter-btn{font-size:.9rem;padding:12px 16px}.emr-patient-action-buttons{gap:8px}.emr-action-btn{font-size:.75rem;padding:6px 12px;min-width:60px}.emr-flow-steps{gap:8px}.emr-flow-arrow{font-size:1.2rem}.emr-main-date-selector{flex-direction:column;align-items:flex-start;gap:12px}.emr-date-navigation{flex-wrap:wrap}}.emr-right-panel::-webkit-scrollbar{width:8px}.emr-right-panel::-webkit-scrollbar-track{background:#f1f5f94d;border-radius:8px}.emr-right-panel::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:8px;box-shadow:inset 0 0 6px #0000001a}.emr-right-panel::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af)}.emr-bills-list::-webkit-scrollbar{width:6px}.emr-bills-list::-webkit-scrollbar-track{background:#f1f5f94d;border-radius:3px}.emr-bills-list::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#10b981,#059669);border-radius:3px}.emr-patient-details::-webkit-scrollbar{width:6px}.emr-patient-details::-webkit- .step-indicator{background:#f8f9fa;padding:15px;margin-bottom:20px;border-radius:8px;border-left:4px solid #007bff}.step-indicator h4{margin:0 0 10px;color:#495057;font-size:14px}.steps{display:flex;justify-content:space-between;align-items:center;position:relative}.step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.step:not(:last-child):after{content:"";position:absolute;top:15px;left:50%;width:100%;height:2px;background:#dee2e6;z-index:1}.step.completed:not(:last-child):after{background:#28a745}.step-number{width:30px;height:30px;border-radius:50%;background:#dee2e6;color:#6c757d;display:flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:5px;position:relative;z-index:2}.step.active .step-number{background:#007bff;color:#fff}.step.completed .step-number{background:#28a745;color:#fff}.step-name{font-size:12px;color:#6c757d;text-align:center}.step.active .step-name{color:#007bff;font-weight:700}.step.completed .step-name{color:#28a745}.visual-acuity-component{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.va-section-header{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;padding:15px 20px;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;align-items:center}.va-section-title{font-size:16px;font-weight:600;letter-spacing:.5px}.va-header-buttons{display:flex;gap:10px}.va-copy-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:6px 12px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease}.va-copy-btn:hover{background:#ffffff4d;border-color:#ffffff80}.va-subsection{padding:20px;border-bottom:1px solid #eee}.va-subsection:last-child{border-bottom:none}.va-subsection-title{font-size:14px;font-weight:600;color:#495057;margin-bottom:15px;text-transform:uppercase;letter-spacing:.5px;padding-bottom:5px;border-bottom:2px solid #e9ecef}.va-vision-group{margin-bottom:15px}.va-vision-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:6px;padding:10px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.va-vision-btn{background:#fff;color:#495057;border:1px solid #ced4da;padding:8px 4px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;min-height:36px;display:flex;align-items:center;justify-content:center}.va-vision-btn:hover{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-color:#2196f3;color:#1565c0;transform:translateY(-1px)}.va-vision-btn.active{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;border-color:#17a2b8;font-weight:600;transform:scale(1.02);box-shadow:0 2px 4px #17a2b84d}.va-vision-btn-special{background:linear-gradient(135deg,#fd7e14,#e8690a);color:#fff;border:1px solid #fd7e14;padding:8px 4px;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;min-height:36px;display:flex;align-items:center;justify-content:center}.va-vision-btn-special:hover{background:linear-gradient(135deg,#e8690a,#d25100);transform:translateY(-1px);box-shadow:0 2px 4px #fd7e144d}.va-pr-section{margin-top:20px;padding:15px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.va-pr-title{font-weight:600;color:#495057;margin-bottom:12px;font-size:13px;text-transform:uppercase;letter-spacing:.3px}.va-pr-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.va-pr-item{display:flex;flex-direction:column;align-items:center;gap:6px}.va-pr-label{font-weight:600;font-size:12px;color:#495057;text-transform:uppercase}.va-pr-select{width:100%;border:1px solid #ced4da;border-radius:4px;padding:6px 4px;font-size:11px;background:#fff;transition:all .2s ease}.va-pr-select:focus{outline:none;border-color:#17a2b8;box-shadow:0 0 0 2px #17a2b840}.va-comments-section{padding:20px;background:#f8f9fa;border-top:1px solid #e9ecef}.va-comments-label{font-weight:600;font-size:12px;color:#495057;margin-bottom:8px;text-transform:uppercase;letter-spacing:.3px}.va-comments-textarea{width:100%;min-height:80px;border:1px solid #ced4da;border-radius:4px;padding:10px;font-size:13px;font-family:inherit;resize:vertical;transition:all .2s ease;background:#fff}.va-comments-textarea:focus{outline:none;border-color:#17a2b8;box-shadow:0 0 0 2px #17a2b840}.va-comments-textarea::placeholder{color:#6c757d;opacity:.7}@media (max-width: 768px){.va-vision-buttons{grid-template-columns:repeat(auto-fit,minmax(50px,1fr));gap:4px}.va-vision-btn,.va-vision-btn-special{padding:6px 2px;font-size:11px;min-height:32px}.va-pr-grid{grid-template-columns:repeat(2,1fr);gap:8px}.va-subsection{padding:15px}}@media (max-width: 480px){.va-vision-buttons{grid-template-columns:repeat(4,1fr)}.va-section-header{flex-direction:column;gap:10px;text-align:center}.va-header-buttons{width:100%;justify-content:center}.va-pr-grid{grid-template-columns:1fr}.va-pr-item{flex-direction:row;justify-content:space-between}.va-pr-select{width:80px}}.refraction-component{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:16px;overflow:hidden;transition:all .3s ease;border:1px solid #e2e8f0}.refraction-component:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.refraction-section-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden}.refraction-section-header:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shine 3s infinite}@keyframes shine{0%{left:-100%}50%{left:-100%}to{left:100%}}.refraction-section-title{font-size:16px;font-weight:700;letter-spacing:1px;text-shadow:0 1px 2px rgba(0,0,0,.3)}.refraction-header-buttons{display:flex;gap:10px;z-index:1}.refraction-copy-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:6px 14px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.3px}.refraction-copy-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.refraction-subsection{padding:20px;border-bottom:1px solid #f1f1f1}.refraction-subsection:last-child{border-bottom:none}.refraction-subsection:nth-child(2n){background:#fafbfc}.refraction-subsection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #e9ecef}.refraction-subsection-title{font-size:14px;font-weight:700;color:#2d3748;text-transform:uppercase;letter-spacing:.5px;position:relative;padding-left:12px}.refraction-subsection-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:16px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:2px}.refraction-fill-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.3px;box-shadow:0 2px 4px #28a7454d}.refraction-fill-btn:hover{background:linear-gradient(135deg,#20c997,#17a2b8);transform:translateY(-1px);box-shadow:0 3px 8px #28a74566}.refraction-table{border:1px solid #dee2e6;border-radius:8px;overflow:hidden;margin-bottom:16px;background:#fff;box-shadow:0 1px 3px #0000001a}.refraction-table-header{background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:grid;grid-template-columns:80px repeat(4,1fr);border-bottom:2px solid #dee2e6}.refraction-subsection:first-of-type .refraction-table-header{grid-template-columns:80px repeat(3,1fr)}.refraction-subsection:first-of-type .refraction-row{grid-template-columns:80px repeat(3,1fr)}.refraction-header-cell{padding:12px 8px;font-weight:700;font-size:12px;text-align:center;color:#495057;border-right:1px solid #dee2e6;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.refraction-header-cell:last-child{border-right:none}.refraction-table-body{background:#fff}.refraction-row{display:grid;grid-template-columns:80px repeat(4,1fr);border-bottom:1px solid #f1f3f4;transition:all .2s ease}.refraction-row:last-child{border-bottom:none}.refraction-row:hover{background:linear-gradient(135deg,#f8f9ff,#fff)}.refraction-cell{display:flex;align-items:center;justify-content:center;padding:8px;border-right:1px solid #f1f3f4;background:#fff;transition:all .2s ease}.refraction-cell:last-child{border-right:none}.refraction-cell:first-child{font-weight:700;background:linear-gradient(135deg,#f8f9fa,#fff);color:#495057;font-size:11px;justify-content:flex-start;padding-left:12px;text-transform:uppercase;letter-spacing:.3px;border-right:2px solid #dee2e6}.refraction-cell:first-child sup{color:#dc3545;font-weight:700}.refraction-input{width:100%;border:1px solid #ced4da;border-radius:4px;padding:6px 8px;font-size:13px;text-align:center;transition:all .2s ease;background:#fff;color:#495057;font-weight:500}.refraction-input:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40;background:#fff}.refraction-input:hover{border-color:#adb5bd}.refraction-input:not(:placeholder-shown){background:linear-gradient(135deg,#d4edda,#fff);border-color:#28a745;color:#155724;font-weight:600}.refraction-select{width:100%;border:1px solid #ced4da;border-radius:4px;padding:8px 12px;font-size:13px;background:#fff;color:#495057;cursor:pointer;transition:all .2s ease}.refraction-select:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.refraction-select:hover{border-color:#adb5bd}.refraction-comments,.refraction-drug{margin-top:16px;padding:16px;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:8px;border:1px solid #dee2e6}.refraction-comments label,.refraction-drug label{display:block;font-weight:600;font-size:12px;color:#495057;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.refraction-textarea{width:100%;min-height:80px;border:1px solid #ced4da;border-radius:6px;padding:12px;font-size:13px;font-family:inherit;resize:vertical;transition:all .2s ease;background:#fff;color:#495057;line-height:1.4}.refraction-textarea:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.refraction-textarea:hover{border-color:#adb5bd}.refraction-textarea::placeholder{color:#6c757d;font-style:italic}@media (max-width: 1024px){.refraction-table-header,.refraction-row{grid-template-columns:70px repeat(4,1fr)}.refraction-subsection:first-of-type .refraction-table-header,.refraction-subsection:first-of-type .refraction-row{grid-template-columns:70px repeat(3,1fr)}.refraction-header-cell,.refraction-cell{padding:6px;font-size:11px}.refraction-input{padding:4px 6px;font-size:12px}}@media (max-width: 768px){.refraction-section-header{padding:12px 16px;flex-direction:column;gap:8px}.refraction-subsection{padding:16px}.refraction-subsection-header{flex-direction:column;gap:8px;align-items:flex-start}.refraction-fill-btn{width:100%}.refraction-table-header,.refraction-row{grid-template-columns:60px repeat(4,1fr)}.refraction-subsection:first-of-type .refraction-table-header,.refraction-subsection:first-of-type .refraction-row{grid-template-columns:60px repeat(3,1fr)}.refraction-header-cell,.refraction-cell{padding:4px;font-size:10px}.refraction-input,.refraction-select{padding:4px;font-size:11px}}@media (max-width: 480px){.refraction-table-header,.refraction-row{grid-template-columns:50px repeat(4,1fr)}.refraction-subsection:first-of-type .refraction-table-header,.refraction-subsection:first-of-type .refraction-row{grid-template-columns:50px repeat(3,1fr)}.refraction-header-cell,.refraction-cell{padding:3px;font-size:9px}.refraction-cell:first-child{padding-left:6px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.refraction-component{animation:fadeInUp .5s ease-out}.refraction-subsection{animation:fadeInUp .5s ease-out;animation-fill-mode:both}.refraction-subsection:nth-child(2){animation-delay:.1s}.refraction-subsection:nth-child(3){animation-delay:.2s}.refraction-subsection:nth-child(4){animation-delay:.3s}.refraction-input:focus,.refraction-select:focus,.refraction-textarea:focus{position:relative;z-index:10}@media (prefers-reduced-motion: reduce){.refraction-component,.refraction-subsection,.refraction-fill-btn,.refraction-input,.refraction-select,.refraction-textarea{animation:none;transition:none}}@media print{.refraction-fill-btn,.refraction-copy-btn{display:none}.refraction-component{box-shadow:none;border:1px solid #000;break-inside:avoid}.refraction-input,.refraction-select,.refraction-textarea{border:1px solid #000;background:#fff!important}}.fill-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}.fill-modal{background:#fff;border-radius:16px;width:90%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease;overflow:hidden}.fill-modal-header{padding:24px 28px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.fill-modal-header h3{margin:0 0 20px;font-size:24px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.2)}.fill-step-navigator{margin:16px 0 20px;padding:16px;background:#ffffff26;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fill-step-label{font-size:13px;font-weight:600;color:#ffffffe6;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.fill-step-buttons{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.fill-step-btn{position:relative;min-width:44px;height:44px;border:2px solid rgba(255,255,255,.4);background:#fff3;color:#fff;border-radius:50%;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fill-step-btn:hover:not(:disabled){border-color:#ffffffe6;background:#ffffff4d;transform:scale(1.15);box-shadow:0 4px 12px #0003}.fill-step-btn.active{background:gold;color:#333;border-color:gold;box-shadow:0 0 0 4px #ffd7004d;animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 4px #ffd7004d}50%{box-shadow:0 0 0 8px #ffd7001a}}.fill-step-btn.filled{background:#4caf50;color:#fff;border-color:#4caf50}.fill-step-btn.filled.active{background:#ff9800;border-color:#ff9800}.fill-step-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.fill-check-icon{position:absolute;top:-2px;right:-2px;background:#fff;color:#4caf50;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;box-shadow:0 2px 4px #0003}.fill-progress{margin-top:12px}.fill-progress-bar{width:100%;height:8px;background:#fff3;border-radius:10px;overflow:hidden;margin-bottom:8px}.fill-progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:10px;transition:width .4s ease;box-shadow:0 0 10px #4caf5080}.fill-progress-text{font-size:13px;color:#fffffff2;font-weight:600;display:flex;justify-content:space-between;align-items:center}.fill-progress-count{font-size:12px;color:#fffc;font-weight:500}.fill-modal-content{padding:28px;overflow-y:auto;flex:1;background:#f8f9fa}.fill-modal-content::-webkit-scrollbar{width:8px}.fill-modal-content::-webkit-scrollbar-track{background:#e0e0e0;border-radius:10px}.fill-modal-content::-webkit-scrollbar-thumb{background:#9e9e9e;border-radius:10px}.fill-modal-content::-webkit-scrollbar-thumb:hover{background:#757575}.fill-modal-table{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #00000014;margin-bottom:12px}.fill-modal-table-header{background:linear-gradient(135deg,#667eea,#764ba2);padding:16px;text-align:center}.fill-header-cell{color:#fff;font-weight:700;font-size:18px;text-transform:uppercase;letter-spacing:1px}.fill-modal-table-body{display:table;width:100%;border-collapse:collapse}.fill-row{display:table-row}.fill-row:nth-child(2n){background:#f8f9fa}.fill-cell{display:table-cell;padding:14px 16px;text-align:center;border:1px solid #e0e0e0;font-size:14px;font-weight:500;color:#333;vertical-align:middle;transition:all .2s ease}.fill-cell-header{background:#e8eaf6;font-weight:700;color:#5e35b1;text-transform:uppercase;font-size:13px;letter-spacing:.5px}.fill-cell-row-header{background:#f3e5f5;font-weight:700;color:#7b1fa2;text-align:left;padding-left:20px}.fill-cell-clickable{cursor:pointer;position:relative}.fill-cell-clickable:after{content:"";position:absolute;inset:0;border:2px solid transparent;transition:all .2s ease;pointer-events:none}.fill-cell-clickable:hover:after{border-color:#2196f3;background:#2196f30d}.fill-cell-clickable:hover{transform:scale(1.02);z-index:1}.fill-cell-filled{background:#c8e6c9!important;font-weight:700;color:#2e7d32;position:relative}.fill-cell-filled:before{content:"✓";position:absolute;top:4px;right:4px;font-size:10px;color:#4caf50;background:#fff;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000001a}.fill-cell-active{background:#fff3cd!important;border:3px solid #ffc107!important;font-weight:700;color:#f57c00;box-shadow:0 0 0 4px #ffc10733,0 4px 12px #ffc1074d;transform:scale(1.05);z-index:2;animation:activeCell .5s ease}@keyframes activeCell{0%,to{box-shadow:0 0 0 4px #ffc10733,0 4px 12px #ffc1074d}50%{box-shadow:0 0 0 8px #ffc1071a,0 6px 16px #ffc10766}}.fill-cell-active:hover:after{border-color:#ff9800}.fill-table-hint{text-align:center;padding:12px;background:#e3f2fd;color:#1976d2;font-size:13px;border-radius:0 0 12px 12px;margin-top:-1px}.fill-table-hint strong{font-weight:700}.fill-modal-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin:24px 0 20px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014}.fill-control-btn{padding:10px 24px;border:2px solid #e0e0e0;background:#fff;border-radius:8px;font-size:15px;font-weight:700;color:#666;cursor:default}.fill-control-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea;box-shadow:0 4px 12px #667eea4d}.fill-polarity-controls{display:flex;gap:12px;background:#f5f5f5;padding:6px;border-radius:10px}.fill-polarity-btn{padding:10px 20px;border:2px solid #e0e0e0;background:#fff;border-radius:8px;font-size:14px;font-weight:700;color:#666;cursor:pointer;transition:all .3s ease;min-width:90px}.fill-polarity-btn:hover:not(:disabled){border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.fill-polarity-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea;box-shadow:0 4px 12px #667eea4d}.fill-polarity-btn:disabled{opacity:.4;cursor:not-allowed}.fill-modal-section-title{text-align:center;font-size:18px;font-weight:700;color:#333;margin:24px 0 20px;padding:16px;background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;display:flex;align-items:center;justify-content:center;gap:10px}.fill-field-label{color:#667eea}.fill-field-type{color:#999;font-size:14px;font-weight:500}.fill-field-polarity{color:#ff9800;font-size:20px;font-weight:700}.fill-value-buttons{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:12px;margin:24px 0}.fill-value-btn{padding:14px 8px;border:2px solid #e0e0e0;background:#fff;border-radius:10px;font-size:15px;font-weight:600;color:#333;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #0000000d}.fill-value-btn:hover:not(:disabled){border-color:#667eea;background:#f5f7ff;transform:translateY(-3px);box-shadow:0 6px 16px #667eea33}.fill-value-btn:active:not(:disabled){transform:translateY(-1px)}.fill-value-btn.selected{background:linear-gradient(135deg,#4caf50,#8bc34a);color:#fff;border-color:#4caf50;box-shadow:0 6px 16px #4caf5066;transform:scale(1.05)}.fill-value-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.fill-transition-message{text-align:center;padding:20px;background:#e8f5e9;color:#2e7d32;border-radius:10px;font-weight:600;margin-top:20px;display:flex;align-items:center;justify-content:center;gap:12px;box-shadow:0 4px 12px #4caf5033}.fill-spinner{width:20px;height:20px;border:3px solid rgba(46,125,50,.3);border-top-color:#2e7d32;border-radius:50%;animation:spin .8s linear infinite}.fill-modal-actions{padding:20px 28px;background:#fff;border-top:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.fill-modal-btn{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;box-shadow:0 4px 12px #0000001a}.fill-modal-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #00000026}.fill-modal-btn:active:not(:disabled){transform:translateY(0)}.fill-modal-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.fill-cancel-btn{background:#f44336;color:#fff}.fill-cancel-btn:hover:not(:disabled){background:#d32f2f}.fill-previous-btn{background:#9e9e9e;color:#fff}.fill-previous-btn:hover:not(:disabled){background:#757575}.fill-skip-btn{background:#2196f3;color:#fff}.fill-skip-btn:hover:not(:disabled){background:#1976d2}.fill-keyboard-hint{font-size:12px;color:#999;font-style:italic;margin-left:auto}@media (max-width: 768px){.fill-modal{width:95%;max-height:95vh}.fill-modal-header{padding:20px}.fill-modal-header h3{font-size:20px}.fill-step-buttons{gap:8px}.fill-step-btn{min-width:38px;height:38px;font-size:13px}.fill-modal-content{padding:20px}.fill-value-buttons{grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:10px}.fill-value-btn{padding:12px 6px;font-size:14px}.fill-modal-actions{padding:16px 20px;flex-direction:column;gap:10px}.fill-modal-btn{width:100%;justify-content:center}.fill-keyboard-hint{display:none}.fill-cell{padding:10px 8px;font-size:13px}}@media (max-width: 480px){.fill-value-buttons{grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:8px}.fill-step-navigator{padding:12px}.fill-step-buttons{gap:6px}.fill-step-btn{min-width:34px;height:34px;font-size:12px}}.ar-container{width:100%;max-width:1400px;margin:0 auto;padding:20px;background:linear-gradient(135deg,#f0f4f8,#e2e8f0);min-height:100vh;font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.optum-container{max-width:1600px;margin:0 auto;padding:20px;background:linear-gradient(135deg,#f9f9f9,#f0f4f8);min-height:100vh;font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.ar-patient-header,.optum-patient-header{background:linear-gradient(135deg,#fff,#f8f9ff);border:1px solid #e2e8f0;border-radius:12px;padding:24px;margin-bottom:20px;box-shadow:0 4px 12px #00000014;border-left:4px solid #6c3fb5;transition:box-shadow .3s ease}.ar-patient-header:hover,.optum-patient-header:hover{box-shadow:0 6px 16px #0000001f}.patient-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.patient-field{display:flex;flex-direction:column;gap:6px;padding:12px;background:#fff;border-radius:8px;border:1px solid #e9ecef;transition:all .3s ease}.patient-field:hover{border-color:#6c3fb5;box-shadow:0 2px 8px #6c3fb51a}.patient-field label{font-weight:600;color:#666;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.patient-field span{font-weight:500;color:#333;font-size:14px}.status-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;text-align:center}.status-badge.active,.status-badge.queue{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724;border:1px solid #b1d4b4}.status-badge.pending{background:linear-gradient(135deg,#fff3cd,#ffeaa7);color:#856404;border:1px solid #ffc107}.status-badge.completed{background:linear-gradient(135deg,#cce5ff,#b8daff);color:#004085;border:1px solid #9fcdff}.status-badge.cancelled{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24;border:1px solid #f1b0b7}.ar-main-headers,.optum-main-headers{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.ar-eye-header,.optum-eye-header{padding:16px;text-align:center;border-radius:10px;box-shadow:0 3px 10px #00000026;position:sticky;top:0;z-index:50;transition:all .3s ease}.ar-eye-header:hover,.optum-eye-header:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0003}.right-header{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;border-left:4px solid #0288d1}.optum-eye-header.right-header{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1976d2;border-left:4px solid #1976d2}.left-header{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff;border-left:4px solid #00bfa5}.optum-eye-header.left-header{background:linear-gradient(135deg,#f3e5f5,#e1bee7);color:#7b1fa2;border-left:4px solid #7b1fa2}.ar-eye-header h2,.optum-eye-header h2{margin:0;font-size:20px;font-weight:700;letter-spacing:1px}.ar-eye-header h2{text-shadow:0 1px 3px rgba(0,0,0,.3)}.ar-main-content,.optum-main-content{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px;align-items:start}.ar-eye-column,.optum-eye-column{display:flex;flex-direction:column;gap:16px}.ar-loading,.optum-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;gap:20px}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #6c3fb5;border-radius:50%;animation:spin 1s linear infinite}.ar-loading p,.optum-loading p{color:#666;font-size:16px;font-weight:500;margin:0}.ar-form-actions{display:flex;justify-content:center;gap:16px;margin-top:30px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.ar-back-btn,.ar-reset-btn,.ar-submit-btn{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:120px;text-transform:uppercase;letter-spacing:.3px}.ar-back-btn{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff;box-shadow:0 2px 4px #6c757d4d}.ar-back-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a6268,#495057);transform:translateY(-1px);box-shadow:0 3px 8px #6c757d66}.ar-reset-btn{background:linear-gradient(135deg,#fd7e14,#e8690a);color:#fff;box-shadow:0 2px 4px #fd7e144d}.ar-reset-btn:hover:not(:disabled){background:linear-gradient(135deg,#e8690a,#d25100);transform:translateY(-1px);box-shadow:0 3px 8px #fd7e1466}.ar-submit-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;box-shadow:0 2px 4px #28a7454d}.ar-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#20c997,#17a2b8);transform:translateY(-1px);box-shadow:0 3px 8px #28a74566}.ar-back-btn:disabled,.ar-reset-btn:disabled,.ar-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.optum-form-actions{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;background:linear-gradient(135deg,#fff,#f8f9ff);border-top:3px solid #6c3fb5;border-radius:0 0 12px 12px;margin-top:30px;box-shadow:0 -4px 12px #00000014;position:sticky;bottom:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.optum-actions-left{display:flex;gap:12px}.optum-actions-right{display:flex;gap:16px}.optum-back-btn{padding:12px 28px;background:#fff;color:#555;border:2px solid #ddd;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 2px 4px #0000001a;min-width:160px}.optum-back-btn:hover:not(:disabled){background:#f5f5f5;border-color:#6c3fb5;color:#6c3fb5;transform:translate(-4px);box-shadow:0 4px 12px #6c3fb533}.optum-back-btn:active:not(:disabled){transform:translate(-2px);box-shadow:0 2px 6px #6c3fb533}.optum-back-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.optum-reset-btn{padding:12px 28px;background:linear-gradient(135deg,#ff9800,#ff5722);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 3px 8px #ff57224d;min-width:160px;text-transform:none}.optum-reset-btn:hover:not(:disabled){background:linear-gradient(135deg,#fb8c00,#f4511e);transform:translateY(-2px);box-shadow:0 6px 16px #ff572266}.optum-reset-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 3px 10px #ff572266}.optum-reset-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.optum-submit-btn{padding:14px 36px;background:linear-gradient(135deg,#6c3fb5,#8b5fd6);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 4px 16px #6c3fb566;text-transform:none;letter-spacing:.3px;min-width:220px;position:relative;overflow:hidden}.optum-submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.optum-submit-btn:hover:not(:disabled):before{left:100%}.optum-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a2fa0,#7a4ec6);transform:translateY(-3px);box-shadow:0 8px 24px #6c3fb580}.optum-submit-btn:active:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #6c3fb580}.optum-submit-btn:disabled{opacity:.75;cursor:not-allowed;background:linear-gradient(135deg,#999,#777);animation:pulse-submit 2s ease-in-out infinite}@keyframes pulse-submit{0%,to{opacity:.75;box-shadow:0 4px 16px #6c3fb533}50%{opacity:.9;box-shadow:0 4px 20px #6c3fb54d}}@media (max-width: 1200px){.ar-container,.optum-container{padding:16px}.patient-info-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.ar-main-content,.optum-main-content{gap:16px}}@media (max-width: 992px){.ar-main-headers,.optum-main-headers{gap:16px}.ar-eye-header h2,.optum-eye-header h2{font-size:18px}.optum-form-actions{padding:20px 24px}.optum-back-btn,.optum-reset-btn{min-width:140px;padding:11px 24px;font-size:14px}.optum-submit-btn{min-width:180px;padding:12px 30px;font-size:15px}}@media (max-width: 768px){.ar-container,.optum-container{padding:12px}.ar-patient-header,.optum-patient-header{padding:16px}.patient-info-grid,.ar-main-headers,.optum-main-headers{grid-template-columns:1fr;gap:12px}.ar-eye-header,.optum-eye-header{padding:12px}.ar-eye-header h2,.optum-eye-header h2{font-size:16px}.ar-main-content,.optum-main-content{grid-template-columns:1fr;gap:20px}.ar-form-actions{flex-direction:column;align-items:center}.ar-back-btn,.ar-reset-btn,.ar-submit-btn{width:100%;min-width:unset}.optum-form-actions{flex-direction:column;gap:16px;padding:20px 16px}.optum-actions-left,.optum-actions-right{width:100%;flex-direction:column;gap:12px}.optum-back-btn,.optum-reset-btn,.optum-submit-btn{width:100%;min-width:unset;justify-content:center}.optum-form-actions{position:relative}}@media (max-width: 480px){.ar-container,.optum-container{padding:8px}.ar-patient-header,.optum-patient-header{padding:12px;margin-bottom:16px}.patient-field label{font-size:10px}.patient-field span{font-size:13px}.ar-main-content,.optum-main-content{gap:16px}.ar-back-btn,.ar-reset-btn,.ar-submit-btn,.optum-back-btn,.optum-reset-btn{padding:10px 20px;font-size:14px}.optum-submit-btn{padding:11px 24px;font-size:15px}}@media print{.ar-form-actions,.optum-form-actions{display:none}.ar-container,.optum-container{background:#fff;padding:0}.ar-patient-header,.optum-patient-header,.ar-eye-header,.optum-eye-header{box-shadow:none}.ar-main-content,.optum-main-content{grid-template-columns:1fr 1fr;page-break-inside:avoid}}.ar-back-btn:focus-visible,.ar-reset-btn:focus-visible,.ar-submit-btn:focus-visible,.optum-back-btn:focus-visible,.optum-reset-btn:focus-visible,.optum-submit-btn:focus-visible{outline:3px solid #6c3fb5;outline-offset:3px}@media (prefers-reduced-motion: reduce){.ar-back-btn,.ar-reset-btn,.ar-submit-btn,.optum-back-btn,.optum-reset-btn,.optum-submit-btn,.loading-spinner,.optum-submit-btn:before{animation:none;transition:none}.ar-back-btn:hover,.ar-reset-btn:hover,.ar-submit-btn:hover,.optum-back-btn:hover,.optum-reset-btn:hover,.optum-submit-btn:hover{transform:none}}@media (prefers-contrast: high){.ar-back-btn,.ar-reset-btn,.ar-submit-btn,.optum-back-btn,.optum-reset-btn,.optum-submit-btn,.patient-field,.ar-patient-header,.optum-patient-header{border:2px solid currentColor}}@media (prefers-color-scheme: dark){.ar-container,.optum-container{background:linear-gradient(135deg,#1a1a1a,#2d2d2d)}.ar-patient-header,.optum-patient-header,.patient-field{background:#2d2d2d;border-color:#444;color:#fff}.patient-field span{color:#fff}.patient-field label{color:#aaa}}.optum-container{width:100%;max-width:100%;margin:0;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:#f8fafc;min-height:100vh}.optum-loading-spinner{border:4px solid #f3f4f6;border-top:4px solid #3b82f6;border-radius:50%;width:40px;height:40px;animation:optum-spin 1s linear infinite;margin:0 auto 20px}@keyframes optum-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.optum-progress-header{margin-bottom:30px;background:#fff;border-radius:8px;padding:20px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a}.optum-step-navigation{display:flex;align-items:center;justify-content:center;gap:20px}.optum-step-item{display:flex;align-items:center;gap:20px}.optum-step-button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:15px 25px;border:2px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;transition:all .3s ease;min-width:120px}.optum-step-button:hover{border-color:#3b82f6;transform:translateY(-2px)}.optum-step-button.active{border-color:#3b82f6;background:#3b82f6;color:#fff;box-shadow:0 4px 12px #3b82f64d}.optum-step-button.completed{border-color:#10b981;background:#10b981;color:#fff}.optum-step-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.optum-step-name{font-size:16px;font-weight:500}.optum-step-connector{width:60px;height:2px;background:#e2e8f0;transition:all .3s ease}.optum-step-connector.completed{background:#10b981}.optum-tab-navigation{display:flex;gap:4px;margin-bottom:30px;background:#fff;padding:8px;border-radius:8px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a}.optum-tab-button{flex:1;padding:12px 20px;border:none;border-radius:6px;background:transparent;color:#64748b;font-weight:500;cursor:pointer;transition:all .3s ease}.optum-tab-button:hover{background:#f1f5f9;color:#3b82f6}.optum-tab-button.active{background:#3b82f6;color:#fff;box-shadow:0 2px 8px #3b82f64d}.optum-content-area{background:#fff;border-radius:8px;padding:30px;margin-bottom:30px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a}.optum-template-header{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #f1f5f9}.optum-template-header h2{color:#1e293b;font-size:24px;font-weight:700;margin-bottom:10px}.optum-template-id{display:inline-block;background:#3b82f6;color:#fff;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:600;margin-right:15px}.optum-template-dates{font-size:14px;color:#6b7280}.optum-history-content{display:flex;flex-direction:column;gap:30px}.optum-section{border:1px solid #e2e8f0;border-radius:8px;padding:25px;background:#fafbfc}.optum-section h3{display:flex;align-items:center;gap:10px;margin-bottom:20px;color:#1e293b;font-size:18px;font-weight:600}.optum-section-icon{font-size:20px}.optum-form-section{margin-bottom:25px}.optum-form-section h4{color:#475569;font-size:16px;font-weight:600;margin-bottom:15px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.optum-form-field{margin-bottom:20px}.optum-field-label{display:block;font-weight:500;color:#374151;margin-bottom:8px;font-size:14px}.optum-multiselect-container{margin-bottom:25px}.optum-tags-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.optum-tags-label{font-weight:500;color:#475569;font-size:16px}.optum-header-actions{display:flex;align-items:center;gap:15px}.optum-selected-count-badge{background:#3b82f6;color:#fff;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:600}.optum-clear-all-btn{padding:6px 12px;border:1px solid #ef4444;border-radius:4px;background:#fff;color:#ef4444;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease}.optum-clear-all-btn:hover:not(:disabled){background:#ef4444;color:#fff}.optum-clear-all-btn:disabled{opacity:.5;cursor:not-allowed}.optum-complaint-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.optum-tag-button{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid #d1d5db;border-radius:16px;background:#fff;color:#374151;font-size:14px;cursor:pointer;transition:all .3s ease}.optum-tag-button:hover{border-color:#3b82f6;color:#3b82f6;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f633}.optum-tag-button.selected{border-color:#10b981;background:#10b981;color:#fff;box-shadow:0 2px 8px #10b9814d}.optum-tag-checkmark{font-size:12px;font-weight:700}.optum-table-container{margin-top:20px}.optum-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.optum-table-header h4{color:#1e293b;font-size:16px;font-weight:600}.optum-container input[type=text],.optum-container input[type=number],.optum-container textarea,.optum-container select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:all .3s ease;background:#fff}.optum-container input[type=text]:focus,.optum-container input[type=number]:focus,.optum-container textarea:focus,.optum-container select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.optum-container textarea{resize:vertical;min-height:80px;font-family:inherit}.optum-vital-item{display:flex;flex-direction:column;gap:8px}.optum-vital-item input{padding:10px;border:1px solid #d1d5db;border-radius:4px;font-size:14px;transition:border-color .3s ease}.optum-multiselect-group{display:flex;flex-direction:column;gap:8px}.optum-checkbox-option{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;transition:all .3s ease}.optum-checkbox-option:hover{background:#f8fafc;border-color:#3b82f6}.optum-checkbox-option input[type=checkbox]{width:auto;margin:0}.optum-section-footer{margin-top:20px}.optum-section-footer textarea{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:6px;min-height:80px;resize:vertical;font-family:inherit;transition:border-color .3s ease}.optum-navigation-buttons{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#fff;border-radius:8px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a}.optum-nav-button{display:flex;align-items:center;gap:8px;padding:12px 24px;border:1px solid #3b82f6;border-radius:6px;background:#3b82f6;color:#fff;font-weight:500;cursor:pointer;transition:all .3s ease;font-size:14px}.optum-nav-button:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.optum-nav-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.optum-prev-button{background:#fff;color:#3b82f6}.optum-prev-button:hover:not(:disabled){background:#f1f5f9}.optum-submit-button{background:#10b981;border-color:#10b981}.optum-submit-button:hover:not(:disabled){background:#059669}.optum-nav-info{font-weight:500;color:#6b7280;font-size:14px}.optum-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.optum-modal-content{background:#fff;border-radius:8px;padding:30px;width:90%;max-width:500px;box-shadow:0 10px 30px #0000004d}.optum-modal-content h3{margin-bottom:20px;color:#1e293b;font-size:20px;font-weight:600}.optum-modal-content p{margin-bottom:10px;color:#6b7280;font-size:14px}.optum-modal-body{margin:20px 0}.optum-modal-body label{display:block;margin-bottom:8px;font-weight:500;color:#374151}.optum-modal-input{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .3s ease}.optum-modal-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.optum-modal-explanation{margin:20px 0;padding:15px;background:#f8fafc;border-radius:6px;border-left:4px solid #3b82f6}.optum-option-explanation{margin-bottom:15px}.optum-option-explanation:last-child{margin-bottom:0}.optum-option-explanation strong{display:block;margin-bottom:5px;color:#1e293b;font-size:14px}.optum-option-explanation p{margin:0;font-size:13px;color:#6b7280;line-height:1.4}.optum-modal-actions{display:flex;gap:10px;margin-top:25px}.optum-btn-add-payload,.optum-btn-add-template,.optum-btn-cancel{flex:1;padding:12px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease}.optum-btn-add-payload{background:#3b82f6;color:#fff}.optum-btn-add-payload:hover:not(:disabled){background:#2563eb}.optum-btn-add-template{background:#10b981;color:#fff}.optum-btn-add-template:hover:not(:disabled){background:#059669}.optum-btn-cancel{background:#6b7280;color:#fff}.optum-btn-cancel:hover:not(:disabled){background:#4b5563}.optum-btn-add-payload:disabled,.optum-btn-add-template:disabled,.optum-btn-cancel:disabled{opacity:.5;cursor:not-allowed}.optum-add-option-btn{padding:6px 12px;border:1px solid #10b981;border-radius:4px;background:#10b981;color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease}.optum-add-option-btn:hover{background:#059669;transform:translateY(-1px)}.optum-add-option-btn-small{padding:4px 8px;border:1px solid #10b981;border-radius:4px;background:#10b981;color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease;margin-left:5px}.optum-add-option-btn-small:hover{background:#059669}.optum-select-with-add{display:flex;align-items:center;gap:5px}.optum-select-with-add select{flex:1}@media (max-width: 1024px){.optum-refraction-grid{grid-template-columns:1fr}}@media (max-width: 768px){.optum-container{padding:15px}.optum-step-navigation,.optum-step-item{flex-direction:column;gap:15px}.optum-step-connector{width:2px;height:30px}.optum-tab-navigation{flex-direction:column;gap:4px}.optum-tab-button{text-align:center}.optum-complaint-tags{gap:6px}.optum-tag-button{font-size:12px;padding:6px 10px}.optum-navigation-buttons{flex-direction:column;gap:15px}.optum-nav-button{width:100%;justify-content:center}}@media (max-width: 480px){.optum-template-header h2{font-size:20px}.optum-section h3{font-size:16px}.optum-content-area{padding:20px}.optum-header-actions{flex-direction:column;gap:8px;align-items:stretch}.optum-selected-count-badge,.optum-clear-all-btn{text-align:center}}.pgp-component{width:100%;background:#fff}.pgp-section-header{background:linear-gradient(135deg,#007bff,#6f42c1);color:#fff;padding:12px 16px;display:flex;justify-content:space-between;align-items:center}.pgp-section-title{font-size:14px;font-weight:600;letter-spacing:.5px}.pgp-header-buttons{display:flex;gap:8px}.pgp-fill-btn,.pgp-copy-btn,.pgp-pgp-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:6px 12px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease}.pgp-fill-btn:hover,.pgp-copy-btn:hover,.pgp-pgp-btn:hover{background:#ffffff4d;border-color:#ffffff80}.pgp-grid{width:100%;border-collapse:collapse;display:table}.pgp-grid-row{display:table-row}.pgp-header-row{background-color:#f8f9fa}.pgp-data-row{border-bottom:1px solid #e9ecef}.pgp-data-row:last-child{border-bottom:none}.pgp-add-row{background-color:#ffc1071a}.pgp-cell{display:table-cell;padding:12px 8px;vertical-align:middle;border-right:1px solid #e9ecef}.pgp-cell:last-child{border-right:none}.pgp-header-cell{font-size:12px;font-weight:600;color:#495057;text-align:center;background-color:#f8f9fa;text-transform:uppercase;letter-spacing:.5px}.pgp-label-cell{font-size:12px;font-weight:600;color:#495057;background-color:#f8f9fa;text-align:center;min-width:80px}.pgp-input-cell{width:auto;text-align:center}.pgp-input-field{width:100%;padding:8px 10px;border:1px solid #ced4da;border-radius:4px;font-size:13px;background-color:#fff;color:#495057;transition:border-color .3s ease,box-shadow .3s ease;min-width:80px}.pgp-input-field:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.pgp-type-lens-section{padding:16px;background-color:#f8f9fa;display:flex;align-items:center;gap:12px;border-top:1px solid #e9ecef}.pgp-type-lens-label{font-size:12px;font-weight:600;color:#495057;min-width:100px}.pgp-type-lens-select{flex:1;max-width:200px;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:13px;background-color:#fff;color:#495057}.pgp-type-lens-select:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.pgp-comments-section{padding:16px;background-color:#f8f9fa;border-top:1px solid #e9ecef}.pgp-comments-label{font-size:12px;font-weight:600;color:#495057;margin-bottom:8px;display:block}.pgp-comments-textarea{width:100%;min-height:80px;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:13px;font-family:inherit;resize:vertical;transition:border-color .3s ease,box-shadow .3s ease}.pgp-comments-textarea:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.pgp-comments-textarea::placeholder{color:#6c757d;font-style:italic}@media (max-width: 768px){.pgp-grid{font-size:12px}.pgp-cell{padding:8px 4px}.pgp-input-field{padding:6px 8px;font-size:12px;min-width:60px}.pgp-header-buttons{flex-direction:column;gap:4px}.pgp-fill-btn,.pgp-copy-btn,.pgp-pgp-btn{padding:4px 8px;font-size:11px}.pgp-type-lens-section{flex-direction:column;align-items:flex-start;gap:8px}.pgp-type-lens-select{max-width:100%}}.intermediate-glasses-component{width:100%;background:#fff}.ig-section-header{background:linear-gradient(135deg,#e83e8c,#fd7e14);color:#fff;padding:12px 16px;display:flex;justify-content:space-between;align-items:center}.ig-section-title{font-size:14px;font-weight:600;letter-spacing:.5px}.ig-header-buttons{display:flex;gap:8px}.ig-fill-btn,.ig-copy-btn,.ig-advise-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:6px 12px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease}.ig-fill-btn:hover,.ig-copy-btn:hover,.ig-advise-btn:hover{background:#ffffff4d;border-color:#ffffff80}.ig-grid{width:100%;border-collapse:collapse;display:table}.ig-grid-row{display:table-row}.ig-header-row{background-color:#f8f9fa}.ig-data-row{border-bottom:1px solid #e9ecef}.ig-data-row:last-child{border-bottom:none}.ig-add-row{background-color:#ffc1071a}.ig-cell{display:table-cell;padding:12px 8px;vertical-align:middle;border-right:1px solid #e9ecef}.ig-cell:last-child{border-right:none}.ig-header-cell{font-size:12px;font-weight:600;color:#495057;text-align:center;background-color:#f8f9fa;text-transform:uppercase;letter-spacing:.5px}.ig-label-cell{font-size:12px;font-weight:600;color:#495057;background-color:#f8f9fa;text-align:center;min-width:80px}.ig-input-cell{width:auto;text-align:center}.ig-input-field{width:100%;padding:8px 10px;border:1px solid #ced4da;border-radius:4px;font-size:13px;background-color:#fff;color:#495057;transition:border-color .3s ease,box-shadow .3s ease;min-width:80px}.ig-input-field:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.ig-additional-fields{padding:16px;background-color:#f8f9fa;border-top:1px solid #e9ecef}.ig-field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:16px}.ig-field-row:last-child{margin-bottom:0}.ig-field-group{display:flex;flex-direction:column;gap:6px}.ig-field-label{font-size:12px;font-weight:600;color:#495057;text-transform:uppercase;letter-spacing:.5px}.ig-field-select,.ig-field-input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:13px;background-color:#fff;color:#495057;transition:border-color .3s ease,box-shadow .3s ease}.ig-field-select:focus,.ig-field-input:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.ig-ipd-input-group{display:flex;align-items:center}.ig-ipd-input-group .ig-field-input{border-radius:4px 0 0 4px;border-right:none}.ig-ipd-unit{padding:8px 12px;background-color:#e9ecef;border:1px solid #ced4da;border-left:none;border-radius:0 4px 4px 0;font-size:13px;color:#6c757d;font-weight:500}.ig-checkbox-section{padding:16px;background-color:#f8f9fa;border-top:1px solid #e9ecef}.ig-checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px;color:#495057;cursor:pointer}.ig-checkbox{width:16px;height:16px;cursor:pointer}.ig-advice-section{padding:16px;background-color:#f8f9fa;border-top:1px solid #e9ecef}.ig-advice-label{font-size:12px;font-weight:600;color:#495057;margin-bottom:8px;display:block;text-transform:uppercase;letter-spacing:.5px}.ig-advice-textarea{width:100%;min-height:80px;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:13px;font-family:inherit;resize:vertical;transition:border-color .3s ease,box-shadow .3s ease}.ig-advice-textarea:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.ig-advice-textarea::placeholder{color:#6c757d;font-style:italic}@media (max-width: 768px){.ig-grid{font-size:12px}.ig-cell{padding:8px 4px}.ig-input-field{padding:6px 8px;font-size:12px;min-width:60px}.ig-header-buttons{flex-direction:column;gap:4px}.ig-fill-btn,.ig-copy-btn,.ig-advise-btn{padding:4px 8px;font-size:11px}.ig-field-row{grid-template-columns:1fr;gap:12px}.ig-additional-fields{padding:12px}}.glasses-prescription-component{width:100%;background:#fff}.gp-section-header{background:linear-gradient(135deg,#20c997,#17a2b8);color:#fff;padding:12px 16px;display:flex;justify-content:space-between;align-items:center}.gp-section-title{font-size:14px;font-weight:600;letter-spacing:.5px}.gp-header-buttons{display:flex;gap:8px}.gp-fill-btn,.gp-copy-btn,.gp-advise-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:6px 12px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease}.gp-fill-btn:hover,.gp-copy-btn:hover,.gp-advise-btn:hover{background:#ffffff4d;border-color:#ffffff80}.gp-grid{width:100%;border-collapse:collapse;display:table}.gp-grid-row{display:table-row}.gp-header-row{background-color:#f8f9fa}.gp-data-row{border-bottom:1px solid #e9ecef}.gp-data-row:last-child{border-bottom:none}.gp-add-row{background-color:#ffc1071a}.gp-cell{display:table-cell;padding:12px 8px;vertical-align:middle;border-right:1px solid #e9ecef}.gp-cell:last-child{border-right:none}.gp-header-cell{font-size:12px;font-weight:600;color:#495057;text-align:center;background-color:#f8f9fa;text-transform:uppercase;letter-spacing:.5px}.gp-label-cell{font-size:12px;font-weight:600;color:#495057;background-color:#f8f9fa;text-align:center;min-width:80px}.gp-input-cell{width:auto;text-align:center}.gp-input-field{width:100%;padding:8px 10px;border:1px solid #ced4da;border-radius:4px;font-size:13px;background-color:#fff;color:#495057;transition:border-color .3s ease,box-shadow .3s ease;min-width:80px}.gp-input-field:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.gp-additional-fields{padding:16px;background-color:#f8f9fa;border-top:1px solid #e9ecef}.gp-field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;margin-bottom:16px}.gp-field-row:last-child{margin-bottom:0}.gp-field-group{display:flex;flex-direction:column;gap:6px}.gp-field-label{font-size:12px;font-weight:600;color:#495057;text-transform:uppercase;letter-spacing:.5px}.gp-field-select,.gp-field-input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:13px;background-color:#fff;color:#495057;transition:border-color .3s ease,box-shadow .3s ease}.gp-field-select:focus,.gp-field-input:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.gp-ipd-input-group{display:flex;align-items:center}.gp-ipd-input-group .gp-field-input{border-radius:4px 0 0 4px;border-right:none}.gp-ipd-unit{padding:8px 12px;background-color:#e9ecef;border:1px solid #ced4da;border-left:none;border-radius:0 4px 4px 0;font-size:13px;color:#6c757d;font-weight:500}.gp-checkbox-section{padding:16px;background-color:#f8f9fa;border-top:1px solid #e9ecef}.gp-checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px;color:#495057;cursor:pointer}.gp-checkbox{width:16px;height:16px;cursor:pointer}.gp-advice-section{padding:16px;background-color:#f8f9fa;border-top:1px solid #e9ecef}.gp-advice-label{font-size:12px;font-weight:600;color:#495057;margin-bottom:8px;display:block;text-transform:uppercase;letter-spacing:.5px}.gp-advice-textarea{width:100%;min-height:80px;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:13px;font-family:inherit;resize:vertical;transition:border-color .3s ease,box-shadow .3s ease}.gp-advice-textarea:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 2px #007bff40}.gp-advice-textarea::placeholder{color:#6c757d;font-style:italic}@media (max-width: 768px){.gp-grid{font-size:12px}.gp-cell{padding:8px 4px}.gp-input-field{padding:6px 8px;font-size:12px;min-width:60px}.gp-header-buttons{flex-direction:column;gap:4px}.gp-fill-btn,.gp-copy-btn,.gp-advise-btn{padding:4px 8px;font-size:11px}.gp-field-row{grid-template-columns:1fr;gap:12px}.gp-additional-fields{padding:12px}}.color-vision-component{background:#fff;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.cv-section-header{background:linear-gradient(135deg,#fd7e14,#e63946);color:#fff;padding:10px 15px;display:flex;justify-content:space-between;align-items:center}.cv-section-title{font-size:13px;font-weight:600;letter-spacing:.5px}.cv-header-buttons{display:flex;gap:8px}.cv-copy-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:4px 10px;border-radius:3px;font-size:11px;font-weight:500;cursor:pointer;transition:all .3s ease}.cv-copy-btn:hover{background:#ffffff4d;border-color:#ffffff80}.cv-content{padding:15px}.cv-color-vision-section{margin-bottom:15px}.cv-color-vision-textarea{width:100%;height:120px;border:1px solid #dee2e6;border-radius:4px;padding:10px;font-size:14px;resize:vertical;font-family:inherit}.cv-color-vision-textarea:focus{outline:none;border-color:#fd7e14;box-shadow:0 0 0 3px #fd7e141a}.cv-color-vision-textarea::placeholder{color:#6c757d}@media (max-width: 768px){.cv-content{padding:10px}.cv-color-vision-textarea{height:100px;font-size:13px}}.contrast-sensitivity-component{background:#fff;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.cs-section-header{background:linear-gradient(135deg,#6f42c1,#495057);color:#fff;padding:10px 15px;display:flex;justify-content:space-between;align-items:center}.cs-section-title{font-size:13px;font-weight:600;letter-spacing:.5px}.cs-header-buttons{display:flex;gap:8px}.cs-copy-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:4px 10px;border-radius:3px;font-size:11px;font-weight:500;cursor:pointer;transition:all .3s ease}.cs-copy-btn:hover{background:#ffffff4d;border-color:#ffffff80}.cs-content{padding:15px}.cs-contrast-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:6px;border:1px solid #dee2e6}.cs-contrast-btn{background:#fff;border:1px solid #ced4da;color:#495057;padding:8px 12px;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:50px;text-align:center}.cs-contrast-btn:hover{background:#e9ecef;border-color:#adb5bd;transform:translateY(-1px)}.cs-contrast-btn.active{background:#6f42c1;border-color:#6f42c1;color:#fff;font-weight:600;transform:translateY(-1px);box-shadow:0 2px 4px #6f42c14d}.cs-comments-section{margin-top:15px}.cs-comments-label{font-size:14px;font-weight:600;color:#495057;margin-bottom:8px}.cs-comments-textarea{width:100%;height:80px;border:1px solid #dee2e6;border-radius:4px;padding:10px;font-size:14px;resize:vertical;font-family:inherit}.cs-comments-textarea:focus{outline:none;border-color:#6f42c1;box-shadow:0 0 0 3px #6f42c11a}.cs-comments-textarea::placeholder{color:#6c757d}@media (max-width: 768px){.cs-content{padding:10px}.cs-contrast-buttons{gap:4px;padding:10px}.cs-contrast-btn{padding:6px 8px;font-size:12px;min-width:45px}.cs-comments-textarea{height:60px;font-size:13px}}.orthoptics-component{background:#fff;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.orth-section-header{background:linear-gradient(135deg,#20c997,#198754);color:#fff;padding:10px 15px;display:flex;justify-content:space-between;align-items:center}.orth-section-title{font-size:13px;font-weight:600;letter-spacing:.5px}.orth-header-buttons{display:flex;gap:8px}.orth-copy-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:4px 10px;border-radius:3px;font-size:11px;font-weight:500;cursor:pointer;transition:all .3s ease}.orth-copy-btn:hover{background:#ffffff4d;border-color:#ffffff80}.orth-content{padding:15px}.orth-orthoptics-section{margin-bottom:15px}.orth-orthoptics-textarea{width:100%;height:120px;border:1px solid #dee2e6;border-radius:4px;padding:10px;font-size:14px;resize:vertical;font-family:inherit}.orth-orthoptics-textarea:focus{outline:none;border-color:#20c997;box-shadow:0 0 0 3px #20c9971a}.orth-orthoptics-textarea::placeholder{color:#6c757d}@media (max-width: 768px){.orth-content{padding:10px}.orth-orthoptics-textarea{height:100px;font-size:13px}}.intraocular-pressure-component{background:#fff;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.iop-section-header{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;padding:10px 15px;display:flex;justify-content:space-between;align-items:center}.iop-section-title{font-size:13px;font-weight:600;letter-spacing:.5px}.iop-header-buttons{display:flex;gap:8px}.iop-copy-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:4px 10px;border-radius:3px;font-size:11px;font-weight:500;cursor:pointer;transition:all .3s ease}.iop-copy-btn:hover{background:#ffffff4d;border-color:#ffffff80}.iop-content{padding:15px}.iop-clear-section{display:flex;justify-content:flex-end;margin-bottom:15px}.iop-clear-btn{background:#6c757d;border:1px solid #6c757d;color:#fff;padding:6px 12px;border-radius:4px;font-size:12px;cursor:pointer;transition:all .3s ease}.iop-clear-btn:hover{background:#5a6268;border-color:#5a6268}.iop-pressure-section{margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:6px;border:1px solid #dee2e6}.iop-pressure-slider{margin-bottom:15px}.iop-slider{width:100%;height:8px;border-radius:5px;background:#d3d3d3;outline:none;cursor:pointer;transition:all .3s ease}.iop-slider::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border-radius:50%;background:#dc3545;cursor:pointer;box-shadow:0 2px 4px #0003}.iop-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#dc3545;cursor:pointer;border:none;box-shadow:0 2px 4px #0003}.iop-pressure-inputs{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.iop-pressure-input{width:80px;padding:8px 10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;text-align:center}.iop-pressure-input:focus{outline:none;border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.iop-unit{font-size:14px;font-weight:500;color:#495057}.iop-time-input{width:100px;padding:8px 10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;text-align:center}.iop-time-input:focus{outline:none;border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.iop-top-section{display:flex;align-items:center;gap:15px;margin-bottom:20px;flex-wrap:wrap}.iop-top-btn{background:#007bff;border:1px solid #007bff;color:#fff;padding:8px 16px;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.iop-top-btn:hover{background:#0056b3;border-color:#0056b3}.iop-method-section{display:flex;align-items:center;gap:10px}.iop-method-label{font-size:14px;font-weight:500;color:#495057;white-space:nowrap}.iop-method-select{padding:8px 10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;min-width:200px}.iop-method-select:focus{outline:none;border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.iop-comments-section{margin-top:15px}.iop-comments-label{font-size:14px;font-weight:600;color:#495057;margin-bottom:8px}.iop-comments-textarea{width:100%;height:80px;border:1px solid #dee2e6;border-radius:4px;padding:10px;font-size:14px;resize:vertical;font-family:inherit}.iop-comments-textarea:focus{outline:none;border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.iop-comments-textarea::placeholder{color:#6c757d}@media (max-width: 768px){.iop-content{padding:10px}.iop-pressure-inputs{justify-content:center}.iop-top-section,.iop-method-section{flex-direction:column;align-items:stretch}.iop-method-select{min-width:unset}.iop-comments-textarea{height:60px;font-size:13px}}.contact-lens-prescription-component{background:#fff;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.clp-section-header{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;padding:10px 15px;display:flex;justify-content:space-between;align-items:center}.clp-section-title{font-size:13px;font-weight:600;letter-spacing:.5px}.clp-header-buttons{display:flex;gap:8px}.clp-copy-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:4px 10px;border-radius:3px;font-size:11px;font-weight:500;cursor:pointer;transition:all .3s ease}.clp-copy-btn:hover{background:#ffffff4d;border-color:#ffffff80}.clp-content{padding:15px}.clp-table{width:100%;border-collapse:collapse;margin-bottom:20px;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.clp-table thead{background:linear-gradient(135deg,#e8f4fd,#d1ecf1)}.clp-table th{padding:12px 8px;text-align:center;font-size:13px;font-weight:600;color:#495057;border-bottom:2px solid #17a2b8}.clp-table td{padding:10px 8px;text-align:center;border-bottom:1px solid #dee2e6}.clp-input-field{width:100%;padding:6px 8px;border:1px solid #ced4da;border-radius:3px;font-size:13px;text-align:center;background:#fff;transition:all .2s ease}.clp-input-field:focus{outline:none;border-color:#17a2b8;box-shadow:0 0 0 2px #17a2b833}.clp-input-field[readonly]{background:#f8f9fa;cursor:pointer}.clp-input-field[readonly]:hover{background:#e9ecef}.clp-additional-fields{margin-bottom:20px}.clp-field-row{display:flex;gap:15px;margin-bottom:15px;flex-wrap:wrap}.clp-field-group{flex:1;min-width:200px}.clp-field-label{display:block;font-size:14px;font-weight:500;color:#495057;margin-bottom:6px}.clp-field-input,.clp-date-input{width:100%;padding:8px 10px;border:1px solid #ced4da;border-radius:4px;font-size:14px}.clp-field-input:focus,.clp-date-input:focus{outline:none;border-color:#17a2b8;box-shadow:0 0 0 3px #17a2b81a}.clp-type-select{width:100%;padding:8px 10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;background:#fff}.clp-type-select:focus{outline:none;border-color:#17a2b8;box-shadow:0 0 0 3px #17a2b81a}.clp-advice-section{margin-top:15px}.clp-advice-label{font-size:14px;font-weight:600;color:#495057;margin-bottom:8px}.clp-advice-textarea{width:100%;height:80px;border:1px solid #dee2e6;border-radius:4px;padding:10px;font-size:14px;resize:vertical;font-family:inherit}.clp-advice-textarea:focus{outline:none;border-color:#17a2b8;box-shadow:0 0 0 3px #17a2b81a}.clp-advice-textarea::placeholder{color:#6c757d}@media (max-width: 768px){.clp-content{padding:10px}.clp-table{font-size:12px}.clp-table th,.clp-table td{padding:8px 4px}.clp-input-field{padding:4px 6px;font-size:12px}.clp-field-row{flex-direction:column;gap:10px}.clp-field-group{min-width:unset}.clp-advice-textarea{height:60px;font-size:13px}}.amsler-component{background:#fff;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.amsler-section-header{background:linear-gradient(135deg,#ffc107,#fd7e14);color:#fff;padding:10px 15px;display:flex;justify-content:space-between;align-items:center}.amsler-section-title{font-size:13px;font-weight:600;letter-spacing:.5px;text-shadow:0 1px 2px rgba(0,0,0,.1)}.amsler-header-buttons{display:flex;gap:8px}.amsler-copy-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:4px 10px;border-radius:3px;font-size:11px;font-weight:500;cursor:pointer;transition:all .3s ease}.amsler-copy-btn:hover{background:#ffffff4d;border-color:#ffffff80}.amsler-content{padding:15px}.amsler-result-buttons{display:flex;gap:10px;margin-bottom:20px;justify-content:center}.amsler-result-btn{background:#fff;border:2px solid #ced4da;color:#495057;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:100px}.amsler-result-btn:hover{background:#f8f9fa;border-color:#adb5bd;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.amsler-result-btn.active{background:#ffc107;border-color:#ffc107;color:#212529;transform:translateY(-2px);box-shadow:0 4px 12px #ffc10766}.amsler-comments-section{margin-top:15px}.amsler-comments-label{font-size:14px;font-weight:600;color:#495057;margin-bottom:8px}.amsler-comments-textarea{width:100%;height:80px;border:1px solid #dee2e6;border-radius:4px;padding:10px;font-size:14px;resize:vertical;font-family:inherit}.amsler-comments-textarea:focus{outline:none;border-color:#ffc107;box-shadow:0 0 0 3px #ffc1071a}.amsler-comments-textarea::placeholder{color:#6c757d}@media (max-width: 768px){.amsler-content{padding:10px}.amsler-result-buttons{flex-direction:column;align-items:center}.amsler-result-btn{width:100%;max-width:200px}.amsler-comments-textarea{height:60px;font-size:13px}}.keratometry-component{background:#fff;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.kerat-section-header{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;padding:10px 15px;display:flex;justify-content:space-between;align-items:center}.kerat-section-title{font-size:13px;font-weight:600;letter-spacing:.5px}.kerat-header-buttons{display:flex;gap:8px}.kerat-copy-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:4px 10px;border-radius:3px;font-size:11px;font-weight:500;cursor:pointer;transition:all .3s ease}.kerat-copy-btn:hover{background:#ffffff4d;border-color:#ffffff80}.kerat-content{padding:15px}.kerat-table{width:100%;border-collapse:collapse;margin-bottom:20px;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.kerat-table thead{background:linear-gradient(135deg,#d4edda,#c3e6cb)}.kerat-table th{padding:12px 8px;text-align:center;font-size:13px;font-weight:600;color:#495057;border-bottom:2px solid #28a745}.kerat-table td{padding:10px 8px;text-align:center;border-bottom:1px solid #dee2e6}.kerat-label{font-weight:600;color:#495057;background:#f8f9fa}.kerat-input-field{width:100%;padding:6px 8px;border:1px solid #ced4da;border-radius:3px;font-size:13px;text-align:center;background:#fff;transition:all .2s ease}.kerat-input-field:focus{outline:none;border-color:#28a745;box-shadow:0 0 0 2px #28a74533}.kerat-input-field.readonly{background:#f8f9fa;cursor:pointer}.kerat-input-field.readonly:hover{background:#e9ecef}.kerat-calculated-fields{display:flex;flex-direction:column;gap:15px}.kerat-field-row{display:flex;gap:20px;align-items:center}.kerat-field-group{display:flex;align-items:center;gap:10px}.kerat-field-label{font-size:14px;font-weight:500;color:#495057;white-space:nowrap;min-width:60px}.kerat-calculated-input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;text-align:center;width:120px;background:#f8f9fa}.kerat-calculated-input:focus{outline:none;border-color:#28a745;box-shadow:0 0 0 3px #28a7451a;background:#fff}@media (max-width: 768px){.kerat-content{padding:10px}.kerat-table{font-size:12px}.kerat-table th,.kerat-table td{padding:8px 4px}.kerat-input-field{padding:4px 6px;font-size:12px}.kerat-calculated-fields{gap:10px}.kerat-field-row{flex-direction:column;align-items:stretch;gap:5px}.kerat-field-group{justify-content:space-between}.kerat-calculated-input{width:100px}}.retinoscopy-component{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.ret-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #6c3fb5}.ret-section-title{font-size:18px;font-weight:700;color:#6c3fb5;text-transform:uppercase;letter-spacing:.5px}.ret-header-buttons{display:flex;gap:8px}.ret-copy-btn{padding:6px 16px;background:linear-gradient(135deg,#6c3fb5,#8b5fd6);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 2px 4px #6c3fb54d}.ret-copy-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #6c3fb566}.ret-content{display:flex;flex-direction:column;gap:24px}.ret-neutralization-container{display:flex;justify-content:center;margin:20px 0}.ret-neutralization-grid{position:relative;width:300px;height:300px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:0;border:3px solid #6c3fb5;border-radius:12px;padding:15px;background:linear-gradient(135deg,#f8f9ff,#f0f2ff);box-shadow:0 4px 12px #6c3fb526}.ret-grid-item.corner{display:flex;align-items:center;justify-content:center;padding:10px}.ret-grid-input{width:90px;height:45px;text-align:center;font-size:15px;font-weight:600;border:2px solid #ccc;border-radius:8px;background:#fff;transition:all .3s;color:#333}.ret-grid-input.clickable-field{cursor:pointer;background:#fff;border-color:#9575cd}.ret-grid-input.clickable-field:hover{border-color:#6c3fb5;box-shadow:0 0 12px #6c3fb566;transform:scale(1.05)}.ret-grid-input.clickable-field:focus{outline:none;border-color:#6c3fb5;box-shadow:0 0 16px #6c3fb599}.ret-grid-center-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:110px;height:110px;display:flex;align-items:center;justify-content:center;z-index:10}.ret-x-mark{position:absolute;width:160%;height:160%;pointer-events:none;z-index:1}.ret-x-line{position:absolute;width:3px;height:100%;background:linear-gradient(to bottom,#6c3fb5,#9575cd,#6c3fb5);left:50%;top:0;transform-origin:center;opacity:.8}.ret-x-line.diagonal-1{transform:translate(-50%) rotate(45deg)}.ret-x-line.diagonal-2{transform:translate(-50%) rotate(-45deg)}.ret-center-input{width:100px;height:55px;text-align:center;font-size:17px;font-weight:700;border:3px solid #6c3fb5;border-radius:10px;background:#fff;cursor:pointer;z-index:11;position:relative;box-shadow:0 4px 12px #6c3fb54d;transition:all .3s;color:#333}.ret-center-input:hover{border-color:#5a2fa0;box-shadow:0 6px 20px #6c3fb580;transform:scale(1.08)}.ret-center-input:focus{outline:none;border-color:#5a2fa0;box-shadow:0 6px 20px #6c3fb599}.ret-measurements-section{display:flex;flex-direction:column;gap:16px;padding:20px;background:#f8f9ff;border-radius:8px;border:1px solid #e0e0e0}.ret-measurement-row{display:flex;gap:20px;align-items:center}.ret-measurement-group{flex:1;display:flex;align-items:center;gap:10px}.ret-measurement-label{font-weight:600;color:#555;min-width:100px;font-size:14px}.ret-measurement-input{flex:1;padding:10px 12px;border:2px solid #ddd;border-radius:6px;font-size:14px;transition:all .3s}.ret-measurement-input:focus{outline:none;border-color:#6c3fb5;box-shadow:0 0 8px #6c3fb54d}.ret-unit{font-size:13px;color:#777;font-weight:500;min-width:50px}.ret-drug-select{flex:1;padding:10px 12px;border:2px solid #ddd;border-radius:6px;font-size:14px;cursor:pointer;background:#fff;transition:all .3s}.ret-drug-select:focus{outline:none;border-color:#6c3fb5;box-shadow:0 0 8px #6c3fb54d}.ret-comments-section{display:flex;flex-direction:column;gap:10px}.ret-comments-label{font-weight:600;color:#555;font-size:14px}.ret-comments-textarea{width:100%;min-height:80px;padding:12px;border:2px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;transition:all .3s}.ret-comments-textarea:focus{outline:none;border-color:#6c3fb5;box-shadow:0 0 8px #6c3fb54d}@media (max-width: 768px){.ret-neutralization-grid{width:250px;height:250px}.ret-grid-input{width:70px;height:40px;font-size:13px}.ret-center-input{width:85px;height:48px;font-size:15px}.ret-measurement-row{flex-direction:column;gap:12px}}.medical-form-container{width:100%;margin:0 auto;padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#f5f5f5;min-height:100vh}.navigation{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:10px;flex-wrap:wrap}.nav-btn{padding:8px 16px;background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;white-space:nowrap}.nav-btn:hover{background-color:#e0e0e0;transform:translateY(-1px)}.generate-payload-btn{background-color:#28a745;color:#fff;font-weight:600}.generate-payload-btn:hover{background-color:#218838}.submit-btn{background-color:#28a745!important;color:#fff!important;font-weight:600!important}.submit-btn:hover{background-color:#218838!important}.submit-btn:disabled{background-color:#ccc!important;cursor:not-allowed!important}.referral-btn{background:#4b7bec!important;color:#fff!important}.referral-btn:hover{background:#3867d6!important}.refresh-btn{background-color:#17a2b8;color:#fff;font-weight:600}.refresh-btn:hover{background-color:#138496}.assignment-history-header{background:linear-gradient(135deg,#6c5ce7,#74b9ff);color:#fff;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 4px 12px #00000026}.assignment-history-header h3{margin:0 0 15px;font-size:20px;font-weight:600}.current-assignment{background:#ffffff26;padding:12px 16px;border-radius:6px;margin-bottom:10px;font-size:14px;line-height:1.4}.assignment-sequence{font-size:13px;opacity:.9;font-weight:500}.doctor-tabs{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;overflow:hidden}.tab-header{background:#f8f9fa;padding:15px 20px;border-bottom:1px solid #e9ecef}.tab-header h4{margin:0;color:#333;font-size:16px;font-weight:600}.tabs{display:flex;flex-wrap:wrap;background-color:#fff;border-radius:0;overflow:visible;box-shadow:none;margin-bottom:0}.tab-btn{flex:1;padding:12px 20px;border:none;background-color:#f8f9fa;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;border-right:1px solid #e9ecef;border-bottom:1px solid #e9ecef;position:relative;min-width:180px}.tab-btn:last-child{border-right:none}.tab-btn.active{background-color:#28a745;color:#fff;border-bottom-color:#28a745}.tab-btn:hover:not(.active){background-color:#e9ecef}.new-form-tab{background-color:#e8f5e8!important;color:#155724!important;font-weight:600!important;border-left:4px solid #28a745!important}.new-form-tab.active{background-color:#28a745!important;color:#fff!important}.doctor-tab{position:relative}.doctor-tab.current-doctor{background-color:#fff3cd!important;color:#856404!important;border-left:4px solid #ffc107!important}.doctor-tab.current-doctor.active{background-color:#ffc107!important;color:#212529!important}.assigned-to{font-size:11px;opacity:.8;font-weight:400}.exam-count{background:#0000001a;padding:2px 6px;border-radius:10px;font-size:11px;margin-left:5px}.active-indicator{font-size:11px;font-weight:600;color:#dc3545}.tab-btn.active .exam-count{background:#fff3}.loading-indicator{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#f8f9fa;font-size:13px;color:#666}.loading-spinner-small{width:16px;height:16px;border:2px solid #f3f3f3;border-top:2px solid #20c997;border-radius:50%;animation:spin 1s linear infinite}.template-header{text-align:center;margin-bottom:20px;padding:20px;background:linear-gradient(135deg,#20c997,#17a2b8);color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a}.template-header h2{margin:0;font-size:24px;font-weight:600}.template-id{display:block;font-size:12px;color:#fffc;margin-top:5px}.template-dates{display:block;font-size:11px;color:#ffffffb3;margin-top:8px;font-style:italic}.form-content{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000001a}.general-info{margin-bottom:30px;padding:20px;background-color:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.info-row{display:flex;align-items:center;margin-bottom:15px;gap:15px}.info-row:last-child{margin-bottom:0}.info-row span{min-width:150px;font-weight:500;color:#333}.info-row textarea{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;resize:vertical;min-height:60px;font-family:inherit}.doctor-examination-view{margin-top:20px}.doctor-info-header{background:linear-gradient(135deg,#a29bfe,#6c5ce7);color:#fff;padding:20px;border-radius:8px;margin-bottom:20px}.doctor-info-header h3{margin:0 0 10px;font-size:18px}.doctor-stats{font-size:14px;opacity:.9}.admin-edit-mode{border:3px solid #ffc107;border-radius:8px;margin-bottom:20px;overflow:hidden}.admin-notice{background:#fff3cd;color:#856404;padding:12px 16px;margin:0;font-size:14px;font-weight:500;border-bottom:1px solid #ffeaa7}.history-section{margin-top:30px}.history-section h4{color:#333;margin-bottom:20px;font-size:16px;padding-bottom:10px;border-bottom:2px solid #e9ecef}.doctor-examination-history{max-height:600px;overflow-y:auto;padding:5px}.no-examination-data{text-align:center;padding:40px;color:#666;font-style:italic;background:#f8f9fa;border-radius:6px;border:2px dashed #ddd}.examination-entries{display:flex;flex-direction:column;gap:20px}.examination-entry{border:1px solid #e9ecef;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 2px 4px #0000000d}.examination-header{background:linear-gradient(135deg,#74b9ff,#0984e3);color:#fff;padding:15px 20px}.examination-header h4{margin:0 0 8px;font-size:16px}.examination-meta{display:flex;gap:20px;font-size:13px;opacity:.9}.examination-date,.examination-template{display:flex;align-items:center;gap:5px}.examination-details{padding:20px}.basic-info{margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:6px}.basic-info h5{margin:0 0 10px;color:#333;font-size:14px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.info-item{font-size:13px;line-height:1.4}.info-item strong{color:#333}.attached-files{margin-bottom:20px;padding:15px;background:#e8f5e8;border-radius:6px;border-left:4px solid #28a745}.attached-files h5{margin:0 0 15px;color:#155724;font-size:14px}.files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.file-item{text-align:center}.sketch-preview{display:flex;flex-direction:column;align-items:center;gap:5px}.sketch-preview img{border:2px solid #28a745;border-radius:4px;box-shadow:0 2px 4px #0000001a}.sketch-preview span{font-size:11px;color:#155724;font-weight:500}.file-link{display:inline-block;padding:8px 12px;background:#17a2b8;color:#fff;text-decoration:none;border-radius:4px;font-size:12px;transition:background .2s}.file-link:hover{background:#138496;color:#fff}.examination-sections{display:flex;flex-direction:column;gap:15px}.examination-section{border:1px solid #e9ecef;border-radius:6px;overflow:hidden}.examination-section h5{background:#20c997;color:#fff;margin:0;padding:12px 16px;font-size:14px}.examination-form{padding:15px;border-bottom:1px solid #f1f1f1}.examination-form:last-child{border-bottom:none}.examination-form h6{margin:0 0 10px;color:#333;font-size:13px}.form-data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}.field-data-item{padding:8px 10px;background:#f8f9fa;border-radius:4px;font-size:12px;line-height:1.3}.field-label{display:block;font-weight:600;color:#333;margin-bottom:2px}.field-value{color:#666}.radio-group{display:flex;gap:15px;align-items:center}.radio-group label,.radio-option{display:flex;align-items:center;gap:5px;cursor:pointer;font-size:14px}.radio-option input[type=radio]{margin:0}.normal-option{color:#155724;font-weight:500}.abnormal-option{color:#721c24;font-weight:500}.template-sections{display:grid;grid-template-columns:1fr 1fr;gap:30px}.template-section{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000000d}.section-header{background-color:#20c997;color:#fff;padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.section-header h3{margin:0;font-size:18px;font-weight:600}.status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.status.normal{background-color:#fff3;color:#fff}.sketch-section{padding:15px 20px;background-color:#f8f9fa;border-bottom:1px solid #e9ecef}.sketch-buttons{display:grid;grid-template-columns:1fr 1fr;gap:20px}.sketch-group{display:flex;flex-direction:column;gap:10px}.sketch-group label{font-weight:500;color:#333;font-size:14px}.btn-diagram-sketch{padding:10px 15px;background-color:#6f42c1;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;transition:all .3s ease}.btn-diagram-sketch:hover{background-color:#5a32a3;transform:translateY(-1px)}.saved-sketch-preview{margin-top:10px;max-width:200px;border:2px solid #e9ecef;border-radius:4px;overflow:hidden}.saved-sketch-preview img{width:100%;height:auto;display:block}.sketch-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.sketch-modal-content{background-color:#fff;border-radius:8px;padding:20px;max-width:90%;max-height:90%;overflow:auto;box-shadow:0 4px 20px #0000004d}.sketch-modal-content h3{margin-top:0;margin-bottom:20px;color:#333;text-align:center}.sketch-tools{display:flex;flex-wrap:wrap;gap:15px;align-items:center;margin-bottom:20px;padding:15px;background-color:#f8f9fa;border-radius:6px}.sketch-tools label{font-weight:500;color:#333;font-size:14px}.button-group-tools{display:flex;gap:5px}.tool-btn{padding:8px 12px;border:1px solid #ddd;background-color:#fff;cursor:pointer;border-radius:4px;font-size:13px;transition:all .2s ease}.tool-btn:hover{background-color:#e9ecef}.tool-btn.active{background-color:#20c997;color:#fff;border-color:#20c997}.color-picker{width:40px;height:35px;border:1px solid #ddd;border-radius:4px;cursor:pointer}.thickness-slider{width:100px}.canvas-container{display:flex;justify-content:center;margin-bottom:20px;padding:10px;background-color:#f8f9fa;border-radius:6px}.sketch-canvas{border:2px solid #ddd;border-radius:4px;cursor:crosshair;max-width:100%;max-height:70vh}.sketch-actions{display:flex;justify-content:center;gap:10px}.sketch-actions button{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease}.next-btn{background-color:#28a745;color:#fff}.next-btn:hover{background-color:#218838}.clear-btn{background-color:#dc3545;color:#fff}.clear-btn:hover{background-color:#c82333}.forms-container-simple{padding:20px}.form-simple{margin-bottom:20px;background-color:#f8f9fa;border-radius:6px;padding:15px;border-left:3px solid #20c997}.form-field-simple{margin-bottom:15px}.form-field-simple:last-child{margin-bottom:0}.field-label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.simple-search-field{width:100%}.label-search-inline{display:flex;align-items:center;gap:15px;margin-bottom:10px}.field-label-inline{font-weight:600;color:#333;font-size:14px;min-width:100px;white-space:nowrap}.search-input-simple{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:all .2s ease}.search-input-simple:focus{outline:none;border-color:#20c997;box-shadow:0 0 0 2px #20c9971a}.field-status-inline{padding:6px 12px;border-radius:4px;font-size:12px;font-weight:500;background-color:#d4edda;color:#155724;white-space:nowrap}.search-dropdown-simple{position:absolute;top:100%;left:0;right:0;background-color:#fff;border:1px solid #ddd;border-top:none;border-radius:0 0 4px 4px;box-shadow:0 2px 8px #00000026;max-height:200px;overflow-y:auto;z-index:1000;animation:slideDown .2s ease-out}.dropdown-option{display:flex;align-items:center;padding:8px 12px;cursor:pointer;transition:background-color .2s ease;gap:8px;border-bottom:1px solid #f1f1f1}.dropdown-option:hover{background-color:#f8f9fa}.dropdown-option.selected{background-color:#e8f5e8;color:#155724}.dropdown-option input[type=checkbox]{margin:0;pointer-events:none;accent-color:#20c997}.dropdown-option span{flex:1;font-size:14px}.no-options-simple{padding:12px;text-align:center;color:#666;font-style:italic;font-size:14px}.selected-items-simple{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.selected-tag-simple{display:inline-flex;align-items:center;background-color:#20c997;color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;gap:5px}.remove-tag-simple{background:none;border:none;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.remove-tag-simple:hover{background-color:#fff3}input[type=text],input[type=number],select,textarea{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;transition:border-color .2s ease}input[type=text]:focus,input[type=number]:focus,select:focus,textarea:focus{outline:none;border-color:#20c997;box-shadow:0 0 0 2px #20c9971a}select{background-color:#fff;cursor:pointer}textarea{resize:vertical;min-height:80px}.multiselect-group{display:flex;flex-wrap:wrap;gap:10px;max-height:200px;overflow-y:auto;padding:5px}.checkbox-option{display:flex;align-items:center;gap:5px;cursor:pointer;padding:6px 10px;border:1px solid #ddd;border-radius:4px;background-color:#f8f9fa;transition:all .2s ease;font-size:13px;min-width:fit-content}.checkbox-option:hover{background-color:#e9ecef;border-color:#20c997}.checkbox-option input[type=checkbox]{margin:0;width:auto}.checkbox-option input[type=checkbox]:checked+span{color:#20c997;font-weight:500}.file-input-group{display:flex;flex-direction:column;gap:10px}.file-input-group input[type=file]{padding:8px;border:2px dashed #ddd;border-radius:4px;background-color:#f8f9fa;cursor:pointer;transition:all .2s ease}.file-input-group input[type=file]:hover{border-color:#20c997;background-color:#f0fff4}.file-list{display:flex;flex-wrap:wrap;gap:5px}.file-name{background-color:#20c997;color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.group-fields{display:flex;flex-wrap:wrap;gap:15px;background-color:#f1f3f4;padding:15px;border-radius:6px;border:1px solid #e9ecef}.group-field{flex:1;min-width:120px}.sub-field-label{display:block;margin-bottom:5px;font-weight:500;font-size:12px;color:#666}.group-field input[type=number]{padding:6px 8px;font-size:13px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:40px;background-color:#fff;border-radius:8px}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #20c997;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.loading-examinations{display:flex;flex-direction:column;align-items:center;padding:40px;color:#666}.loading-examinations .loading-spinner{width:32px;height:32px;margin-bottom:15px}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.loading-container p{font-size:16px;color:#666;margin:0;font-weight:500}.error-container{display:flex;align-items:center;justify-content:center;min-height:400px;padding:40px}.error-message{text-align:center;background-color:#f8f9fa;padding:30px;border-radius:8px;border:1px solid #e9ecef;max-width:400px;box-shadow:0 2px 8px #0000001a}.error-message h3{color:#dc3545;margin-bottom:15px;font-size:20px}.error-message p{color:#666;margin-bottom:20px;font-size:14px}.retry-btn{background-color:#28a745;color:#fff;border:none;padding:12px 24px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease}.retry-btn:hover{background-color:#218838;transform:translateY(-1px)}.retry-btn-small{background-color:#28a745;color:#fff;border:none;padding:5px 10px;border-radius:3px;cursor:pointer;font-size:12px;font-weight:500;transition:all .3s ease}.retry-btn-small:hover{background-color:#218838}.field-error{color:#dc3545;font-style:italic;font-size:13px;background-color:#f8d7da;padding:8px 12px;border-radius:4px;border:1px solid #f5c6cb}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:24px;border-radius:8px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.modal-content h3{margin-top:0;margin-bottom:20px;color:#333}.modal-body{margin-bottom:20px}.modal-input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.modal-actions{display:flex;gap:12px;margin-top:20px;justify-content:flex-end}.field-group{margin-bottom:16px}.field-group label{display:block;margin-bottom:4px;font-weight:500;color:#333}.field-group select,.field-group textarea,.field-group input{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-family:inherit}.field-group textarea{resize:vertical;min-height:80px}.doctor-search-input{margin-bottom:10px!important}.doctors-loading,.doctors-error{padding:10px;border-radius:4px;font-size:14px}.doctors-loading{background:#f8f9fa;color:#666;text-align:center}.doctors-error{background:#f8d7da;color:#721c24}.assignment-info{background:#e8f4fd;padding:12px;border-radius:4px;color:#0c5460;font-size:14px;margin-bottom:15px}.assignment-preview{background:#f8f9fa;padding:10px;border-radius:4px;margin-top:10px}.modal-btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-weight:500;font-size:14px;transition:all .3s ease}.yes-btn{background:#28a745;color:#fff}.yes-btn:hover{background:#218838}.no-btn{background:#6c757d;color:#fff}.no-btn:hover{background:#5a6268}.field-with-add-option{display:flex;flex-direction:column;gap:8px}.btn-add-option{padding:4px 8px;background:#17a2b8;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease;align-self:flex-start}.btn-add-option:hover{background:#138496}.btn-add-payload{background:#28a745;color:#fff;padding:10px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.btn-add-payload:hover{background:#218838}.btn-add-payload:disabled{background:#ccc;cursor:not-allowed}.btn-add-template{background:#17a2b8;color:#fff;padding:10px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.btn-add-template:hover{background:#138496}.btn-add-template:disabled{background:#ccc;cursor:not-allowed}.btn-cancel{background:#6c757d;color:#fff;padding:10px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.btn-cancel:hover{background:#5a6268}.add-option-dropdown{width:100%;padding:8px 12px;background:#e8f5e8;border:none;border-bottom:1px solid #ddd;cursor:pointer;font-size:13px;font-weight:500;color:#155724;transition:background-color .2s ease}.add-option-dropdown:hover{background:#d4edda}.file-url-info{display:block;font-size:10px;color:#666;margin-top:5px;word-break:break-all}.file-uploaded{margin-top:5px}.file-uploaded a{color:#20c997;text-decoration:none;font-size:12px}.file-uploaded a:hover{text-decoration:underline}.field-btn:focus-visible,.nav-btn:focus-visible,.tab-btn:focus-visible,.retry-btn:focus-visible,.btn-diagram-sketch:focus-visible{outline:2px solid #20c997;outline-offset:2px}.multiselect-group::-webkit-scrollbar,.search-dropdown-simple::-webkit-scrollbar,.doctor-examination-history::-webkit-scrollbar{width:6px}.multiselect-group::-webkit-scrollbar-track,.search-dropdown-simple::-webkit-scrollbar-track,.doctor-examination-history::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.multiselect-group::-webkit-scrollbar-thumb,.search-dropdown-simple::-webkit-scrollbar-thumb,.doctor-examination-history::-webkit-scrollbar-thumb{background:#20c997;border-radius:3px}.multiselect-group::-webkit-scrollbar-thumb:hover,.search-dropdown-simple::-webkit-scrollbar-thumb:hover,.doctor-examination-history::-webkit-scrollbar-thumb:hover{background:#17a085}@media (max-width: 1200px){.medical-form-container{max-width:100%;padding:15px}.template-sections{grid-template-columns:1fr;gap:20px}.tabs{flex-wrap:wrap}.tab-btn{min-width:160px}}@media (max-width: 768px){.medical-form-container{padding:10px}.navigation{flex-wrap:wrap;gap:8px}.nav-btn{flex:1;min-width:80px;padding:8px 12px;font-size:12px}.assignment-history-header{padding:15px}.assignment-history-header h3{font-size:18px}.tabs{flex-direction:column}.tab-btn{border-right:none;border-bottom:1px solid #e9ecef;min-width:auto}.tab-btn:last-child{border-bottom:none}.template-header{padding:15px}.template-header h2{font-size:20px}.info-row{flex-direction:column;align-items:flex-start;gap:8px}.info-row span{min-width:auto}.radio-group{flex-wrap:wrap;gap:10px}.section-header{padding:12px 15px}.forms-container-simple{padding:15px}.sketch-buttons{grid-template-columns:1fr;gap:15px}.sketch-tools{flex-direction:column;align-items:flex-start;gap:10px}.button-group-tools{flex-wrap:wrap}.sketch-modal-content{max-width:95%;max-height:95%;padding:15px}.label-search-inline{flex-direction:column;align-items:flex-start;gap:8px}.field-label-inline{min-width:auto}.search-input-wrapper{width:100%}.field-status-inline{align-self:flex-start}.doctor-info-header{padding:15px}.examination-entries{gap:15px}.examination-header{padding:12px 15px}.examination-meta{flex-direction:column;gap:5px}.examination-details{padding:15px}.info-grid{grid-template-columns:1fr}.files-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.form-data-grid{grid-template-columns:1fr}}@media (max-width: 480px){.medical-form-container{padding:8px}.assignment-history-header{padding:12px}.assignment-history-header h3{font-size:16px}.current-assignment{font-size:13px}.template-header{padding:12px}.template-header h2{font-size:18px}.general-info{padding:15px}.section-header h3{font-size:16px}.field-label{font-size:13px}input[type=text],input[type=number],select,textarea{font-size:13px;padding:6px 8px}.checkbox-option{font-size:12px;padding:4px 6px}.tab-btn{padding:10px 12px;font-size:12px}.modal-content{width:95%;padding:16px}.modal-actions{flex-direction:column}.modal-btn,.btn-add-payload,.btn-add-template,.btn-cancel{width:100%;margin:8px 0 0}}@media print{.medical-form-container{background-color:#fff;box-shadow:none;padding:0}.navigation,.tabs,.assignment-history-header,.doctor-tabs{display:none}.template-header{background:#f8f9fa;color:#333;-webkit-print-color-adjust:exact;color-adjust:exact}.form-simple{background-color:#f8f9fa;-webkit-print-color-adjust:exact;color-adjust:exact}.examination-entry{break-inside:avoid;page-break-inside:avoid}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){.checkbox-option,.radio-option{border:1px solid #000}input[type=text]:focus,input[type=number]:focus,select:focus,textarea:focus{border:2px solid #000}.tab-btn.active{background:#000;color:#fff}}.card{background:#fff;box-shadow:0 2px 8px #44447817;border-radius:12px;padding:2rem;margin:2rem auto;max-width:800px;transition:box-shadow .2s}.card-content{display:flex;flex-direction:column;gap:1.5rem}h2,h3,h4,h5{margin:0;font-weight:600;color:#24446d}.subtitle{color:#6884b7;font-size:1rem;margin-bottom:1rem}.loading{color:#24446d;text-align:center;font-size:1.16rem;background:#f3f7fb;border-radius:8px;padding:1rem}.no-tests,.no-parameters{color:#aaa;font-size:1rem;text-align:center;margin:.5rem 0}.error-message{background:#fde4e4;color:#cb0f16;border:1px solid #fcbbbb;border-radius:8px;padding:.8rem 1.2rem;position:relative;font-size:.97rem;margin-bottom:10px}.clear-error-btn{background:none;border:none;color:#cb0f16;font-size:1.3rem;position:absolute;top:9px;right:14px;cursor:pointer;transition:color .22s}.clear-error-btn:hover{color:#444}.tests-list{display:flex;flex-direction:column;gap:1.5rem}.test-card{background:#f5f8fd;border-radius:9px;border:1px solid #dde6f6;box-shadow:0 2px 6px #3b64c80f;padding:1.3rem 1.2rem;margin-top:.5rem;transition:box-shadow .2s}.test-card.completed{border:1.5px solid #43b780;background:#ebfbf3}.test-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.test-info h4{font-size:1.09rem;color:#24446d}.test-details{font-size:.92rem;color:#6884b7;margin-top:.2rem;display:flex;gap:1.3rem}.detail-item{background:#e9edf5;border-radius:6px;padding:2px 8px}.test-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.status-select{font-size:.96rem;font-weight:500;border-radius:6px;border:1px solid #24446d21;background:#eff4fa;color:#4167ab;padding:3px 11px;margin-top:4px}.status-badge.advised{background:#faeaea;color:#db3043;border:1px solid #db304340}.status-badge.pending{background:#fff3ca;color:#ac9806;border:1px solid #dcc641}.status-badge.completed{background:#e3f9ee;color:#37a072;border:1px solid #34b98642}.type-badge{background:#c9eafb;color:#24446d;border-radius:6px;padding:2px 10px;font-size:.93rem;font-weight:600;border:1px solid #72d5f6}.test-content{display:flex;flex-direction:column;gap:1.05rem}.content-grid{display:flex;gap:2rem}.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.7rem}.form-textarea{background:#f6f6f6;border:1px solid #d4d4e8;border-radius:6px;padding:9px 11px;font-size:1rem;resize:vertical}.readonly-field{background:#e9edf5;padding:5px 14px;border-radius:6px;font-size:1rem;color:#555;border:1px solid #dde6f6;margin-top:.3rem}.file-upload-container{display:flex;align-items:center;gap:.8rem;background:#f7fafc;border-radius:6px;padding:6px 8px;border:1px solid #e7edf8}.file-label{background:#e9edf5;color:#24446d;border-radius:5px;padding:4px 13px;cursor:pointer;font-size:1rem;border:1px solid #24446d21;transition:background .15s}.file-size,.file-info{font-size:.93rem;color:#888}.existing-file a{color:#2662c6;text-decoration:underline}.parameters-section{margin-top:.6rem;background:#f7fafc;border-radius:8px;padding:14px;border:1px solid #e7edf8}.parameters-header{display:flex;justify-content:space-between;align-items:center}.parameters-header h5{font-size:1rem;color:#1d365f;margin:0}.button-add-param{background:#54b4ed;color:#fff;font-weight:500;border:none;border-radius:6px;padding:5px 15px;cursor:pointer;font-size:.97rem;transition:background .16s}.button-add-param:hover{background:#3889c7}.parameters-list{margin-top:.6rem;display:flex;flex-direction:column;gap:.4rem}.parameter-headers{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr 1.5fr .6fr;font-size:.93rem;color:#304b76;font-weight:600;margin-bottom:.3rem;gap:6px}.parameter-row{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr 1.5fr .6fr;gap:6px;align-items:center}.param-input{background:#e9edf5;border:1px solid #c4d6f1;padding:5px 8px;border-radius:5px;font-size:.95rem;transition:border .12s}.param-input[readonly]{color:#888;background:#f6f6f6}.param-input.out-of-range{border:1.5px solid #db3043;background:#fde4e4}.button-delete-param{background:none;border:none;color:#db3043;font-size:1.25rem;cursor:pointer;padding:0 7px;transition:color .18s}.button-delete-param:hover{color:#a8002b}.completion-info{margin-top:.7rem;color:#37a072;font-weight:600}.completion-date{font-size:1rem}.footer-actions{margin-top:2rem;display:flex;justify-content:flex-end}.button-proceed{background:#3262c8;color:#fff;font-weight:600;border:none;border-radius:9px;padding:11px 30px;font-size:1.08rem;cursor:pointer;transition:background .17s;box-shadow:0 1px 3px #44447814}.button-proceed:disabled,.button-proceed[disabled]{background:#9eb8e3;color:#eee;cursor:not-allowed}.button-proceed:hover:not(:disabled){background:#234381}@media (max-width: 900px){.card{max-width:98vw;padding:1rem}.content-grid{flex-direction:column;gap:1rem}.parameter-headers,.parameter-row{grid-template-columns:1.5fr 1fr 1fr 1.3fr 1.5fr .9fr}}@media (max-width: 650px){.card{padding:.8rem}.test-card,.parameters-section{padding:8px}.form-textarea{font-size:.96rem;padding:7px 8px}.footer-actions{margin-top:1.1rem}.parameter-headers,.parameter-row{font-size:.91rem;gap:3px}}.card{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000014;margin:20px auto;max-width:900px;overflow:hidden;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#333}.card-content{padding:30px}h2{color:#2c3e50;font-size:2em;margin-bottom:15px;border-bottom:2px solid #e0e0e0;padding-bottom:10px}.subtitle{color:#666;font-size:1.1em;margin-bottom:25px}.error-message{background-color:#ffebeb;color:#d8000c;border:1px solid #d8000c;padding:12px 20px;border-radius:5px;margin-bottom:25px;font-size:.95em;display:flex;align-items:center;gap:10px}.error-message:before{content:"⚠️";font-size:1.2em}.loading{text-align:center;padding:50px;font-size:1.2em;color:#555}.no-scans{text-align:center;padding:30px;font-size:1.1em;color:#777;background-color:#f9f9f9;border-radius:5px;border:1px dashed #ddd}.form-group label{display:block;margin-bottom:8px;color:#444;font-weight:600;font-size:.95em}input[type=text],input[type=number],textarea,select{width:100%;padding:10px 12px;border:1px solid #ccc;border-radius:5px;font-size:1em;color:#333;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}input[type=text]:focus,textarea:focus,select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff40;outline:none}textarea.form-textarea{resize:vertical;min-height:80px}.readonly-field{background-color:#f0f0f0;padding:10px 12px;border:1px solid #e0e0e0;border-radius:5px;font-size:1em;color:#555;cursor:not-allowed}.file-upload-container{display:flex;align-items:center;gap:10px}.file-label{background-color:#007bff;color:#fff;padding:10px 15px;border-radius:5px;cursor:pointer;transition:background-color .2s ease;flex-grow:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-label:hover{background-color:#0056b3}.file-size{font-size:.85em;color:#777;white-space:nowrap}.scans-list{margin-top:30px;border-top:1px solid #e0e0e0;padding-top:20px}.scans-list h3{color:#2c3e50;font-size:1.5em;margin-bottom:20px}.scan-card{border:1px solid #e0e0e0;border-radius:8px;margin-bottom:25px;padding:20px;background-color:#fdfdfd;transition:all .2s ease-in-out}.scan-card.completed{border-left:5px solid #28a745;background-color:#e9f7ed;opacity:.9}.scan-card:hover:not(.completed){box-shadow:0 6px 16px #0000001a;transform:translateY(-2px)}.scan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;flex-wrap:wrap;gap:10px}.scan-info h4{margin-top:0;margin-bottom:8px;color:#34495e;font-size:1.4em}.scan-details{display:flex;flex-wrap:wrap;gap:15px;font-size:.9em;color:#777}.detail-item{background-color:#f1f1f1;padding:4px 8px;border-radius:4px}.scan-meta{display:flex;gap:10px;align-items:center}.type-badge,.status-badge{padding:5px 10px;border-radius:5px;font-size:.8em;font-weight:700;color:#fff}.type-badge{background-color:#6c757d}.status-badge.advised{background-color:#ffc107;color:#333}.status-badge.performed{background-color:#17a2b8}.status-badge.completed{background-color:#28a745}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}@media (max-width: 600px){.content-grid{grid-template-columns:1fr}}.scan-actions{display:flex;justify-content:flex-end;margin-top:20px;padding-top:15px;border-top:1px solid #f0f0f0}.button-complete{background-color:#007bff;color:#fff;padding:10px 20px;border:none;border-radius:5px;cursor:pointer;font-size:1em;transition:background-color .2s ease}.button-complete:hover{background-color:#0056b3}.completion-info{display:flex;align-items:center;gap:8px;font-size:.9em;color:#28a745;font-weight:500}.footer-actions{margin-top:30px;padding-top:25px;border-top:2px solid #e0e0e0;text-align:right}.button-proceed{background-color:#6a0dad;color:#fff;padding:12px 25px;border:none;border-radius:5px;cursor:pointer;font-size:1.1em;font-weight:600;transition:background-color .2s ease,transform .1s ease}.button-proceed:hover{background-color:#5a0ca0;transform:translateY(-1px)}.button-proceed:disabled{background-color:#ccc;cursor:not-allowed;box-shadow:none;transform:none}.mt-3{margin-top:15px}.mt-4{margin-top:20px}.testscan-container{max-width:540px;margin:40px auto;background:#fff;border-radius:18px;box-shadow:0 4px 32px #0000001a,0 1.5px 6px #0000000a;padding:36px 32px 28px;font-family:Inter,Segoe UI,Arial,sans-serif;color:#222;transition:box-shadow .2s}.testscan-container:hover{box-shadow:0 8px 40px #00000021,0 2px 8px #0000000f}.testscan-header{display:flex;flex-direction:column;gap:8px;margin-bottom:28px}.testscan-header h2{font-size:2rem;font-weight:700;color:#1a237e;margin:0 0 2px;letter-spacing:.01em}.testscan-info{display:flex;gap:32px;font-size:1rem;color:#444}.testscan-info p{margin:0}.testscan-form{display:flex;flex-direction:column;gap:22px}.form-group{display:flex;flex-direction:column;gap:7px}.form-group label{font-weight:600;color:#283593;margin-bottom:2px;font-size:1.05rem}.form-group select,.form-group textarea{border:1.5px solid #c5cae9;border-radius:7px;padding:9px 12px;font-size:1rem;background:#f8fafc;transition:border .2s,box-shadow .2s;outline:none;resize:none}.form-group select:focus,.form-group textarea:focus{border-color:#536dfe;box-shadow:0 0 0 2px #e3e8fd}.form-group textarea{min-height:60px;max-height:160px}.selected-tests{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px;min-height:28px}.selected-tag{display:inline-flex;align-items:center;background:linear-gradient(90deg,#e3f2fd 60%,#f3e5f5);color:#283593;font-weight:500;border-radius:16px;padding:5px 14px 5px 12px;font-size:.98rem;cursor:pointer;border:1px solid #c5cae9;transition:background .18s,color .18s,border .18s;-webkit-user-select:none;user-select:none}.selected-tag:hover{background:linear-gradient(90deg,#bbdefb 60%,#d1c4e9);color:#1a237e;border-color:#7986cb}.form-actions{display:flex;justify-content:flex-end;gap:14px;margin-top:18px}.btn-primary,.btn-secondary{font-size:1.05rem;font-weight:600;border:none;border-radius:7px;padding:10px 28px;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s;box-shadow:0 1px 4px #5050a012}.btn-primary{background:linear-gradient(90deg,#536dfe 60%,#7c4dff);color:#fff}.btn-primary:hover,.btn-primary:focus{background:linear-gradient(90deg,#3d5afe 60%,#651fff);color:#fff}.btn-secondary{background:#e3e8fd;color:#283593}.btn-secondary:hover,.btn-secondary:focus{background:#c5cae9;color:#1a237e}@media (max-width: 700px){.testscan-container{padding:18px 6vw;max-width:98vw}.testscan-header h2{font-size:1.3rem}.testscan-info{flex-direction:column;gap:4px;font-size:.98rem}.form-actions{flex-direction:column;gap:8px}}.combined-surgery-page{max-width:1400px;margin:0 auto;padding:20px;background-color:#fff;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.surgery-page-header{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.surgery-page-title{margin:0 0 8px;color:#1976d2;font-size:28px;font-weight:700;letter-spacing:-.5px}.surgery-page-subtitle{margin:0;color:#666;font-size:16px;font-weight:400}.surgery-section{border:1px solid #e0e0e0;border-radius:12px;padding:24px;background:linear-gradient(145deg,#fafafa,#f5f7fa);margin-bottom:24px;box-shadow:0 3px 12px #00000014;transition:all .3s ease}.surgery-section:hover{box-shadow:0 6px 20px #0000001f;transform:translateY(-2px)}.surgery-section-header{margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid #e3f2fd}.surgery-section-title{margin:0 0 8px;color:#1565c0;font-size:22px;font-weight:600;display:flex;align-items:center;gap:8px}.surgery-section-title:before{content:"";width:4px;height:24px;background:linear-gradient(135deg,#1976d2,#42a5f5);border-radius:2px}.surgery-section-subtitle{margin:0;color:#666;font-size:14px;font-weight:400}.surgery-input-row{display:flex;gap:16px;align-items:flex-start;margin-bottom:20px}.surgery-input-field{flex:1;min-width:180px}.surgery-input-field.narrow{flex:0 0 200px;max-width:200px}.surgery-form-label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.surgery-form-input,.surgery-form-select,.surgery-form-textarea{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;background:#fff;transition:all .2s ease;outline:none;font-family:inherit;box-sizing:border-box}.surgery-form-input:focus,.surgery-form-select:focus,.surgery-form-textarea:focus{border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.surgery-form-input:disabled,.surgery-form-select:disabled,.surgery-form-textarea:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.surgery-form-textarea{resize:vertical;min-height:80px}.surgery-selected-container{margin-top:20px;width:100%}.surgery-selected-header{margin:0 0 12px;color:#333;font-size:16px;font-weight:500}.surgery-selected-list{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}.surgery-selected-empty{color:#999;font-style:italic;font-size:14px;text-align:center;padding:20px;background:#f9f9f9;border-radius:8px;border:2px dashed #ddd;width:100%}.surgery-diagnosis-chip,.surgery-item-chip{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #bbdefb;border-radius:8px;font-size:14px;transition:all .2s ease;max-width:300px}.surgery-diagnosis-chip:hover,.surgery-item-chip:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.surgery-diagnosis-info,.surgery-item-info{flex:1;min-width:0}.surgery-diagnosis-code,.surgery-item-name{color:#1565c0;font-weight:600;margin-right:8px}.surgery-diagnosis-description{color:#333}.surgery-diagnosis-eye,.surgery-item-eye{color:#666;font-size:12px;font-weight:500;background:#ffffffb3;padding:2px 6px;border-radius:4px;margin-left:8px}.surgery-item-details{font-size:12px;color:#666;line-height:1.4;margin-top:4px}.surgery-remove-button{background:none;border:none;color:#d32f2f;cursor:pointer;font-size:16px;font-weight:700;padding:4px 6px;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;margin-left:8px;flex-shrink:0}.surgery-remove-button:hover{background:#f443361a;color:#b71c1c}.surgery-suggestions-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:2px solid #e0e0e0;border-top:none;border-radius:0 0 8px 8px;max-height:240px;overflow-y:auto;z-index:1000;box-shadow:0 8px 24px #00000026;animation:slideDown .2s ease}.surgery-suggestion-item{padding:12px 16px;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:all .15s ease}.surgery-suggestion-item:hover{background:#f8f9fa}.surgery-suggestion-item:last-child{border-bottom:none}.surgery-suggestion-code{font-weight:600;color:#1976d2;font-size:14px}.surgery-suggestion-description{color:#666;font-size:13px;margin-top:2px}.surgery-button{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none;font-family:inherit}.surgery-button-primary{background:linear-gradient(135deg,#1976d2,#42a5f5);color:#fff;box-shadow:0 2px 8px #1976d24d}.surgery-button-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #1976d266}.surgery-button-primary:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.surgery-button-secondary{background:#f5f5f5;color:#666;border:2px solid #e0e0e0}.surgery-button-secondary:hover:not(:disabled){background:#e8e8e8;border-color:#ccc}.surgery-status-message{padding:16px;border-radius:8px;margin-bottom:20px;font-size:14px;display:flex;align-items:center;gap:8px}.surgery-status-success{background:linear-gradient(135deg,#e8f5e8,#f1f8e9);border:1px solid #4caf50;color:#2e7d32}.surgery-status-error{background:linear-gradient(135deg,#ffebee,#fce4ec);border:1px solid #f44336;color:#d32f2f}.surgery-status-loading{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #2196f3;color:#1565c0;display:flex;align-items:center;justify-content:center;gap:12px}.surgery-spinner{width:20px;height:20px;border:2px solid #f3f3f3;border-top:2px solid #1976d2;border-radius:50%;animation:spin 1s linear infinite}.surgery-section-divider{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding-top:20px;border-top:1px solid #e0e0e0}.surgery-action-buttons{display:flex;gap:12px}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.combined-surgery-page{padding:16px}.surgery-section{padding:20px;margin-bottom:20px}.surgery-input-row{flex-direction:column;gap:16px}.surgery-input-field.narrow{flex:1;max-width:100%}.surgery-selected-list{gap:8px}.surgery-diagnosis-chip,.surgery-item-chip{max-width:100%;flex-direction:column;align-items:flex-start;gap:8px}.surgery-remove-button{align-self:flex-end}.surgery-section-title{font-size:20px}.surgery-page-title{font-size:24px}}@media (max-width: 480px){.surgery-section{padding:16px;margin-bottom:16px}.surgery-section-title{font-size:18px}.surgery-page-title{font-size:22px}.surgery-form-input,.surgery-form-select,.surgery-form-textarea{padding:10px 14px}.surgery-button{padding:10px 20px;font-size:13px}.surgery-action-buttons{flex-direction:column}.surgery-section-divider{flex-direction:column;gap:16px;align-items:stretch}}.surgery-form-input:focus,.surgery-form-select:focus,.surgery-form-textarea:focus,.surgery-button:focus{outline:2px solid #1976d2;outline-offset:2px}@media print{.combined-surgery-page{background:#fff;box-shadow:none}.surgery-section{border:1px solid #000;box-shadow:none;page-break-inside:avoid}.surgery-button{display:none}}.billing-modern-overlay{position:fixed;inset:0;background:#1e293bbf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.billing-modern-modal{background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000040;max-width:900px;width:100%;max-height:90vh;overflow:hidden;position:relative;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.billing-close-btn{position:absolute;top:15px;right:20px;background:#ef4444;color:#fff;border:none;width:35px;height:35px;border-radius:50%;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s ease}.billing-close-btn:hover{background:#dc2626;transform:scale(1.1)}.billing-modern-container{padding:25px 30px;max-height:90vh;overflow-y:auto;font-family:Inter,Segoe UI,sans-serif}.billing-modern-container::-webkit-scrollbar{width:6px}.billing-modern-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.billing-modern-container::-webkit-scrollbar-thumb{background:#2563eb;border-radius:3px}.billing-modern-container::-webkit-scrollbar-thumb:hover{background:#1d4ed8}.billing-modern-header{margin-bottom:25px;text-align:center}.billing-modern-header h3{color:#2563eb;font-weight:800;font-size:1.8rem;margin:0;background:linear-gradient(135deg,#2563eb,#1e40af);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.billing-modern-form{display:flex;flex-direction:column;gap:20px}.billing-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.billing-form-column{display:flex;flex-direction:column;gap:16px}.billing-form-group{display:flex;flex-direction:column;gap:6px}.billing-form-group label{font-weight:600;color:#374151;font-size:.9rem}.billing-form-control{padding:12px 16px;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;transition:all .2s ease;background:#fafafa;font-family:inherit}.billing-form-control:focus{outline:none;border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px #2563eb1a}.billing-form-control[readonly]{background:#f1f5f9;color:#6b7280;cursor:not-allowed}.billing-form-control:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.billing-textarea{resize:vertical;min-height:80px;font-family:inherit}.billing-tpa-amount{background:linear-gradient(135deg,#ecfdf5,#d1fae5)!important;border-color:#10b981!important;color:#047857!important;font-weight:700!important}.billing-tpa-note{font-size:.8rem;color:#059669;font-weight:600;font-style:italic}.billing-tpa-coverage{color:#059669!important;font-weight:800!important;background:linear-gradient(135deg,#10b981,#059669);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.billing-amount-summary{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px solid #e5e7eb;border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:12px}.billing-summary-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.billing-summary-item:not(:last-child){border-bottom:1px solid #e5e7eb}.billing-amount-value{font-weight:800;font-size:1.2rem;color:#1f2937}.billing-paid-input{max-width:150px;margin-left:auto;text-align:right;font-weight:600}.billing-error-msg{background:#fef2f2;border:2px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:12px;font-weight:600;text-align:center}.billing-form-actions{display:flex;gap:16px;justify-content:center;padding-top:20px;border-top:2px solid #f1f5f9}.billing-save-print-btn,.billing-save-btn{padding:14px 28px;border-radius:14px;font-weight:700;font-size:1rem;cursor:pointer;border:none;color:#fff;transition:all .3s ease;display:flex;align-items:center;gap:8px;min-width:140px;justify-content:center}.billing-save-print-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 20px #2563eb4d}.billing-save-print-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 8px 25px #1d4ed866;transform:translateY(-2px)}.billing-save-btn{background:linear-gradient(135deg,#64748b,#475569);box-shadow:0 6px 20px #64748b4d}.billing-save-btn:hover{background:linear-gradient(135deg,#475569,#334155);box-shadow:0 8px 25px #47556966;transform:translateY(-2px)}.billing-save-print-btn:disabled,.billing-save-btn:disabled{background:#d1d5db;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.billing-modern-overlay{padding:10px}.billing-modern-container{padding:20px}.billing-form-grid{grid-template-columns:1fr;gap:20px}.billing-form-actions{flex-direction:column}.billing-save-print-btn,.billing-save-btn{width:100%}.billing-amount-summary{padding:15px}.billing-summary-item{flex-direction:column;align-items:flex-start;gap:4px}.billing-paid-input{max-width:100%;margin-left:0}}@media (max-width: 480px){.billing-modern-header h3{font-size:1.5rem}.billing-form-control{padding:10px 12px;font-size:.95rem}.billing-save-print-btn,.billing-save-btn{padding:12px 20px;font-size:.9rem}}.billing-form-group{animation:fadeInUp .3s ease-out;animation-fill-mode:both}.billing-form-group:nth-child(1){animation-delay:.1s}.billing-form-group:nth-child(2){animation-delay:.15s}.billing-form-group:nth-child(3){animation-delay:.2s}.billing-form-group:nth-child(4){animation-delay:.25s}.billing-form-group:nth-child(5){animation-delay:.3s}.billing-form-group:nth-child(6){animation-delay:.35s}.billing-save-print-btn:disabled:after,.billing-save-btn:disabled:after{content:"";width:16px;height:16px;border:2px solid transparent;border-top:2px solid #ffffff;border-radius:50%;animation:spin 1s linear infinite;margin-left:8px}.billing-net-amount{color:#059669!important;font-weight:900!important;font-size:1.3rem!important;background:linear-gradient(135deg,#10b981,#047857);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.billing-amount-summary .billing-summary-item:last-child{border-top:2px solid #10b981;padding-top:16px;margin-top:8px;font-size:1.1rem;font-weight:700}:root{--primary: #2b7cff;--primary-dark: #184e99;--accent: #24b47e;--danger: #e85656;--gray-bg: #f6f7fb;--card-bg: rgba(255,255,255,.79);--text: #23272f;--subtext: #8190a7;--border: #e4e7ef;--shadow: 0 8px 32px rgba(16, 61, 200, .1);--font-main: "Inter", "Segoe UI", Arial, Helvetica, sans-serif;--radius: 16px}body{font-family:var(--font-main);background:linear-gradient(120deg,#e8ecfc 25%,#f5f8fd);color:var(--text)}.update-charges-container{max-width:880px;margin:40px auto;padding:32px 26px 40px;background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.bill-header{padding-bottom:20px;margin-bottom:18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:transparent}.header-info{display:flex;flex-wrap:wrap;align-items:center;gap:28px}.bill-number,.case-id,.date-time{font-size:16px;color:var(--subtext)}.highlight{color:var(--primary);font-weight:600}.charges-container{margin-top:10px;display:flex;flex-direction:column;gap:30px}.test-section{background:linear-gradient(92deg,#f2f6ff,#e2ecffb3);border-radius:var(--radius);box-shadow:0 2px 12px #2148b20a;padding:18px 24px 12px;margin-bottom:2px;transition:box-shadow .2s;border-left:5px solid var(--primary)}.test-section:hover{box-shadow:0 6px 32px #5c89ff1a;border-left-color:var(--accent)}.test-title{font-size:19px;font-weight:600;color:var(--primary-dark);margin-bottom:4px;letter-spacing:.02em}.input-row{display:flex;gap:18px;margin-bottom:7px}.input-group{flex:1;min-width:105px}.form-input{width:100%;padding:8px 13px;background:#f3f6fa;border:1.7px solid #dde6f6;border-radius:8px;font-size:15px;color:var(--text);outline:none;transition:border-color .18s;box-sizing:border-box}.form-input:focus{border-color:var(--primary);background:#eaf0fb;box-shadow:0 0 0 2px #2b7cff14}.date-input{padding-left:7px;letter-spacing:.01em}.test-info{font-size:12px;color:var(--subtext)}.status{color:var(--accent);text-transform:capitalize;font-weight:500}.summary-section{margin:20px 0 12px;padding:22px 19px;border-radius:13px;background:linear-gradient(100deg,#f6fcff80,#eef3fa 95%);box-shadow:0 1px 10px #d8e8fa07}.summary-row{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;align-items:center}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-item label{color:var(--subtext);font-size:14px}.summary-value{color:var(--primary-dark);font-weight:700;font-size:16px}.summary-input{font-size:15px;padding:7px 11px;border:1.7px solid #dde6f6;border-radius:7px;background:#f9fbfe;color:var(--primary-dark);outline:none;transition:border .14s}.summary-input:focus{border:1.7px solid var(--accent);background:#eaf5f3}.net-amount{color:var(--accent);font-size:18px;font-weight:800}.action-buttons{margin-top:28px;display:flex;justify-content:flex-end;gap:18px}.back-btn,.generate-bill-btn{font-size:16px;font-weight:500;border:none;border-radius:7px;padding:9px 24px;cursor:pointer;transition:background .15s,color .13s,box-shadow .15s;box-shadow:0 1.5px 6px #4077ff0e;outline:none;position:relative;overflow:hidden}.back-btn{background:var(--gray-bg);color:var(--primary-dark)}.back-btn:hover{background:#e2e8fa;color:var(--danger)}.generate-bill-btn{background:var(--primary);color:#fff;font-weight:600}.generate-bill-btn:hover,.generate-bill-btn:focus{background:var(--accent);color:#fff;box-shadow:0 2px 16px #24b47e24}.back-btn:focus,.generate-bill-btn:focus{outline:2px solid var(--primary)}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:var(--radius);padding:0;max-width:600px;width:90vw;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#f8faff,#e8f0fe)}.modal-header h3{margin:0;color:var(--primary-dark);font-size:20px;font-weight:600}.modal-close-btn{background:none;border:none;font-size:28px;color:var(--subtext);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.modal-close-btn:hover{background:#e856561a;color:var(--danger)}.billing-form{padding:24px}.billing-row{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}.billing-field{flex:1;min-width:200px}.billing-field.full-width{flex:1 1 100%}.billing-field label{display:block;margin-bottom:6px;color:var(--subtext);font-size:14px;font-weight:500}.billing-input,.billing-select,.billing-textarea{width:100%;padding:10px 14px;border:1.5px solid #dde6f6;border-radius:8px;font-size:15px;color:var(--text);background:#f9fbfe;outline:none;transition:all .2s;box-sizing:border-box}.billing-input:focus,.billing-select:focus,.billing-textarea:focus{border-color:var(--primary);background:#eaf0fb;box-shadow:0 0 0 3px #2b7cff1a}.billing-textarea{resize:vertical;min-height:80px}.modal-actions{padding:20px 24px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:12px;background:#fafbfc}.cancel-btn,.submit-btn{padding:10px 20px;border-radius:7px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.cancel-btn{background:var(--gray-bg);color:var(--subtext)}.cancel-btn:hover{background:#e2e8fa;color:var(--danger)}.submit-btn{background:var(--primary);color:#fff}.submit-btn:hover{background:var(--accent);box-shadow:0 2px 16px #24b47e33}.submit-btn:disabled{background:#ccc;cursor:not-allowed}.loading,.error,.no-tests{display:flex;align-items:center;justify-content:center;margin:48px auto;font-size:22px;font-weight:500;color:var(--primary-dark);min-height:66px}.loading:before{content:"";display:inline-block;width:23px;height:23px;border:3.4px solid #cfe4fe;border-top:3.4px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-right:15px}.error{color:var(--danger)}.no-tests{color:#babcbd}@media (max-width: 700px){.update-charges-container{padding:12px 2vw 36px;max-width:97vw}.bill-header{flex-direction:column;align-items:flex-start;gap:12px}.header-info{gap:8px}.charges-container{gap:16px}.test-section{padding:12px 10px}.input-row{gap:9px;flex-wrap:wrap}.summary-section{padding:13px 7px}.summary-row{gap:10px}.action-buttons{gap:8px;flex-wrap:wrap}.modal-content{width:95vw;margin:10px}.billing-row{flex-direction:column;gap:12px}.billing-field{min-width:auto}.modal-actions{flex-direction:column;gap:8px}.cancel-btn,.submit-btn{width:100%}}:root{--advice-primary-color: #1e40af;--advice-primary-hover: #1e3a8a;--advice-primary-light: #dbeafe;--advice-primary-lighter: #eff6ff;--advice-success-color: #10b981;--advice-success-hover: #059669;--advice-danger-color: #ef4444;--advice-danger-hover: #dc2626;--advice-warning-color: #f59e0b;--advice-info-color: #3b82f6;--advice-blue-50: #eff6ff;--advice-blue-100: #dbeafe;--advice-blue-500: #3b82f6;--advice-blue-600: #2563eb;--advice-blue-700: #1d4ed8;--advice-blue-800: #1e40af;--advice-blue-900: #1e3a8a;--advice-text-primary: #1f2937;--advice-text-secondary: #6b7280;--advice-text-muted: #9ca3af;--advice-border-color: #e5e7eb;--advice-bg-white: #ffffff;--advice-bg-gray-50: #f9fafb;--advice-bg-gray-100: #f3f4f6;--advice-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--advice-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--advice-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--advice-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--advice-radius-sm: 6px;--advice-radius-md: 8px;--advice-radius-lg: 12px;--advice-radius-xl: 16px;--advice-transition: all .2s cubic-bezier(.4, 0, .2, 1)}.advice_page{padding:24px;max-width:1600px;margin:0 auto;background:linear-gradient(135deg,#1e40af,#3b82f6,#60a5fa);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.advice_header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:24px 32px;background:var(--advice-bg-white);border-radius:var(--advice-radius-lg);box-shadow:var(--advice-shadow-lg);border-bottom:4px solid var(--advice-blue-600)}.advice_header h2{margin:0;color:var(--advice-text-primary);font-weight:700;font-size:28px;display:flex;align-items:center;gap:12px}.advice_header h2:before{content:"💊";font-size:32px}.advice_page-subtitle{color:var(--advice-text-secondary);font-size:14px;margin-top:8px;font-weight:400}.advice_store-info{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,var(--advice-blue-50) 0%,var(--advice-blue-100) 100%);border-radius:var(--advice-radius-md);border:2px solid var(--advice-blue-600)}.advice_store-label{font-size:14px;color:var(--advice-text-secondary);font-weight:500}.advice_store-label strong{color:var(--advice-blue-700);font-weight:700;font-size:16px}.advice_patient-info-section{background:var(--advice-bg-white);border-radius:var(--advice-radius-lg);padding:24px;margin-bottom:24px;box-shadow:var(--advice-shadow-md);border-left:4px solid var(--advice-info-color)}.advice_patient-info-section h3{margin:0 0 16px;color:var(--advice-text-primary);font-weight:700;font-size:18px;display:flex;align-items:center;gap:8px}.advice_patient-info-section h3:before{content:"👤";font-size:20px}.advice_patient-info-section>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.advice_patient-info-section>div>div{padding:12px 16px;background:var(--advice-bg-gray-50);border-radius:var(--advice-radius-sm);border:1px solid var(--advice-border-color);transition:var(--advice-transition)}.advice_patient-info-section>div>div:hover{background:var(--advice-blue-50);border-color:var(--advice-blue-500);transform:translateY(-2px);box-shadow:var(--advice-shadow-sm)}.advice_patient-info-section strong{display:block;color:var(--advice-text-secondary);font-size:12px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-weight:600}.advice_template-section{background:var(--advice-bg-white);border-radius:var(--advice-radius-lg);padding:24px;margin-bottom:24px;box-shadow:var(--advice-shadow-md);border-top:3px solid var(--advice-blue-600)}.advice_template-container{display:flex;flex-direction:column;gap:16px}.advice_template-container label{font-weight:600;color:var(--advice-text-primary);font-size:15px;margin-bottom:8px}.advice_template-select{width:100%;padding:14px 16px;border:2px solid var(--advice-border-color);border-radius:var(--advice-radius-md);font-size:15px;background:var(--advice-bg-white);color:var(--advice-text-primary);transition:var(--advice-transition);cursor:pointer;font-weight:500}.advice_template-select:hover{border-color:var(--advice-blue-500)}.advice_template-select:focus{outline:none;border-color:var(--advice-blue-600);box-shadow:0 0 0 3px var(--advice-blue-100)}.advice_template-info{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(135deg,var(--advice-blue-50) 0%,var(--advice-blue-100) 100%);border-radius:var(--advice-radius-md);border:2px solid var(--advice-blue-500)}.advice_template-badge{font-size:14px;font-weight:600;color:var(--advice-blue-700);display:flex;align-items:center;gap:8px}.advice_template-badge:before{content:"📋";font-size:16px}.advice_clear-template-btn{background:var(--advice-danger-color);color:#fff;border:none;padding:8px 16px;border-radius:var(--advice-radius-sm);cursor:pointer;font-size:13px;font-weight:600;transition:var(--advice-transition)}.advice_clear-template-btn:hover{background:var(--advice-danger-hover);transform:translateY(-1px);box-shadow:var(--advice-shadow-sm)}.advice_table-section{background:var(--advice-bg-white);border-radius:var(--advice-radius-lg);padding:24px;margin-bottom:24px;box-shadow:var(--advice-shadow-md)}.advice_table-container{overflow-x:auto;overflow-y:visible;margin-bottom:20px;border-radius:var(--advice-radius-md);border:1px solid var(--advice-border-color)}.advice_table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px;position:relative}.advice_table thead{position:sticky;top:0;z-index:10}.advice_table th{background:linear-gradient(135deg,var(--advice-blue-700) 0%,var(--advice-blue-800) 100%);color:#fff;padding:16px 12px;text-align:left;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-bottom:3px solid var(--advice-blue-600)}.advice_table th:first-child{border-top-left-radius:var(--advice-radius-md)}.advice_table th:last-child{border-top-right-radius:var(--advice-radius-md)}.advice_table tbody td{padding:0;border-bottom:1px solid var(--advice-border-color);vertical-align:middle;background:var(--advice-bg-white);transition:var(--advice-transition)}.advice_table tbody tr:hover td{background:var(--advice-blue-50)}.advice_table tbody tr:last-child td{border-bottom:none}.advice_table tbody td:first-child{overflow:visible!important;min-width:250px;padding:0;vertical-align:top}.advice_medicine-cell-wrapper{position:relative;width:100%;min-height:100%;padding:12px}.advice_select,.advice_instruction-input{width:100%;padding:10px 12px;border:2px solid var(--advice-border-color);border-radius:var(--advice-radius-sm);font-size:14px;background:var(--advice-bg-white);color:var(--advice-text-primary);transition:var(--advice-transition);font-weight:500;margin:8px}.advice_select:focus,.advice_instruction-input:focus{outline:none;border-color:var(--advice-blue-600);box-shadow:0 0 0 3px var(--advice-blue-100)}.advice_select:disabled{background:var(--advice-bg-gray-100);color:var(--advice-text-muted);cursor:not-allowed;opacity:.6}.advice_duration-container{display:flex;gap:8px;padding:8px}.advice_duration-container select{flex:1;min-width:80px;margin:0}.advice_taper-container{display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px}.advice_taper-btn{background:linear-gradient(135deg,var(--advice-blue-600) 0%,var(--advice-blue-700) 100%);color:#fff;border:none;padding:10px 16px;border-radius:var(--advice-radius-sm);cursor:pointer;font-size:13px;font-weight:600;transition:var(--advice-transition);white-space:nowrap;box-shadow:var(--advice-shadow-sm)}.advice_taper-btn:hover{background:linear-gradient(135deg,var(--advice-blue-700) 0%,var(--advice-blue-800) 100%);transform:translateY(-2px);box-shadow:var(--advice-shadow-md)}.advice_taper-summary{font-size:11px;color:var(--advice-success-color);font-weight:700;background:#d1fae5;padding:4px 8px;border-radius:var(--advice-radius-sm)}.advice_remove-btn{background:none;border:none;cursor:pointer;font-size:20px;padding:8px;border-radius:var(--advice-radius-sm);transition:var(--advice-transition);display:flex;align-items:center;justify-content:center;margin:8px}.advice_remove-btn:hover:not(:disabled){background:#fee2e2;transform:scale(1.1)}.advice_remove-btn:disabled{opacity:.3;cursor:not-allowed}.advice_medicine-search-container{position:static;min-width:250px;width:100%}.advice_medicine-search-input{width:100%;padding:12px 16px;border:2px solid var(--advice-border-color);border-radius:var(--advice-radius-md);font-size:14px;background:var(--advice-bg-white);color:var(--advice-text-primary);transition:var(--advice-transition);font-weight:500;box-sizing:border-box}.advice_medicine-search-input:focus{outline:none;border-color:var(--advice-blue-600);box-shadow:0 0 0 3px var(--advice-blue-100)}.advice_medicine-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:350px;width:auto;max-width:600px;max-height:320px;overflow-y:auto;overflow-x:hidden;background:var(--advice-bg-white);border:2px solid var(--advice-blue-600);border-radius:var(--advice-radius-md);z-index:1050;box-shadow:var(--advice-shadow-xl)}.advice_medicine-dropdown::-webkit-scrollbar{width:8px}.advice_medicine-dropdown::-webkit-scrollbar-track{background:var(--advice-bg-gray-50);border-radius:var(--advice-radius-sm)}.advice_medicine-dropdown::-webkit-scrollbar-thumb{background:var(--advice-blue-600);border-radius:var(--advice-radius-sm)}.advice_medicine-option{padding:14px 16px;cursor:pointer;border-bottom:1px solid var(--advice-border-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;gap:12px;transition:var(--advice-transition);font-weight:500;color:var(--advice-text-primary)}.advice_medicine-option:hover,.advice_medicine-option-focused{background:linear-gradient(135deg,var(--advice-blue-50) 0%,var(--advice-blue-100) 100%);border-left:4px solid var(--advice-blue-600);padding-left:12px}.advice_medicine-option:last-child{border-bottom:none}.advice_medicine-option span:last-child{background:var(--advice-success-color);color:#fff;padding:4px 10px;border-radius:var(--advice-radius-sm);font-size:11px;font-weight:700;box-shadow:var(--advice-shadow-sm)}.advice_medicine-empty{padding:14px 16px;color:var(--advice-text-muted);text-align:center;font-style:italic}.advice_add-row-btn{background:linear-gradient(135deg,var(--advice-success-color) 0%,#059669 100%);color:#fff;border:none;padding:14px 28px;border-radius:var(--advice-radius-md);cursor:pointer;font-size:15px;font-weight:700;transition:var(--advice-transition);box-shadow:var(--advice-shadow-md);display:flex;align-items:center;gap:8px}.advice_add-row-btn:before{content:"➕";font-size:16px}.advice_add-row-btn:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:var(--advice-shadow-lg)}.advice_form-sections{display:grid;gap:20px;margin-bottom:20px}.advice_comments-section{background:var(--advice-bg-white);padding:24px;border-radius:var(--advice-radius-lg);box-shadow:var(--advice-shadow-md);border-left:4px solid var(--advice-info-color)}.advice_comments-section label{display:block;margin-bottom:12px;font-weight:700;color:var(--advice-text-primary);font-size:15px}.advice_comments-section textarea{width:100%;padding:14px 16px;border:2px solid var(--advice-border-color);border-radius:var(--advice-radius-md);font-size:14px;font-family:inherit;resize:vertical;min-height:120px;transition:var(--advice-transition);color:var(--advice-text-primary);line-height:1.6}.advice_comments-section textarea:focus{outline:none;border-color:var(--advice-blue-600);box-shadow:0 0 0 3px var(--advice-blue-100)}.advice_submit-section{display:flex;gap:16px;justify-content:flex-end;margin-top:32px;padding:24px 0}.advice_back-btn,.advice_submit-btn{padding:14px 32px;border-radius:var(--advice-radius-md);border:none;font-size:16px;font-weight:700;cursor:pointer;transition:var(--advice-transition);box-shadow:var(--advice-shadow-md);display:flex;align-items:center;gap:10px}.advice_back-btn{background:var(--advice-bg-white);color:var(--advice-text-primary);border:2px solid var(--advice-border-color)}.advice_back-btn:hover:not(:disabled){background:var(--advice-bg-gray-50);border-color:var(--advice-text-secondary);transform:translate(-4px)}.advice_submit-btn{background:linear-gradient(135deg,var(--advice-blue-600) 0%,var(--advice-blue-700) 100%);color:#fff}.advice_submit-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--advice-blue-700) 0%,var(--advice-blue-800) 100%);transform:translateY(-2px);box-shadow:var(--advice-shadow-lg)}.advice_submit-btn:disabled,.advice_back-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.advice_modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:2000;padding:20px;animation:adviceFadeIn .2s ease}@keyframes adviceFadeIn{0%{opacity:0}to{opacity:1}}.advice_modal-container{background:var(--advice-bg-white);border-radius:var(--advice-radius-xl);box-shadow:var(--advice-shadow-xl);max-height:90vh;overflow-y:auto;width:100%;max-width:1100px;animation:adviceSlideUp .3s cubic-bezier(.4,0,.2,1)}@keyframes adviceSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.advice_modal-large{max-width:1300px}.advice_modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:3px solid var(--advice-blue-600);background:linear-gradient(135deg,var(--advice-blue-600) 0%,var(--advice-blue-700) 100%);border-radius:var(--advice-radius-xl) var(--advice-radius-xl) 0 0}.advice_modal-header h2{margin:0;color:#fff;font-weight:700;font-size:24px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.advice_modal-close-btn{background:#fff3;border:none;font-size:28px;cursor:pointer;color:#fff;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--advice-transition);font-weight:300}.advice_modal-close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.advice_modal-content{padding:32px}.advice_form-group{margin-bottom:24px}.advice_form-group label{display:block;margin-bottom:10px;font-weight:700;color:var(--advice-text-primary);font-size:15px}.advice_medicine-name-input{width:100%;padding:14px 16px;border:2px solid var(--advice-border-color);border-radius:var(--advice-radius-md);font-size:15px;background:var(--advice-bg-gray-50);color:var(--advice-text-primary);font-weight:600;cursor:not-allowed}.advice_taper-by-section{margin-bottom:28px;padding:20px;background:linear-gradient(135deg,var(--advice-blue-50) 0%,var(--advice-blue-100) 100%);border-radius:var(--advice-radius-md);border:2px solid var(--advice-blue-500)}.advice_taper-by-section>label{display:block;margin-bottom:16px;font-weight:700;color:var(--advice-text-primary);font-size:16px}.advice_radio-group{display:flex;gap:24px;margin-bottom:14px}.advice_radio-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:500;padding:10px 16px;border-radius:var(--advice-radius-sm);transition:var(--advice-transition);background:#ffffff80}.advice_radio-label:hover{background:#fffc}.advice_radio-label input[type=radio]{margin:0;width:18px;height:18px;cursor:pointer;accent-color:var(--advice-blue-600)}.advice_radio-label span{color:var(--advice-text-primary);font-size:15px}.advice_note{font-size:13px;color:var(--advice-danger-color);font-style:italic;margin-top:12px;padding:10px 14px;background:#fee2e2;border-radius:var(--advice-radius-sm);border-left:4px solid var(--advice-danger-color)}.advice_note strong{color:var(--advice-danger-color);font-weight:700}.advice_taper-table-container{overflow-x:auto;margin-bottom:24px;border:2px solid var(--advice-border-color);border-radius:var(--advice-radius-md);box-shadow:var(--advice-shadow-sm)}.advice_taper-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;min-width:900px}.advice_taper-table th{background:linear-gradient(135deg,var(--advice-blue-700) 0%,var(--advice-blue-800) 100%);color:#fff;padding:14px 10px;text-align:center;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-bottom:3px solid var(--advice-blue-600)}.advice_taper-table th:first-child{border-top-left-radius:var(--advice-radius-md)}.advice_taper-table th:last-child{border-top-right-radius:var(--advice-radius-md)}.advice_taper-table td{padding:12px 10px;border-bottom:1px solid var(--advice-border-color);vertical-align:middle;text-align:center;background:var(--advice-bg-white);transition:var(--advice-transition)}.advice_taper-table tr:hover td{background:var(--advice-blue-50)}.advice_taper-table tr:last-child td{border-bottom:none}.advice_sr-no{font-weight:700;color:var(--advice-blue-700);font-size:16px;width:70px}.advice_taper-table input{width:100%;padding:10px 12px;border:2px solid var(--advice-border-color);border-radius:var(--advice-radius-sm);font-size:13px;text-align:center;transition:var(--advice-transition);font-weight:500;color:var(--advice-text-primary)}.advice_taper-table input:focus{outline:none;border-color:var(--advice-blue-600);box-shadow:0 0 0 3px var(--advice-blue-100)}.advice_number-input{width:90px!important}.advice_date-input{width:150px!important}.advice_time-input{width:110px!important}.advice_interval-input{width:80px!important}.advice_interval-container{display:flex;align-items:center;justify-content:center}.advice_delete-btn{background:none;border:none;cursor:pointer;font-size:18px;padding:8px;border-radius:var(--advice-radius-sm);transition:var(--advice-transition)}.advice_delete-btn:hover:not(:disabled){background:#fee2e2;transform:scale(1.15)}.advice_delete-btn:disabled{opacity:.3;cursor:not-allowed}.advice_add-taper-row-btn{background:linear-gradient(135deg,var(--advice-success-color) 0%,#059669 100%);color:#fff;border:none;padding:12px 24px;border-radius:var(--advice-radius-md);cursor:pointer;font-size:14px;font-weight:700;margin-bottom:28px;transition:var(--advice-transition);box-shadow:var(--advice-shadow-md);display:inline-flex;align-items:center;gap:8px}.advice_add-taper-row-btn:before{content:"➕";font-size:14px}.advice_add-taper-row-btn:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:var(--advice-shadow-lg)}.advice_modal-actions{display:flex;gap:16px;justify-content:flex-end;padding-top:24px;border-top:2px solid var(--advice-border-color)}.advice_save-btn,.advice_cancel-btn{padding:14px 32px;border:none;border-radius:var(--advice-radius-md);cursor:pointer;font-size:15px;font-weight:700;transition:var(--advice-transition);box-shadow:var(--advice-shadow-md)}.advice_save-btn{background:linear-gradient(135deg,var(--advice-blue-600) 0%,var(--advice-blue-700) 100%);color:#fff}.advice_save-btn:hover{background:linear-gradient(135deg,var(--advice-blue-700) 0%,var(--advice-blue-800) 100%);transform:translateY(-2px);box-shadow:var(--advice-shadow-lg)}.advice_cancel-btn{background:var(--advice-bg-gray-100);color:var(--advice-text-primary);border:2px solid var(--advice-border-color)}.advice_cancel-btn:hover{background:var(--advice-bg-gray-50);border-color:var(--advice-text-secondary)}.advice_error-message,.advice_status{padding:16px 20px;border-radius:var(--advice-radius-md);margin-bottom:24px;font-weight:600;box-shadow:var(--advice-shadow-sm)}.advice_error-message{background:linear-gradient(135deg,#fee2e2,#fecaca);color:var(--advice-danger-color);border:2px solid var(--advice-danger-color);border-left:6px solid var(--advice-danger-color)}.advice_status{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:var(--advice-success-color);border:2px solid var(--advice-success-color);border-left:6px solid var(--advice-success-color)}.advice_status strong{font-size:16px}.advice_loading-spinner{display:flex;align-items:center;justify-content:center;padding:32px;background:var(--advice-bg-white);border-radius:var(--advice-radius-md);box-shadow:var(--advice-shadow-md)}.advice_loading-spinner:before{content:"";border:4px solid var(--advice-bg-gray-100);border-top:4px solid var(--advice-blue-600);border-radius:50%;width:40px;height:40px;animation:adviceSpin 1s linear infinite;margin-right:16px}@keyframes adviceSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.advice_step-indicator{background:var(--advice-bg-white);border-radius:var(--advice-radius-lg);padding:20px;margin-bottom:24px;box-shadow:var(--advice-shadow-md)}.advice_step-indicator h4{margin:0 0 16px;color:var(--advice-text-primary);font-weight:700}.advice_steps{display:flex;gap:16px;align-items:center}.advice_step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1}.advice_step-number{width:36px;height:36px;border-radius:50%;background:var(--advice-bg-gray-200);color:var(--advice-text-muted);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px}.advice_step-active .advice_step-number{background:var(--advice-blue-600);color:#fff}.advice_step-completed .advice_step-number{background:var(--advice-success-color);color:#fff}.advice_step-name{font-size:13px;color:var(--advice-text-secondary);text-align:center}@media (max-width: 1200px){.advice_page{padding:16px}.advice_header{padding:20px 24px}.advice_header h2{font-size:24px}}@media (max-width: 768px){.advice_page{padding:12px}.advice_header{flex-direction:column;gap:16px;text-align:center;padding:16px}.advice_header h2{font-size:20px}.advice_patient-info-section>div{grid-template-columns:1fr}.advice_table-container{font-size:12px}.advice_table th,.advice_table td{padding:8px 6px}.advice_select,.advice_instruction-input{font-size:12px;padding:8px 10px}.advice_medicine-dropdown{position:fixed;left:12px;right:12px;width:auto!important;max-width:none!important;max-height:50vh}.advice_medicine-option{white-space:normal;padding:12px}.advice_submit-section{flex-direction:column}.advice_submit-btn,.advice_back-btn{width:100%;justify-content:center}.advice_modal-container{margin:12px;max-height:95vh}.advice_modal-header{padding:16px 20px}.advice_modal-header h2{font-size:18px}.advice_modal-content{padding:20px}.advice_radio-group{flex-direction:column;gap:12px}.advice_modal-actions{flex-direction:column-reverse}.advice_save-btn,.advice_cancel-btn{width:100%}}@media (max-width: 480px){.advice_header h2:before{display:none}.advice_taper-table{font-size:11px}.advice_taper-table input{padding:8px 6px;font-size:11px}}.hospital-header{width:100%;max-width:800px;margin:0 auto;padding:20px;font-family:Arial,sans-serif;border:2px solid #ccc;background-color:#fff;position:relative;min-height:400px}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:12px;color:#333}.regd-no,.cell-numbers{font-weight:400}.hospital-name{text-align:center;font-size:28px;font-weight:700;color:#d32f2f;letter-spacing:2px;margin:15px 0;text-transform:uppercase}.hospital-address{text-align:center;font-size:14px;color:#333;margin:10px 0;line-height:1.4}.hospital-address strong{font-weight:700}.doctor-info{text-align:center;margin:15px 0;padding-bottom:20px;border-bottom:1px solid #d32f2f}.doctor-name{color:#d32f2f;font-size:16px;font-weight:700;margin-right:10px}.qualifications{color:#2e7d32;font-size:14px;font-weight:400}.medical-symbol{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1}.medical-cross{position:relative;width:120px;height:120px;opacity:.15}.cross-horizontal,.cross-vertical{position:absolute;background-color:#d32f2f}.cross-horizontal{width:120px;height:40px;top:40px;left:0}.cross-vertical{width:40px;height:120px;top:0;left:40px}.caduceus{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.caduceus-staff{width:3px;height:60px;background-color:#d32f2f;position:absolute;left:50%;transform:translate(-50%)}.caduceus-wings-left,.caduceus-wings-right{position:absolute;top:10px;width:20px;height:10px;background-color:#d32f2f;border-radius:10px 10px 0 0}.caduceus-wings-left{left:-15px;transform:rotate(-30deg)}.caduceus-wings-right{right:-15px;transform:rotate(30deg)}.caduceus-snakes{position:absolute;top:15px;left:-8px;width:16px;height:40px;border:2px solid #d32f2f;border-radius:50%;border-left:none;border-right:none}.reference-date-section{position:absolute;bottom:20px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:center;font-size:14px;color:#333}.reference-field,.date-field{display:flex;align-items:center}.label{margin-right:8px;font-weight:400}.dots{margin:0 5px;letter-spacing:1px}.value{border-bottom:1px solid #000;min-width:100px;padding-bottom:2px}@media print{.hospital-header{border:none;padding:10px;page-break-inside:avoid}.hospital-name,.doctor-name,.qualifications{color:#000!important}.medical-cross *{background-color:#000!important;border-color:#000!important}}.print-form-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;z-index:1000;display:flex;justify-content:center;align-items:flex-start;overflow-y:auto;padding:20px 0}.print-form{background:#fff;border-radius:12px;width:90%;max-width:1200px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#333;line-height:1.5}.print-form header{background:linear-gradient(135deg,#06c,#049);color:#fff;padding:20px 25px;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;align-items:center}.print-form header h2{margin:0;font-size:1.5rem;font-weight:600}.close-btn{background:#fff3;border:2px solid rgba(255,255,255,.3);color:#fff;width:40px;height:40px;border-radius:50%;font-size:1.5rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.patient-info{background:#f8f9fa;padding:15px 25px;border-bottom:1px solid #e9ecef;font-size:1.1rem}.patient-info strong{color:#06c}.select-all{display:block;padding:15px 25px;background:#e3f2fd;border-bottom:1px solid #bbdefb;font-weight:600;color:#0d47a1;cursor:pointer;transition:background-color .2s ease}.select-all:hover{background:#bbdefb}.select-all input{margin-right:10px;transform:scale(1.2)}.sections{padding:20px 25px;max-height:60vh;overflow-y:auto}.section{margin-bottom:25px;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.sec-title{display:block;background:linear-gradient(135deg,#f5f5f5,#e8e8e8);padding:15px 20px;font-weight:600;font-size:1.1rem;color:#333;cursor:pointer;transition:all .3s ease;border-bottom:1px solid #ddd}.sec-title:hover{background:linear-gradient(135deg,#e8e8e8,#ddd)}.sec-title input{margin-right:12px;transform:scale(1.3)}.table-preview{padding:15px 20px;background:#f8f9ff;border-bottom:1px solid #e0e0e0}.structured-table-container{margin:15px 0;border:2px solid #0066cc;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 2px 8px #0066cc1a}.structured-table{width:100%;border-collapse:collapse;margin:0;font-size:12px}.structured-table th{background:linear-gradient(135deg,#06c,#036);color:#fff;font-weight:700;text-align:center;padding:12px 8px;border:1px solid #003366;font-size:11px}.structured-table td{border:1px solid #003366;padding:10px 8px;text-align:center;font-size:11px;background:#fff}.structured-table .test-type{font-weight:700;background:linear-gradient(135deg,#f0f8ff,#e6f3ff);color:#036;text-align:left;padding-left:12px}.structured-table tbody tr:nth-child(2n){background:#f0f8ff4d}.structured-table tbody tr:hover{background:#0066cc0d}.pupillary-reactions{margin-top:20px}.medication-table-preview{margin:15px 20px;border:2px solid #0066cc;border-radius:8px;padding:15px;background:linear-gradient(135deg,#f0f8ff,#e6f3ff)}.advice-header{font-weight:700;font-size:16px;margin-bottom:8px;color:#036;border-bottom:2px solid #0066cc;padding-bottom:5px}.medication-subheader{font-weight:700;margin-bottom:5px;color:#036}.new-label{margin-bottom:15px;color:#666}.medication-table-preview table{width:100%;border-collapse:collapse;margin-top:10px;border:2px solid #0066cc;border-radius:6px;overflow:hidden;box-shadow:0 2px 8px #0066cc1a}.medication-table-preview th{background:linear-gradient(135deg,#06c,#0052a3);color:#fff;font-weight:600;text-align:center;padding:12px 8px;border:1px solid #004499;font-size:12px}.medication-table-preview td{border:1px solid #0066cc;padding:10px 8px;text-align:center;font-size:12px;background:#fff}.medication-table-preview .medication-name{font-weight:700;color:#036;text-align:left}.medication-table-preview tbody tr:nth-child(2n){background:#f0f8ff80}.medication-table-preview tbody tr:hover{background:#0066cc0d}.fields{padding:15px 20px;background:#fafafa}.field{display:block;padding:8px 0;cursor:pointer;transition:color .2s ease;font-size:.95rem}.field:hover{color:#06c}.field input{margin-right:10px;transform:scale(1.1)}.field-hint{color:#666;font-size:.85rem;font-style:italic}.msg{padding:15px 25px;margin:10px 25px;border-radius:6px;font-weight:500}.msg.info{background:#e3f2fd;color:#0d47a1;border:1px solid #bbdefb}.msg.err{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}.print-form footer{padding:20px 25px;border-top:1px solid #e0e0e0;background:#f8f9fa;display:flex;justify-content:space-between;gap:15px}.print-form footer button{padding:12px 25px;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem;min-width:120px}.cancel{background:#6c757d;color:#fff}.cancel:hover{background:#5a6268;transform:translateY(-2px);box-shadow:0 4px 12px #6c757d4d}.print{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.print:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1ab394);transform:translateY(-2px);box-shadow:0 4px 12px #28a7454d}.print:disabled{background:#d6d8db;color:#6c757d;cursor:not-allowed}.print-preview-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#fff;z-index:9999;overflow-y:auto;padding:20px}.print-controls{position:fixed;top:20px;right:20px;display:flex;gap:10px;z-index:10000}.print-btn,.back-btn{padding:10px 15px;border:none;border-radius:4px;cursor:pointer;font-weight:700;font-size:14px}.print-btn{background:#007bff;color:#fff}.back-btn{background:#6c757d;color:#fff}.print-controls .close-btn{background:#dc3545;color:#fff;width:auto;height:auto;border-radius:4px;padding:10px 15px}.print-content{max-width:1000px;margin:0 auto;font-family:Arial,sans-serif;line-height:1.6;color:#333}.print-content h1{color:#036;border-bottom:3px solid #0066cc;padding-bottom:10px;margin-bottom:20px}.print-content h2{color:#036;border-bottom:2px solid #0066cc;padding-bottom:5px;margin-top:30px;margin-bottom:15px}.print-content h3{color:#036;margin:20px 0 10px;font-size:1.2rem}.patient-info-header{margin-bottom:30px;padding:15px;background:#f8f9fa;border-left:4px solid #0066cc;border-radius:4px}.patient-info-header p{margin:5px 0;font-size:1rem}.print-section{margin:30px 0;break-inside:avoid}@media print{.no-print,.print-controls{display:none!important}.print-preview-container{position:static;width:100%;height:auto;padding:0;margin:0}.print-content{max-width:none;margin:0}.print-section,.structured-table{break-inside:avoid}body{margin:0;padding:20px;background:#fff}*{-webkit-print-color-adjust:exact!important;color-adjust:exact!important}}@media (max-width: 768px){.print-form{width:95%;margin:10px}.structured-table{font-size:10px}.structured-table th,.structured-table td{padding:6px 4px}.print-form footer{flex-direction:column}.print-form footer button{width:100%}}.sections::-webkit-scrollbar,.print-form::-webkit-scrollbar{width:8px}.sections::-webkit-scrollbar-track,.print-form::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.sections::-webkit-scrollbar-thumb,.print-form::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.sections::-webkit-scrollbar-thumb:hover,.print-form::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.print-form-overlay{animation:fadeIn .3s ease-out}.section{transition:all .3s ease}.section:hover{box-shadow:0 2px 8px #0066cc1a;transform:translateY(-1px)}.structured-table-container{transition:all .3s ease}.structured-table-container:hover{box-shadow:0 4px 12px #0066cc26}.ar-root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#f8f9fa;min-height:100vh;width:100%;max-width:100vw;margin:0;padding:0;box-sizing:border-box}.ar-top-bar{background:linear-gradient(135deg,#fff,#f8f9fa);padding:12px 24px;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;align-items:center;font-size:14px;box-shadow:0 2px 4px #0000001a;position:sticky;top:0;z-index:100;width:100%;max-width:100vw;box-sizing:border-box}.ar-tab-title{font-weight:700;font-size:22px;margin-right:20px;color:#2c3e50}.ar-template-id{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;padding:4px 12px;border-radius:6px;font-size:12px;margin-right:20px;font-weight:500;box-shadow:0 2px 4px #3498db4d}.ar-patient{color:#495057;font-size:13px;margin-right:20px;font-weight:500}.ar-btn-save,.ar-btn-close{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;font-weight:600;border:none;margin-left:8px;border-radius:6px;padding:8px 20px;font-size:13px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #28a7454d}.ar-btn-save:hover,.ar-btn-close:hover{transform:translateY(-1px);box-shadow:0 4px 8px #28a74566}.ar-alerts-row{background:#fff;border-bottom:1px solid #dee2e6;padding:10px 24px;display:flex;align-items:center;gap:20px;box-shadow:0 1px 3px #0000000d}.ar-alerts-btn{background:#e9ecef;color:#6c757d;padding:4px 12px;border-radius:8px;font-size:12px;font-weight:500}.ar-alerts-notfilled{color:#fd7e14;font-weight:600;font-size:13px}.ar-alerts-filled{color:#28a745;margin-left:8px;font-weight:600;font-size:13px}.ar-step-row{display:flex;align-items:center;padding:14px 24px;gap:24px;border-bottom:1px solid #dee2e6;background:#fff;box-shadow:0 1px 3px #0000000d}.ar-step-complete,.ar-step-current,.ar-step{font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px}.ar-step-complete{color:#28a745}.ar-step-current{color:#007bff}.ar-step{color:#6c757d}.ar-step-arrows{margin-left:auto;display:flex;gap:8px}.ar-step-arrows button{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;padding:6px 16px;color:#007bff;font-weight:600;font-size:12px;cursor:pointer;transition:all .2s ease}.ar-step-arrows button:hover{background:#007bff;color:#fff;transform:translateY(-1px)}.ar-refraction-comments-field{background:#fff;padding:16px 24px;border-bottom:1px solid #dee2e6}.ar-refraction-comments-field>span{font-size:14px;margin-bottom:8px;display:block;font-weight:600;color:#495057}.ar-refraction-comments-field textarea{width:100%;min-height:50px;padding:8px 12px;border:1px solid #ced4da;border-radius:6px;font-size:13px;font-family:inherit;resize:vertical;transition:border-color .2s ease}.ar-refraction-comments-field textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.ar-main-grid{display:grid;grid-template-columns:1fr 1fr 280px;gap:0;background:#f8f9fa;min-height:calc(100vh - 200px);width:100%;max-width:100vw;box-sizing:border-box;overflow-x:hidden}.ar-eye-block-label{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;text-align:center;font-size:18px;font-weight:700;padding:16px 0;border-bottom:3px solid #117a8b;box-shadow:0 2px 4px #17a2b84d}.ar-va-section{background:#fff;border-right:1px solid #dee2e6;border-bottom:1px solid #dee2e6}.ar-va-title-row{background:linear-gradient(135deg,#495057,#343a40);color:#fff;font-size:14px;font-weight:600;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;box-shadow:inset 0 -2px 4px #0000001a}.ar-va-title{font-size:14px;font-weight:600}.ar-va-arrow{font-size:16px;font-weight:700}.ar-va-group{display:flex;border-bottom:1px solid #e9ecef;min-height:48px;align-items:stretch;width:100%;max-width:100%;overflow-x:hidden;box-sizing:border-box}.ar-va-label{width:90px;min-width:90px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);font-weight:600;font-size:12px;padding:8px;border-right:1px solid #dee2e6;display:flex;align-items:center;justify-content:center;text-align:center;color:#495057}.ar-clear{font-size:10px;color:#007bff;background:none;border:none;cursor:pointer;margin-left:6px;text-decoration:underline;transition:color .2s ease}.ar-clear:hover{color:#0056b3}.ar-va-row-btns{display:flex;flex:1;height:100%;min-width:0;max-width:100%;overflow-x:hidden}.ar-va-btn{background:#fff;border:none;border-right:1px solid #e9ecef;color:#495057;font-size:9px;font-weight:500;padding:4px 2px;cursor:pointer;flex:1;min-width:24px;max-width:45px;height:48px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;white-space:nowrap;position:relative;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.ar-va-btn:last-child{border-right:none}.ar-va-btn:hover{background:#f8f9fa;color:#007bff;transform:translateY(-1px)}.ar-va-btn.active{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;font-weight:600;box-shadow:inset 0 2px 4px #0003}.ar-va-side-p{background:linear-gradient(135deg,#e9ecef,#dee2e6);font-size:10px;font-weight:600;min-width:35px;width:35px;max-width:35px;display:flex;align-items:center;justify-content:center;border-left:1px solid #dee2e6;color:#6c757d;flex-shrink:0}.ar-va-group-pr{padding:12px 16px;border-bottom:1px solid #e9ecef;background:#f8f9fa}.ar-va-pr-fields{display:flex;gap:16px;margin-left:12px;flex-wrap:wrap}.ar-va-pr{display:flex;flex-direction:column;align-items:center;gap:6px}.ar-va-pr-head{font-size:12px;font-weight:600;color:#495057}.ar-va-pr select,.ar-va-pr input{border:1px solid #ced4da;border-radius:4px;font-size:11px;padding:6px;width:50px;text-align:center;transition:border-color .2s ease}.ar-va-pr select:focus,.ar-va-pr input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.ar-va-comments-row{display:flex;padding:12px 16px;gap:12px;background:#f8f9fa;border-bottom:1px solid #dee2e6}.ar-va-comments-row span{font-size:12px;font-weight:600;width:80px;min-width:80px;display:flex;align-items:flex-start;padding-top:6px;color:#495057}.ar-va-comments-row textarea{flex:1;min-height:60px;border:1px solid #ced4da;border-radius:4px;font-size:12px;padding:6px 10px;resize:vertical;font-family:inherit;transition:border-color .2s ease}.ar-va-comments-row textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.ar-table-section{background:#fff;border-right:1px solid #dee2e6;border-bottom:1px solid #dee2e6}.ar-table-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(135deg,#495057,#343a40);color:#fff;box-shadow:inset 0 -2px 4px #0000001a}.ar-table-title{font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px}.ar-table-arrow{font-size:16px;font-weight:700}.ar-table-actions{display:flex;gap:8px}.ar-fill-btn,.ar-copy-btn{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;border:none;border-radius:4px;padding:6px 12px;font-size:11px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s ease}.ar-fill-btn:hover,.ar-copy-btn:hover{background:linear-gradient(135deg,#138496,#117a8b);transform:translateY(-1px)}.ar-table-grid{width:100%;border-collapse:collapse;margin:0;background:#fff;table-layout:fixed;max-width:100%;overflow-x:hidden}.ar-table-grid thead th{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724;font-size:12px;font-weight:700;padding:10px 8px;border:1px solid #b8daff;text-align:center;text-transform:uppercase;letter-spacing:.5px}.ar-table-grid th,.ar-table-grid td{border:1px solid #dee2e6;padding:8px;text-align:center}.ar-table-row-label{font-weight:600;background:linear-gradient(135deg,#f8f9fa,#e9ecef);width:25%;font-size:12px;color:#495057;text-align:left;padding-left:12px}.ar-table-asterisk{color:#dc3545;margin-left:4px;font-weight:700}.ar-table-grid input,.ar-table-grid select{border:1px solid #ced4da;padding:6px 8px;font-size:12px;border-radius:4px;width:100%;text-align:center;transition:border-color .2s ease;font-family:inherit}.ar-table-grid input:focus,.ar-table-grid select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.ar-table-drug-row{margin:12px 16px;display:flex;align-items:center;gap:12px;background:#f8f9fa;padding:8px 12px;border-radius:6px}.ar-table-drug-row>div{font-size:12px;font-weight:600;min-width:80px;color:#495057}.ar-table-drug-row select{flex:1;max-width:180px;padding:6px 10px;border:1px solid #ced4da;border-radius:4px;font-size:12px;transition:border-color .2s ease}.ar-table-drug-row select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.ar-table-comments-row{display:flex;padding:12px 16px;gap:12px;background:#f8f9fa}.ar-table-comments-row span{font-size:12px;font-weight:600;width:80px;min-width:80px;display:flex;align-items:flex-start;padding-top:6px;color:#495057}.ar-table-comments-row textarea{flex:1;min-height:60px;border:1px solid #ced4da;border-radius:4px;font-size:12px;padding:6px 10px;resize:vertical;font-family:inherit;transition:border-color .2s ease}.ar-table-comments-row textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.ar-sidebar-block{background:#fff;border-left:3px solid #17a2b8;box-shadow:-2px 0 4px #0000000d}.ar-sidebar-header{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;font-size:16px;font-weight:700;padding:16px;text-align:center;box-shadow:0 2px 4px #28a7454d}.ar-sidebar-body{padding:20px;font-size:13px;color:#6c757d;min-height:400px;line-height:1.5}@media (max-width: 1600px){.ar-main-grid{grid-template-columns:1fr 1fr 250px}.ar-va-btn{font-size:8px;min-width:22px;max-width:38px}.ar-va-side-p{min-width:30px;width:30px;font-size:9px}}@media (max-width: 1400px){.ar-main-grid{grid-template-columns:1fr 1fr}.ar-sidebar-block{display:none}.ar-va-btn{font-size:9px;min-width:26px;max-width:42px}}@media (max-width: 1200px){.ar-va-btn{font-size:8px;min-width:22px;max-width:36px;padding:3px 1px}.ar-va-label{width:75px;min-width:75px;font-size:11px}.ar-va-side-p{min-width:28px;width:28px;font-size:9px}}@media (max-width: 1024px){.ar-main-grid{grid-template-columns:1fr}.ar-va-btn{font-size:8px;padding:3px 1px;min-width:20px;max-width:32px}.ar-va-label{width:70px;min-width:70px;font-size:10px}.ar-va-side-p{min-width:25px;width:25px;font-size:9px}.ar-top-bar{padding:10px 16px;flex-wrap:wrap;gap:8px}.ar-step-row{padding:12px 16px;gap:16px}.ar-refraction-comments-field{padding:12px 16px}.ar-alerts-row{padding:8px 16px}}@media (max-width: 768px){.ar-va-group{flex-direction:column;height:auto;overflow-x:hidden}.ar-va-label{width:100%;min-height:35px;border-right:none;border-bottom:1px solid #dee2e6}.ar-va-row-btns{width:100%;border-bottom:1px solid #e9ecef;overflow-x:auto;scrollbar-width:thin}.ar-va-row-btns::-webkit-scrollbar{height:3px}.ar-va-row-btns::-webkit-scrollbar-track{background:#f1f1f1}.ar-va-row-btns::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.ar-va-btn{height:35px;min-width:35px;max-width:none;flex-shrink:0}.ar-table-grid{font-size:11px}.ar-table-grid input{font-size:11px;padding:4px 6px}.ar-table-row-label{font-size:11px;padding-left:8px}.ar-top-bar{font-size:12px;padding:8px 12px}.ar-tab-title{font-size:18px}.ar-patient{font-size:11px;margin-right:12px}.ar-step-row{padding:10px 12px;gap:12px}.ar-refraction-comments-field{padding:10px 12px}.ar-alerts-row{padding:8px 12px}}.settings-container{padding:2rem;background:#f8fafc;min-height:100vh}.settings-header{margin-bottom:2rem}.settings-header h1{color:#1e293b;font-size:2.5rem;font-weight:700;margin:0}.settings-content{display:flex;justify-content:center;align-items:center;min-height:60vh}@media (max-width: 768px){.settings-container{padding:1rem}.settings-header h1{font-size:2rem}.coming-soon{padding:2rem}}.hospital-settings{max-width:1000px;margin:0 auto;padding:30px 20px;background-color:#f8f9fa;min-height:100vh}.settings-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px;border-radius:12px;margin-bottom:30px;box-shadow:0 4px 6px #0000001a}.settings-header h1{margin:0 0 10px;font-size:32px;font-weight:700}.settings-subtitle{margin:0;font-size:16px;opacity:.9}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.alert{display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:8px;margin-bottom:20px;font-size:15px;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-error{background-color:#fee;color:#c33;border-left:4px solid #c33}.alert-success{background-color:#d4edda;color:#155724;border-left:4px solid #28a745}.settings-form{background:#fff;padding:0;border-radius:12px;box-shadow:0 2px 8px #0000001a}.form-section{padding:30px;border-bottom:1px solid #e9ecef}.form-section:last-of-type{border-bottom:none}.section-title{font-size:20px;font-weight:600;color:#333;margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid #667eea}.form-label{display:block;font-weight:600;color:#333;margin-bottom:8px;font-size:15px}.required{color:#dc3545;margin-left:4px}.form-help{font-size:13px;color:#6c757d;margin-bottom:12px;margin-top:-4px}.form-input,.form-textarea{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:15px;transition:all .3s ease;font-family:inherit}.form-input:focus,.form-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-textarea{resize:vertical;min-height:100px}.file-upload-area{position:relative}.file-input{display:none}.file-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;border:3px dashed #dee2e6;border-radius:12px;background-color:#f8f9fa;cursor:pointer;transition:all .3s ease}.file-upload-label:hover{border-color:#667eea;background-color:#f0f4ff}.upload-icon{font-size:48px;margin-bottom:12px}.upload-text{font-size:16px;font-weight:600;color:#333;margin:0 0 4px}.upload-subtext{font-size:14px;color:#6c757d;margin:0}.image-preview-container{width:100%}.image-preview{position:relative;width:100%;max-width:400px;margin:0 auto 20px;border:2px solid #e9ecef;border-radius:12px;overflow:hidden;background:#f8f9fa;box-shadow:0 4px 6px #0000001a}.image-preview img{width:100%;height:auto;display:block}.thumbnail-preview{max-width:100%}.thumbnail-preview img{max-height:300px;object-fit:cover}.upload-overlay{position:absolute;inset:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff}.upload-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}.upload-overlay p{margin:0;font-size:16px;font-weight:600}.preview-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.file-url-info{margin-top:12px;padding:12px;background-color:#f8f9fa;border-radius:6px;text-align:center}.file-url-info small{font-size:12px;color:#6c757d;word-break:break-all}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px;text-decoration:none}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-secondary:hover:not(:disabled){background-color:#5a6268}.btn-danger:hover:not(:disabled){background-color:#c82333}.btn-outline{background-color:transparent;color:#667eea;border:2px solid #667eea}.btn-outline:hover:not(:disabled){background-color:#667eea;color:#fff}.form-actions{display:flex;justify-content:flex-end;gap:16px;padding:30px;background-color:#f8f9fa;border-top:1px solid #e9ecef}@media (max-width: 768px){.hospital-settings{padding:20px 10px}.settings-header{padding:20px}.settings-header h1{font-size:24px}.form-section{padding:20px}.section-title{font-size:18px}.form-actions{flex-direction:column;padding:20px}.btn{width:100%;justify-content:center}.preview-actions{flex-direction:column}.preview-actions .btn{width:100%}}@media (max-width: 480px){.settings-header h1{font-size:20px}.upload-icon{font-size:36px}.upload-text{font-size:14px}}:root{--counselling-primary: #0066cc;--counselling-primary-hover: #0052a3;--counselling-primary-light: rgba(0, 102, 204, .08);--counselling-success: #10b981;--counselling-success-hover: #059669;--counselling-success-light: #d1fae5;--counselling-danger: #ef4444;--counselling-warning: #f59e0b;--counselling-info: #3b82f6;--counselling-gray-50: #fafbfc;--counselling-gray-100: #f3f4f6;--counselling-gray-200: #e5e7eb;--counselling-gray-300: #d1d5db;--counselling-gray-400: #9ca3af;--counselling-gray-500: #6b7280;--counselling-gray-600: #4b5563;--counselling-gray-700: #374151;--counselling-gray-800: #1f2937;--counselling-gray-900: #111827;--counselling-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;--counselling-shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--counselling-shadow-sm: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--counselling-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--counselling-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--counselling-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--counselling-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--counselling-radius-sm: 6px;--counselling-radius-md: 8px;--counselling-radius-lg: 12px;--counselling-radius-xl: 16px}.counselling-container{padding:20px;max-width:100%;margin:0 auto;font-family:var(--counselling-font-family);color:var(--counselling-gray-900);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.counselling-container h2{margin-bottom:24px;color:var(--counselling-gray-900);font-size:28px;font-weight:700;letter-spacing:-.025em}.counselling-container .loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--counselling-radius-lg);margin:20px 0;padding:60px 20px}.counselling-container .spinner{width:56px;height:56px;border:5px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:24px}.counselling-container .loading-text{color:#fff;font-size:18px;margin:0 0 8px;font-weight:600}.counselling-container .loading-subtext{color:#ffffffe6;font-size:14px;margin:0;font-weight:400}.counselling-container .info-message{padding:14px 16px;background:var(--counselling-primary-light);border-left:4px solid var(--counselling-primary);border-radius:var(--counselling-radius-sm);margin-bottom:16px;font-size:14px;color:var(--counselling-gray-700);box-shadow:var(--counselling-shadow-sm)}.counselling-container .error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;background:var(--counselling-gray-50);border-radius:var(--counselling-radius-lg);margin:20px 0;padding:40px 20px;border:2px dashed var(--counselling-gray-300)}.counselling-container .error-container h3{color:var(--counselling-danger);margin-bottom:12px;font-size:20px;font-weight:600}.counselling-container .error-container p{color:var(--counselling-gray-600);margin-bottom:16px}.counselling-container .error-actions{margin-top:16px}.counselling-container .retry-btn{background:var(--counselling-primary);color:#fff;border:none;padding:12px 24px;border-radius:var(--counselling-radius-md);cursor:pointer;font-size:14px;font-weight:600;transition:all .2s ease;box-shadow:var(--counselling-shadow-md)}.counselling-container .retry-btn:hover{background:var(--counselling-primary-hover);box-shadow:var(--counselling-shadow-lg);transform:translateY(-1px)}.counselling-container .tab-navigation{display:flex;margin-bottom:24px;background:#fff;border-radius:var(--counselling-radius-lg);padding:6px;box-shadow:var(--counselling-shadow-md);gap:6px;border:1px solid var(--counselling-gray-200)}.counselling-container .tab-button{background:transparent;border:none;padding:12px 24px;cursor:pointer;font-size:14px;font-weight:600;color:var(--counselling-gray-600);border-radius:var(--counselling-radius-md);transition:all .2s cubic-bezier(.4,0,.2,1);flex:1;text-align:center;white-space:nowrap;position:relative}.counselling-container .tab-button:hover:not(.active){color:var(--counselling-primary);background-color:var(--counselling-gray-50)}.counselling-container .tab-button.active{color:#fff;background:linear-gradient(135deg,var(--counselling-primary) 0%,#0052a3 100%);box-shadow:var(--counselling-shadow-md)}.counselling-container .tab-button:focus-visible{outline:2px solid var(--counselling-primary);outline-offset:2px}.counselling-container .tab-content{margin-top:20px}.counselling-container .no-records{text-align:center;padding:80px 20px;color:var(--counselling-gray-500);font-style:italic;background:var(--counselling-gray-50);border-radius:var(--counselling-radius-lg);font-size:16px;border:2px dashed var(--counselling-gray-300)}.counselling-container .counselling-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:16px;background:#fff;border-radius:var(--counselling-radius-lg);overflow:hidden;box-shadow:var(--counselling-shadow-md);border:1px solid var(--counselling-gray-200)}.counselling-container .counselling-table th,.counselling-container .counselling-table td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--counselling-gray-200);font-size:14px}.counselling-container .counselling-table th{background:linear-gradient(to bottom,#fafbfc,#f3f4f6);font-weight:700;color:var(--counselling-gray-700);text-transform:uppercase;font-size:11px;letter-spacing:.08em;position:sticky;top:0;z-index:200;border-bottom:2px solid var(--counselling-gray-300)}.counselling-container .counselling-table tbody tr{transition:all .2s ease}.counselling-container .counselling-table tbody tr:hover{background-color:var(--counselling-gray-50);transform:scale(1.001)}.counselling-container .counselling-table tbody tr:last-child td{border-bottom:none}.counselling-container .counselling-table button{background:linear-gradient(135deg,var(--counselling-primary) 0%,#0052a3 100%);color:#fff;border:none;padding:9px 18px;border-radius:var(--counselling-radius-sm);cursor:pointer;font-size:13px;font-weight:600;white-space:nowrap;transition:all .2s ease;box-shadow:var(--counselling-shadow-sm)}.counselling-container .counselling-table button:hover{box-shadow:var(--counselling-shadow-md);transform:translateY(-1px)}.counselling-container .completed-status{color:var(--counselling-success);font-weight:600;font-size:12px;background:var(--counselling-success-light);padding:5px 10px;border-radius:12px;display:inline-block;border:1px solid var(--counselling-success)}.counselling-container .counselling-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:10px;overflow-y:auto;animation:fadeIn .2s ease-out}.counselling-container .counselling-modal-large{background:#fff;border-radius:var(--counselling-radius-xl);width:100%;max-width:1600px;max-height:96vh;display:flex;flex-direction:column;margin:auto;box-shadow:var(--counselling-shadow-2xl);animation:modalSlideIn .3s cubic-bezier(.34,1.56,.64,1);border:1px solid var(--counselling-gray-200)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.counselling-container .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;background:linear-gradient(135deg,#06c,#0052a3);color:#fff;flex-shrink:0;border-radius:var(--counselling-radius-xl) var(--counselling-radius-xl) 0 0;box-shadow:0 4px 6px -1px #0000001a}.counselling-container .modal-header h3{margin:0;font-size:22px;font-weight:700;letter-spacing:-.025em}.counselling-container .close-button{background:#ffffff26;border:1px solid rgba(255,255,255,.2);font-size:24px;cursor:pointer;color:#fff;padding:6px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--counselling-radius-md);transition:all .2s ease;line-height:1;font-weight:300}.counselling-container .close-button:hover:not(:disabled){background:#ffffff40;transform:rotate(90deg)}.counselling-container .close-button:disabled{opacity:.5;cursor:not-allowed}.counselling-container .patient-header-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));padding:18px 28px;background:linear-gradient(to bottom,#fafbfc,#fff);border-bottom:2px solid var(--counselling-gray-200);flex-shrink:0;gap:16px}.counselling-container .patient-info-item{font-size:14px;color:var(--counselling-gray-700);padding:12px 16px;background:#fff;border-radius:var(--counselling-radius-md);border:1px solid var(--counselling-gray-200);box-shadow:var(--counselling-shadow-xs);transition:all .2s ease;position:relative;overflow:hidden}.counselling-container .patient-info-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(135deg,var(--counselling-primary) 0%,#0052a3 100%)}.counselling-container .patient-info-item:hover{box-shadow:var(--counselling-shadow-sm);transform:translateY(-1px)}.counselling-container .patient-info-item strong{color:var(--counselling-primary);margin-right:8px;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:4px}.counselling-container .counselling-form-detailed{flex:1;overflow-y:auto;padding:24px 28px;background:#fafbfc;max-height:calc(96vh - 240px)}.counselling-container .form-section{margin-bottom:28px;background:#fff;padding:24px;border-radius:var(--counselling-radius-lg);box-shadow:var(--counselling-shadow-sm);border:1px solid var(--counselling-gray-200);transition:all .3s ease}.counselling-container .form-section:hover{box-shadow:var(--counselling-shadow-md);border-color:var(--counselling-gray-300)}.counselling-container .section-title{font-size:17px;font-weight:700;color:var(--counselling-gray-800);margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid var(--counselling-primary);letter-spacing:-.025em;display:flex;align-items:center;gap:10px}.counselling-container .section-title:before{content:"";width:4px;height:24px;background:linear-gradient(135deg,var(--counselling-primary) 0%,#0052a3 100%);border-radius:2px}.counselling-container .form-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 22px;margin-bottom:18px}.counselling-container .form-row:last-child{margin-bottom:0}.counselling-container .form-group{display:flex;flex-direction:column;gap:7px}.counselling-container .form-group.full-width{grid-column:1 / -1}.counselling-container .form-group label{font-size:13px;font-weight:600;color:var(--counselling-gray-700);line-height:1.4;letter-spacing:.01em}.counselling-container .form-group input,.counselling-container .form-group select,.counselling-container .form-group textarea{padding:10px 14px;border:2px solid var(--counselling-gray-200);border-radius:var(--counselling-radius-md);font-size:14px;line-height:1.5;transition:all .2s cubic-bezier(.4,0,.2,1);background-color:#fff;min-height:42px;font-family:inherit;color:var(--counselling-gray-900);box-shadow:0 1px 2px #0000000d}.counselling-container .form-group input:hover,.counselling-container .form-group select:hover,.counselling-container .form-group textarea:hover{border-color:var(--counselling-gray-300)}.counselling-container .form-group input:focus,.counselling-container .form-group select:focus,.counselling-container .form-group textarea:focus{outline:none;border-color:var(--counselling-primary);box-shadow:0 0 0 4px var(--counselling-primary-light),0 1px 2px #0000000d;transform:translateY(-1px)}.counselling-container .form-group input[readonly]{background-color:var(--counselling-gray-50);color:var(--counselling-gray-600);cursor:not-allowed;border-style:dashed}.counselling-container .form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%234b5563' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 10px center;background-repeat:no-repeat;background-size:18px;padding-right:38px}.counselling-container .form-group textarea{resize:vertical;min-height:90px;font-family:inherit;line-height:1.6}.counselling-container .form-group select:disabled,.counselling-container .form-group input:disabled{background-color:var(--counselling-gray-50);color:var(--counselling-gray-500);cursor:not-allowed;opacity:.7;border-style:dashed}.counselling-container .form-group label:has(+input[required]):after,.counselling-container .form-group label:has(+select[required]):after,.counselling-container .form-group label:has(+textarea[required]):after{content:" *";color:var(--counselling-danger);font-weight:700;margin-left:2px}.counselling-container .form-actions{display:flex;justify-content:flex-end;gap:14px;padding:20px 28px;border-top:2px solid var(--counselling-gray-200);background:linear-gradient(to bottom,#fff,#fafbfc);flex-shrink:0;border-radius:0 0 var(--counselling-radius-xl) var(--counselling-radius-xl)}.counselling-container .form-actions button{padding:12px 28px;border:2px solid transparent;border-radius:var(--counselling-radius-md);cursor:pointer;font-size:15px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);min-width:120px;font-family:inherit;box-shadow:var(--counselling-shadow-sm);letter-spacing:.01em}.counselling-container .form-actions button[type=submit]{background:linear-gradient(135deg,var(--counselling-success) 0%,#059669 100%);color:#fff;border-color:var(--counselling-success)}.counselling-container .form-actions button[type=submit]:hover:not(:disabled){box-shadow:var(--counselling-shadow-lg);transform:translateY(-2px)}.counselling-container .form-actions button[type=button]{background:#fff;color:var(--counselling-gray-700);border-color:var(--counselling-gray-300)}.counselling-container .form-actions button[type=button]:hover:not(:disabled){background:var(--counselling-gray-50);border-color:var(--counselling-gray-400);transform:translateY(-1px)}.counselling-container .form-actions button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.counselling-container .submit-message{margin-top:16px;padding:12px 16px;border-radius:var(--counselling-radius-md);font-size:14px;font-weight:600;text-align:center;background:var(--counselling-success-light);color:#065f46;border:1px solid var(--counselling-success);box-shadow:var(--counselling-shadow-sm);animation:slideDown .3s ease-out}@media (min-width: 1400px){.counselling-container .form-row{grid-template-columns:repeat(4,1fr);gap:20px 24px}.counselling-container .counselling-modal-large{max-width:1800px}}@media (max-width: 1399px) and (min-width: 1025px){.counselling-container .form-row{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.counselling-container .form-row{grid-template-columns:repeat(2,1fr);gap:16px 18px}.counselling-container .counselling-modal-large{max-height:94vh}}@media (max-width: 768px){.counselling-container{padding:12px}.counselling-container h2{font-size:22px;margin-bottom:16px}.counselling-container .tab-navigation{flex-direction:column}.counselling-container .counselling-modal-overlay{padding:0}.counselling-container .counselling-modal-large{width:100%;height:100vh;max-height:100vh;border-radius:0;margin:0}.counselling-container .modal-header,.counselling-container .form-actions{border-radius:0;padding:14px 20px}.counselling-container .form-row{grid-template-columns:1fr;gap:14px}.counselling-container .counselling-form-detailed{padding:20px;max-height:calc(100vh - 220px)}.counselling-container .form-section{padding:18px;margin-bottom:20px}}@media (max-width: 480px){.counselling-container{padding:8px}.counselling-container .form-actions{flex-direction:column;gap:12px}.counselling-container .form-actions button{width:100%}}@media (prefers-reduced-motion: reduce){.counselling-container .spinner{animation:none}.counselling-container *{animation-duration:.01ms!important;transition-duration:.01ms!important}}.counselling-container button:focus-visible,.counselling-container input:focus-visible,.counselling-container select:focus-visible,.counselling-container textarea:focus-visible{outline:2px solid var(--counselling-primary);outline-offset:2px}.counselling-container .counselling-form-detailed::-webkit-scrollbar{width:10px}.counselling-container .counselling-form-detailed::-webkit-scrollbar-track{background:var(--counselling-gray-100);border-radius:5px}.counselling-container .counselling-form-detailed::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--counselling-primary) 0%,#0052a3 100%);border-radius:5px;border:2px solid var(--counselling-gray-100)}.counselling-container .counselling-form-detailed::-webkit-scrollbar-thumb:hover{background:var(--counselling-primary-hover)}@media print{.counselling-container .tab-navigation,.counselling-container .form-actions,.counselling-container .loading-spinner,.counselling-container .error-container{display:none}.counselling-container .counselling-modal-large{max-height:none;box-shadow:none}.counselling-container .counselling-form-detailed{overflow:visible;max-height:none}}:root{--primary-color: #2563eb;--primary-hover: #1d4ed8;--secondary-color: #64748b;--success-color: #059669;--warning-color: #d97706;--danger-color: #dc2626;--info-color: #0891b2;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--border-color: #e2e8f0;--border-radius: 12px;--border-radius-sm: 8px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--transition: all .2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}.hr-container{padding:24px;background-color:var(--bg-secondary);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-primary)}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;gap:16px}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.hr-header{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-hover) 100%);border-radius:var(--border-radius);padding:32px;margin-bottom:32px;color:#fff;box-shadow:var(--shadow-lg)}.header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.header-title h1{font-size:2.25rem;font-weight:700;margin:0 0 8px;line-height:1.2}.header-title p{font-size:1.125rem;margin:0;opacity:.9;font-weight:400}.header-actions{flex-shrink:0}.btn-primary{background-color:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:12px 24px;border-radius:var(--border-radius-sm);font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;transition:var(--transition);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-primary:hover{background-color:#ffffff4d;transform:translateY(-1px)}.btn-action{background-color:transparent;color:var(--text-secondary);border:1px solid var(--border-color);padding:8px 12px;border-radius:var(--border-radius-sm);font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:var(--transition)}.btn-action:hover{background-color:var(--bg-tertiary);border-color:var(--primary-color);color:var(--primary-color)}.btn-action.profile:hover{background-color:#eff6ff;border-color:var(--info-color);color:var(--info-color)}.btn-action.edit:hover{background-color:#fff7ed;border-color:var(--warning-color);color:var(--warning-color)}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:32px}.stat-card{background-color:var(--bg-primary);padding:24px;border-radius:var(--border-radius);box-shadow:var(--shadow-md);display:flex;align-items:center;gap:16px;transition:var(--transition);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background-color:var(--primary-color)}.stat-card.primary:before{background-color:var(--primary-color)}.stat-card.success:before{background-color:var(--success-color)}.stat-card.warning:before{background-color:var(--warning-color)}.stat-card.info:before{background-color:var(--info-color)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card.primary .stat-icon{background-color:#2563eb1a;color:var(--primary-color)}.stat-card.success .stat-icon{background-color:#0596691a;color:var(--success-color)}.stat-card.warning .stat-icon{background-color:#d977061a;color:var(--warning-color)}.stat-card.info .stat-icon{background-color:#0891b21a;color:var(--info-color)}.stat-content h3{font-size:2rem;font-weight:700;margin:0 0 4px;color:var(--text-primary)}.stat-content p{font-size:14px;color:var(--text-secondary);margin:0;font-weight:500}.quick-actions{margin-bottom:32px}.quick-actions h3{font-size:1.5rem;font-weight:600;margin:0 0 20px;color:var(--text-primary)}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.action-card{background-color:var(--bg-primary);padding:24px;border-radius:var(--border-radius);box-shadow:var(--shadow-md);cursor:pointer;transition:var(--transition);border:1px solid var(--border-color);text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.action-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-xl);border-color:var(--primary-color)}.action-icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.action-icon.attendance{background-color:#0596691a;color:var(--success-color)}.action-icon.payroll{background-color:#2563eb1a;color:var(--primary-color)}.action-icon.leave{background-color:#d977061a;color:var(--warning-color)}.action-icon.add-staff{background-color:#0891b21a;color:var(--info-color)}.action-card h4{font-size:16px;font-weight:600;margin:0;color:var(--text-primary)}.action-card p{font-size:14px;color:var(--text-secondary);margin:0}.staff-management{background-color:var(--bg-primary);border-radius:var(--border-radius);padding:24px;box-shadow:var(--shadow-md)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.section-header h3{font-size:1.5rem;font-weight:600;margin:0;color:var(--text-primary)}.section-controls{display:flex;align-items:center;gap:16px}.search-container{position:relative}.search-container svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.search-input{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:10px 12px 10px 40px;font-size:14px;width:250px;transition:var(--transition)}.search-input:focus{outline:none;border-color:var(--primary-color);background-color:var(--bg-primary);box-shadow:0 0 0 3px #2563eb1a}.view-toggle{display:flex;background-color:var(--bg-secondary);border-radius:var(--border-radius-sm);padding:4px}.toggle-btn{background-color:transparent;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;color:var(--text-secondary);transition:var(--transition);display:flex;align-items:center}.toggle-btn.active{background-color:var(--primary-color);color:#fff}.toggle-btn:not(.active):hover{background-color:var(--bg-tertiary)}.staff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:24px}.staff-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden;transition:var(--transition);box-shadow:var(--shadow-sm)}.staff-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.card-header{padding:20px;display:flex;align-items:center;gap:16px;background-color:var(--bg-secondary)}.staff-avatar{position:relative;flex-shrink:0}.staff-avatar img{width:56px;height:56px;border-radius:12px;object-fit:cover;border:2px solid white;box-shadow:var(--shadow-md)}.status-indicator{position:absolute;bottom:2px;right:2px;width:14px;height:14px;border-radius:50%;border:2px solid white}.status-indicator.active{background-color:var(--success-color)}.status-indicator.on-leave{background-color:var(--warning-color)}.status-indicator.inactive{background-color:var(--text-muted)}.staff-basic-info h4{font-size:16px;font-weight:600;margin:0 0 4px;color:var(--text-primary)}.staff-id{font-size:13px;color:var(--text-muted);margin:0;font-weight:500}.card-body{padding:20px}.info-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--bg-secondary)}.info-row:last-child{border-bottom:none}.info-row .label{font-size:14px;color:var(--text-secondary);font-weight:500}.info-row .value{font-size:14px;color:var(--text-primary);font-weight:400;text-align:right}.card-actions{padding:16px 20px;background-color:var(--bg-secondary);display:flex;gap:8px}.card-actions .btn-action{flex:1;justify-content:center}.staff-table{margin-top:24px;border-radius:var(--border-radius);overflow:hidden;border:1px solid var(--border-color)}.staff-table table{width:100%;border-collapse:collapse;background-color:var(--bg-primary)}.staff-table th{background-color:var(--bg-secondary);padding:16px;text-align:left;font-weight:600;font-size:14px;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.staff-table td{padding:16px;border-bottom:1px solid var(--border-color);font-size:14px}.staff-table tr:last-child td{border-bottom:none}.staff-table tr:hover{background-color:var(--bg-secondary)}.staff-cell{display:flex;align-items:center;gap:12px}.table-avatar{width:40px;height:40px;border-radius:8px;object-fit:cover}.staff-name{font-weight:600;color:var(--text-primary);margin-bottom:2px}.staff-email{font-size:13px;color:var(--text-secondary)}.status-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;text-transform:capitalize}.status-badge.active{background-color:#0596691a;color:var(--success-color)}.status-badge.on-leave{background-color:#d977061a;color:var(--warning-color)}.status-badge.inactive{background-color:#94a3b81a;color:var(--text-muted)}.table-actions{display:flex;gap:8px}.table-actions .btn-action{padding:6px;min-width:auto}@media (max-width: 1024px){.hr-container{padding:16px}.header-content{flex-direction:column;align-items:stretch;gap:16px}.header-title h1{font-size:1.875rem}.dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.actions-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media (max-width: 768px){.header-title h1{font-size:1.5rem}.section-header,.section-controls{flex-direction:column;align-items:stretch}.search-input{width:100%}.staff-grid{grid-template-columns:1fr}.staff-table{overflow-x:auto}.dashboard-stats{grid-template-columns:1fr}.actions-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.hr-container{padding:12px}.hr-header{padding:20px}.stat-card,.staff-management{padding:16px}.actions-grid{grid-template-columns:1fr}}.staff-card,.stat-card,.action-card{animation:fadeIn .3s ease-out}.hr-container::-webkit-scrollbar{width:6px}.hr-container::-webkit-scrollbar-track{background:var(--bg-tertiary)}.hr-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.hr-container::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.profile-container{max-width:1400px;margin:0 auto;padding:20px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.profile-header{display:flex;align-items:center;gap:20px;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.profile-header h1{margin:0;color:#1e293b;font-size:28px;font-weight:600}.profile-content{display:flex;justify-content:center}.profile-card{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:32px;width:100%;max-width:1200px}.profile-photo-section{display:flex;align-items:center;gap:32px;margin-bottom:40px;padding-bottom:32px;border-bottom:1px solid #f1f5f9}.profile-photo-large{flex-shrink:0}.profile-photo-large img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:4px solid #f8fafc;box-shadow:0 4px 12px #0000001a}.profile-basic-info h2{margin:0 0 8px;color:#1e293b;font-size:32px;font-weight:700}.profile-role{margin:0 0 4px;color:#3b82f6;font-size:18px;font-weight:600}.profile-designation{margin:0 0 8px;color:#10b981;font-size:16px;font-weight:500}.profile-id{margin:0 0 16px;color:#64748b;font-size:14px;font-weight:500}.profile-status{display:inline-block;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.profile-status.active{background-color:#dcfce7;color:#16a34a}.profile-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:32px;margin-bottom:32px}.detail-section{background:#f8fafc;border-radius:12px;padding:24px;border:1px solid #e2e8f0}.detail-section h3{margin:0 0 20px;color:#1e293b;font-size:18px;font-weight:600;padding-bottom:12px;border-bottom:2px solid #e2e8f0}.detail-item{display:flex;justify-content:space-between;align-items:flex-start;padding:10px 0;border-bottom:1px solid #f1f5f9}.detail-item:last-child{border-bottom:none}.detail-item strong{color:#475569;font-weight:600;min-width:140px;font-size:14px}.detail-item span{color:#1e293b;text-align:right;flex:1;font-size:14px;word-break:break-word}.profile-notes{background:#fef3c7;border:1px solid #f59e0b;border-radius:12px;padding:24px;margin-bottom:32px}.profile-notes h3{margin:0 0 16px;color:#92400e;font-size:18px;font-weight:600}.profile-notes p{margin:0;color:#78350f;font-size:14px;line-height:1.6}.profile-actions{display:flex;justify-content:center;padding-top:32px;border-top:1px solid #f1f5f9}.edit-profile-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.edit-profile-btn:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.profile-loading,.profile-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}@media (max-width: 768px){.profile-container{padding:15px}.profile-header{flex-direction:column;align-items:flex-start;gap:15px}.profile-card{padding:20px}.profile-photo-section{flex-direction:column;text-align:center;gap:20px}.profile-basic-info h2{font-size:24px}.profile-details-grid{grid-template-columns:1fr;gap:20px}.detail-item{flex-direction:column;align-items:flex-start;gap:4px}.detail-item span{text-align:left}}.add-staff-container{max-width:1200px;margin:0 auto;padding:20px;background-color:#f8fafc;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.add-staff-header{margin-bottom:30px;text-align:center}.back-button{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#6b7280;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease;margin-bottom:20px}.back-button:hover{background:#4b5563}.add-staff-header h1{font-size:2.5rem;font-weight:700;color:#1f2937;margin:0 0 10px}.add-staff-header p{color:#6b7280;font-size:1.1rem;margin:0}.progress-container{margin-bottom:40px}.progress-bar{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:20px;border-radius:12px;box-shadow:0 1px 3px #0000001a}.progress-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.progress-step:not(:last-child):after{content:"";position:absolute;top:20px;right:-50%;width:100%;height:2px;background:#e5e7eb;z-index:1}.progress-step.active:not(:last-child):after{background:#3b82f6}.step-number{width:40px;height:40px;border-radius:50%;background:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:600;margin-bottom:8px;position:relative;z-index:2;transition:all .3s ease}.progress-step.active .step-number{background:#3b82f6;color:#fff}.step-title{font-size:.875rem;font-weight:500;color:#6b7280;text-align:center}.progress-step.active .step-title{color:#3b82f6}.form-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.add-staff-form{padding:30px}.form-section{margin-bottom:40px}.form-section h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 24px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.form-group label{font-size:.875rem;font-weight:600;color:#374151;margin-bottom:6px}.required{color:#ef4444;font-weight:700}.form-input{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:.875rem;transition:all .2s ease;background:#fff;box-sizing:border-box}.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-input:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.6}.error-message{color:#ef4444;font-size:.75rem;margin-top:4px;font-weight:500}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.autocomplete-field{position:relative;width:100%}.autocomplete-input-container{display:flex;gap:8px;align-items:stretch;width:100%}.autocomplete-input-container input.form-input{flex:1;width:calc(100% - 58px);min-width:0}.add-btn{padding:12px 16px;background-color:#d1d5db;color:#6b7280;border:2px solid #e5e7eb;border-radius:8px;cursor:not-allowed;transition:all .2s ease;font-weight:700;min-width:50px;font-size:16px;flex-shrink:0}.add-btn.enabled{background-color:#10b981;color:#fff;cursor:pointer;border-color:#10b981}.add-btn.enabled:hover{background-color:#059669;border-color:#059669}.add-btn.enabled:active{background-color:#047857;border-color:#047857}.add-btn:disabled,.add-btn.disabled{background-color:#f3f4f6;color:#9ca3af;cursor:not-allowed;opacity:.6;border-color:#e5e7eb}.autocomplete-dropdown{position:absolute;z-index:1000;width:100%;margin-top:4px;background:#fff;border:2px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px -3px #0000001a,0 4px 6px -2px #0000000d;max-height:200px;overflow-y:auto;overflow-x:hidden}.autocomplete-option{padding:12px 16px;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:all .2s ease;font-size:.875rem;-webkit-user-select:none;user-select:none;word-break:break-word}.autocomplete-option:hover{background-color:#f0f9ff;color:#1d4ed8}.autocomplete-option:active{background-color:#dbeafe}.autocomplete-no-results{padding:12px 16px;font-size:.875rem;color:#6b7280;font-style:italic;text-align:center;background-color:#f9fafb}.photo-upload-container{position:relative;display:flex;flex-direction:column;gap:12px}.photo-upload-label{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:2px dashed #d1d5db;border-radius:8px;background:#f9fafb;color:#6b7280;cursor:pointer;transition:all .2s ease;font-weight:500}.photo-upload-label:hover{border-color:#3b82f6;background:#f0f9ff;color:#3b82f6}.photo-preview{position:relative;display:inline-block;max-width:200px}.photo-preview img{width:100%;height:120px;object-fit:cover;border-radius:8px;border:2px solid #e5e7eb}.remove-photo-btn{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;background:#ef4444;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;transition:background-color .2s ease}.remove-photo-btn:hover{background:#dc2626}.staff-preview{background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;border-radius:12px;margin-bottom:30px;color:#fff}.staff-preview h3{margin:0 0 16px;font-size:1.25rem;font-weight:600}.preview-card{display:flex;align-items:center;gap:20px;background:#ffffff1a;padding:16px;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.preview-photo img{width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.3)}.preview-info h4{margin:0 0 8px;font-size:1.125rem;font-weight:600}.preview-info p{margin:4px 0;font-size:.875rem;opacity:.9}.advanced-section{border-top:1px solid #e5e7eb;padding-top:30px;margin-top:30px}.advanced-toggle{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#f3f4f6;border:none;border-radius:8px;cursor:pointer;font-weight:500;color:#374151;transition:background-color .2s ease;width:100%;justify-content:center}.advanced-toggle:hover{background:#e5e7eb}.advanced-fields{margin-top:20px;padding:20px;background:#f9fafb;border-radius:8px}.form-navigation{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding-top:30px;border-top:1px solid #e5e7eb}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;border:none;display:flex;align-items:center;gap:8px}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{background:#6b7280;color:#fff}.btn-secondary:hover:not(:disabled){background:#4b5563}.btn-secondary:disabled{background:#d1d5db;cursor:not-allowed;opacity:.5}@media (max-width: 768px){.add-staff-container{padding:15px}.form-grid{grid-template-columns:1fr}.progress-bar{flex-direction:column;gap:20px}.progress-step:not(:last-child):after{display:none}.preview-card{flex-direction:column;text-align:center}.form-navigation{flex-direction:column;gap:12px}.btn-primary,.btn-secondary{width:100%;justify-content:center}.autocomplete-input-container{flex-direction:column;gap:8px}.autocomplete-input-container input.form-input,.add-btn{width:100%}}@media (max-width: 480px){.add-staff-header h1{font-size:2rem}.autocomplete-dropdown{max-height:150px}}.form-input:focus-visible,.add-btn:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.autocomplete-option:focus{background-color:#f0f9ff;color:#1d4ed8;outline:none}.form-group.has-error .form-input{animation:shake .3s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.edit-staff-container{max-width:1400px;margin:0 auto;padding:20px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.edit-staff-header{display:flex;align-items:center;gap:20px;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.back-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:500}.back-btn:hover{background-color:#e2e8f0;border-color:#cbd5e1}.edit-staff-header h1{margin:0;color:#1e293b;font-size:28px;font-weight:600}.edit-staff-content{display:flex;justify-content:center}.edit-staff-form{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:32px;width:100%;max-width:1200px}.error-message,.success-message{display:flex;align-items:center;gap:12px;padding:16px;border-radius:8px;margin-bottom:24px;font-weight:500}.error-message{background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca}.success-message{background-color:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.form-sections{display:grid;gap:32px;margin-bottom:32px}.form-section{border:1px solid #f1f5f9;border-radius:12px;padding:24px;background-color:#fafbfc}.form-section h3{margin:0 0 20px;color:#1e293b;font-size:20px;font-weight:600;padding-bottom:12px;border-bottom:2px solid #e2e8f0}.form-group:last-child{margin-bottom:0}.form-group label{color:#374151;font-weight:600;font-size:14px}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:16px;transition:all .2s ease;background-color:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.autocomplete-field{position:relative}.autocomplete-input-container{display:flex;gap:8px}.autocomplete-input-container input{flex:1}.add-btn{padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;background-color:#f9fafb;color:#6b7280;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:45px}.add-btn.enabled{background-color:#3b82f6;color:#fff;border-color:#3b82f6}.add-btn.enabled:hover{background-color:#2563eb;border-color:#2563eb}.add-btn:disabled{cursor:not-allowed;opacity:.5}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a;z-index:1000;max-height:200px;overflow-y:auto}.autocomplete-option{padding:12px 16px;cursor:pointer;border-bottom:1px solid #f3f4f6}.autocomplete-option:hover{background-color:#f9fafb}.autocomplete-option:last-child{border-bottom:none}.autocomplete-no-results{padding:12px 16px;color:#6b7280;font-style:italic}.photo-upload-container{display:flex;flex-direction:column;gap:12px}.photo-input{display:none}.photo-upload-label{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;transition:all .2s ease;color:#6b7280;font-weight:500}.photo-upload-label:hover{border-color:#3b82f6;color:#3b82f6}.uploading-state{display:flex;align-items:center;gap:8px}.spinner-small{width:16px;height:16px;border:2px solid #f3f4f6;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.photo-preview{position:relative;width:120px;height:120px}.photo-preview img{width:100%;height:100%;object-fit:cover;border-radius:8px;border:1px solid #d1d5db}.remove-photo-btn{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;background-color:#ef4444;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}.remove-photo-btn:hover{background-color:#dc2626}.form-actions{display:flex;justify-content:flex-end;gap:16px;padding-top:24px;border-top:1px solid #f1f5f9}.cancel-btn,.save-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:120px;justify-content:center}.cancel-btn{background-color:#fff;color:#64748b;border:1px solid #d1d5db}.cancel-btn:hover{background-color:#f8fafc;border-color:#9ca3af}.save-btn{background-color:#3b82f6;color:#fff;border:none}.save-btn:hover:not(:disabled){background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.save-btn:disabled{background-color:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.btn-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.edit-staff-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid #f1f5f9;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@media (max-width: 768px){.edit-staff-container{padding:15px}.edit-staff-header{flex-direction:column;align-items:flex-start;gap:15px}.edit-staff-form{padding:20px}.form-row{grid-template-columns:1fr;gap:15px}.form-section{padding:16px}.form-actions{flex-direction:column;gap:12px}.cancel-btn,.save-btn{width:100%}.autocomplete-input-container{flex-direction:column}.add-btn{width:100%}}@media (max-width: 480px){.edit-staff-header h1{font-size:24px}.form-section h3{font-size:18px}}.att-container{padding:24px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#fafbfc;min-height:100vh}.att-header{background:#fff;padding:24px;border-radius:16px;box-shadow:0 2px 8px #0000000f;margin-bottom:24px;border:1px solid #e8eaed}.att-title{color:#1a73e8;margin:0 0 20px;font-weight:600;font-size:28px;display:flex;align-items:center;gap:12px}.att-title:before{content:"👥";font-size:32px}.att-header-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.att-date-input,.att-filter-input{padding:12px 16px;border:2px solid #e8eaed;border-radius:10px;font-size:14px;font-weight:500;transition:all .2s ease;background:#fff;min-width:160px}.att-date-input:focus,.att-filter-input:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e81a}.att-view-toggle{display:flex;background:#fff;border:2px solid #e8eaed;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.att-view-btn{background:transparent;border:none;padding:12px 20px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s ease;display:flex;align-items:center;gap:8px;color:#5f6368;border-right:1px solid #e8eaed}.att-view-btn:last-child{border-right:none}.att-view-btn.att-active{background:#1a73e8;color:#fff;box-shadow:inset 0 1px 3px #0000001a}.att-view-btn:hover:not(.att-active){background:#f8f9fa;color:#1a73e8}.att-view-icon{font-size:16px}.att-holiday-btn{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;border:none;padding:12px 20px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s ease;box-shadow:0 2px 8px #ff980033}.att-holiday-btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #ff98004d}.att-holiday-btn.att-active{background:linear-gradient(135deg,#f57c00,#e65100)}.att-bulk-action-btn{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff;border:none;padding:12px 20px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s ease;box-shadow:0 2px 8px #4caf5033}.att-bulk-action-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #4caf504d}.att-bulk-action-btn:disabled{background:#bdbdbd;cursor:not-allowed;transform:none;box-shadow:none}.att-clear-action-btn{background:linear-gradient(135deg,#f44336,#c62828);color:#fff;border:none;padding:12px 20px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s ease;box-shadow:0 2px 8px #f4433633}.att-clear-action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #f443364d}.att-holiday-banner{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;border-radius:16px;margin-bottom:24px;box-shadow:0 4px 16px #ff980033;overflow:hidden}.att-holiday-content{padding:20px 24px;display:flex;align-items:center;justify-content:center;gap:12px;font-weight:600;font-size:18px}.att-holiday-icon{font-size:24px}.att-stats-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:32px}.att-stat-card{background:#fff;padding:24px;border-radius:16px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px #0000000f;border:1px solid #e8eaed;transition:all .2s ease;position:relative;overflow:hidden}.att-stat-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--border-color)}.att-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.att-stat-card.att-present{--border-color: #4caf50}.att-stat-card.att-absent{--border-color: #f44336}.att-stat-card.att-half-day{--border-color: #9c27b0}.att-stat-card.att-leave{--border-color: #ff9800}.att-stat-card.att-total{--border-color: #2196f3}.att-stat-icon{font-size:32px;width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:rgba(var(--icon-color),.1)}.att-stat-card.att-present .att-stat-icon{--icon-color: 76, 175, 80;color:#4caf50}.att-stat-card.att-absent .att-stat-icon{--icon-color: 244, 67, 54;color:#f44336}.att-stat-card.att-half-day .att-stat-icon{--icon-color: 156, 39, 176;color:#9c27b0}.att-stat-card.att-leave .att-stat-icon{--icon-color: 255, 152, 0;color:#ff9800}.att-stat-card.att-total .att-stat-icon{--icon-color: 33, 150, 243;color:#2196f3}.att-stat-content{flex:1}.att-stat-number{font-size:32px;font-weight:700;margin-bottom:4px;color:#1a73e8}.att-stat-label{color:#5f6368;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.att-staff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:24px;max-height:65vh;overflow-y:auto;padding-right:8px}.att-staff-grid::-webkit-scrollbar{width:8px}.att-staff-grid::-webkit-scrollbar-track{background:#f1f3f4;border-radius:8px}.att-staff-grid::-webkit-scrollbar-thumb{background:#dadce0;border-radius:8px}.att-staff-grid::-webkit-scrollbar-thumb:hover{background:#bdc1c6}.att-staff-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #e8eaed;transition:all .3s ease;position:relative;overflow:hidden}.att-staff-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#e8eaed;transition:all .3s ease}.att-staff-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.att-staff-card.att-status-present:before{background:#4caf50}.att-staff-card.att-status-absent:before{background:#f44336}.att-staff-card.att-status-half-day:before{background:#9c27b0}.att-staff-card.att-status-leave:before{background:#ff9800}.att-staff-info{display:flex;align-items:center;margin-bottom:24px}.att-staff-avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;margin-right:16px;border:3px solid #e8eaed;flex-shrink:0}.att-staff-avatar img{width:100%;height:100%;object-fit:cover}.att-staff-name{margin:0 0 6px;color:#202124;font-weight:600;font-size:18px}.att-staff-id{color:#5f6368;font-size:14px;margin:0 0 8px}.att-staff-role{background:#e8f0fe;color:#1a73e8;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.att-attendance-actions{display:flex;flex-direction:column;gap:16px}.att-attendance-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px}.att-attendance-btn{padding:12px 16px;border:2px solid;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s ease;background:#fff;display:flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden}.att-attendance-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.att-attendance-btn:hover:before{left:100%}.att-attendance-btn.att-present-btn{color:#4caf50;border-color:#4caf50}.att-attendance-btn.att-present-btn:hover,.att-attendance-btn.att-present-btn.att-active{background:#4caf50!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 16px #4caf504d}.att-attendance-btn.att-absent-btn{color:#f44336;border-color:#f44336}.att-attendance-btn.att-absent-btn:hover,.att-attendance-btn.att-absent-btn.att-active{background:#f44336!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 16px #f443364d}.att-attendance-btn.att-half-day-btn{color:#9c27b0;border-color:#9c27b0}.att-attendance-btn.att-half-day-btn:hover,.att-attendance-btn.att-half-day-btn.att-active{background:#9c27b0!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 16px #9c27b04d}.att-attendance-btn.att-leave-btn{color:#ff9800;border-color:#ff9800}.att-attendance-btn.att-leave-btn:hover,.att-attendance-btn.att-leave-btn.att-active{background:#ff9800!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 16px #ff98004d}.att-note-btn{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;border:none;padding:12px 16px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 2px 8px #2196f333}.att-note-btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #2196f34d}.att-list-container{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;border:1px solid #e8eaed;overflow:hidden;max-height:65vh;display:flex;flex-direction:column}.att-list-table{display:flex;flex-direction:column;height:100%}.att-list-header{display:grid;grid-template-columns:80px 2fr 1fr 1.2fr 2fr 80px;gap:16px;padding:20px 24px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #e8eaed;font-weight:700;color:#202124;font-size:14px;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:10}.att-list-body{flex:1;overflow-y:auto;padding-right:4px}.att-list-body::-webkit-scrollbar{width:6px}.att-list-body::-webkit-scrollbar-track{background:#f1f3f4}.att-list-body::-webkit-scrollbar-thumb{background:#dadce0;border-radius:6px}.att-list-row{display:grid;grid-template-columns:80px 2fr 1fr 1.2fr 2fr 80px;gap:16px;padding:16px 24px;border-bottom:1px solid #f1f3f4;transition:all .2s ease;align-items:center;position:relative;background:#fff}.att-list-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:transparent;transition:all .2s ease}.att-list-row:hover{background:#f8f9fa;transform:translate(4px);box-shadow:0 2px 8px #0000000d}.att-list-row.att-status-present:before{background:#4caf50}.att-list-row.att-status-absent:before{background:#f44336}.att-list-row.att-status-half-day:before{background:#9c27b0}.att-list-row.att-status-leave:before{background:#ff9800}.att-list-col{display:flex;align-items:center}.att-list-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;border:2px solid #e8eaed}.att-list-avatar img{width:100%;height:100%;object-fit:cover}.att-list-staff-info{display:flex;flex-direction:column;gap:4px}.att-list-staff-name{font-weight:600;color:#202124;font-size:16px}.att-list-staff-id{color:#5f6368;font-size:12px;font-weight:500}.att-list-role-badge{background:#e8f0fe;color:#1a73e8;padding:6px 12px;border-radius:16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-block}.att-status-indicator{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:20px;font-weight:600;font-size:13px}.att-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.att-status-indicator.att-status-present{background:#4caf501a;color:#2e7d32}.att-status-indicator.att-status-present .att-status-dot{background:#4caf50}.att-status-indicator.att-status-absent{background:#f443361a;color:#c62828}.att-status-indicator.att-status-absent .att-status-dot{background:#f44336}.att-status-indicator.att-status-half-day{background:#9c27b01a;color:#7b1fa2}.att-status-indicator.att-status-half-day .att-status-dot{background:#9c27b0}.att-status-indicator.att-status-leave{background:#ff98001a;color:#e65100}.att-status-indicator.att-status-leave .att-status-dot{background:#ff9800}.att-status-indicator.att-status-not-set{background:#9e9e9e1a;color:#616161}.att-status-indicator.att-status-not-set .att-status-dot{background:#9e9e9e}.att-list-attendance-buttons{display:flex;gap:8px}.att-list-btn{width:36px;height:36px;border:2px solid;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:14px;display:flex;align-items:center;justify-content:center;background:#fff;font-weight:600}.att-list-btn.att-present-btn{color:#4caf50;border-color:#4caf50}.att-list-btn.att-present-btn:hover,.att-list-btn.att-present-btn.att-active{background:#4caf50!important;color:#fff!important;transform:scale(1.05)}.att-list-btn.att-absent-btn{color:#f44336;border-color:#f44336}.att-list-btn.att-absent-btn:hover,.att-list-btn.att-absent-btn.att-active{background:#f44336!important;color:#fff!important;transform:scale(1.05)}.att-list-btn.att-half-day-btn{color:#9c27b0;border-color:#9c27b0}.att-list-btn.att-half-day-btn:hover,.att-list-btn.att-half-day-btn.att-active{background:#9c27b0!important;color:#fff!important;transform:scale(1.05)}.att-list-btn.att-leave-btn{color:#ff9800;border-color:#ff9800}.att-list-btn.att-leave-btn:hover,.att-list-btn.att-leave-btn.att-active{background:#ff9800!important;color:#fff!important;transform:scale(1.05)}.att-list-note-btn{background:#2196f3;color:#fff;border:none;width:36px;height:36px;border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:14px}.att-list-note-btn:hover{background:#1976d2;transform:scale(1.05)}.att-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.att-note-modal{background:#fff;border-radius:16px;width:90%;max-width:500px;box-shadow:0 20px 60px #0000004d;animation:att-modalSlideIn .3s ease;border:1px solid #e8eaed}@keyframes att-modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.att-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e8eaed}.att-modal-title{margin:0;color:#202124;font-weight:600;font-size:18px}.att-close-btn{background:none;border:none;font-size:20px;cursor:pointer;color:#5f6368;padding:8px;border-radius:50%;transition:all .2s ease;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.att-close-btn:hover{background:#f1f3f4;color:#202124}.att-modal-body{padding:24px}.att-note-textarea{width:100%;padding:16px;border:2px solid #e8eaed;border-radius:12px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s;box-sizing:border-box;min-height:120px}.att-note-textarea:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e81a}.att-modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:24px;border-top:1px solid #e8eaed;background:#fafbfc}.att-cancel-btn,.att-save-btn{padding:12px 24px;border:none;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s ease}.att-cancel-btn{background:#f1f3f4;color:#5f6368}.att-cancel-btn:hover{background:#e8eaed;color:#202124}.att-save-btn{background:linear-gradient(135deg,#1a73e8,#1557b0);color:#fff;box-shadow:0 2px 8px #1a73e833}.att-save-btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #1a73e84d}.att-loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;color:#5f6368}.att-spinner{width:48px;height:48px;border:4px solid #f1f3f4;border-top:4px solid #1a73e8;border-radius:50%;animation:att-spin 1s linear infinite;margin-bottom:20px}@keyframes att-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1024px){.att-staff-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.att-list-header,.att-list-row{grid-template-columns:70px 2fr 1fr 1.5fr 60px;gap:12px}.att-col-role{display:none}}@media (max-width: 768px){.att-container{padding:16px}.att-header{padding:20px}.att-header-controls{flex-direction:column;gap:12px;width:100%}.att-header-controls>*{width:100%}.att-view-toggle{justify-content:center}.att-stats-container{grid-template-columns:repeat(2,1fr);gap:16px}.att-staff-grid{grid-template-columns:1fr;max-height:50vh}.att-attendance-buttons{grid-template-columns:1fr;gap:8px}.att-staff-info{flex-direction:column;text-align:center;margin-bottom:20px}.att-staff-avatar{margin:0 0 12px}.att-list-header,.att-list-row{grid-template-columns:60px 2fr 1.2fr 50px;gap:8px}.att-col-role,.att-col-status{display:none}.att-list-attendance-buttons{flex-wrap:wrap;gap:4px}.att-list-btn{width:32px;height:32px;font-size:12px}}@media (max-width: 480px){.att-stats-container{grid-template-columns:1fr}.att-staff-card{padding:16px}.att-attendance-btn{padding:10px 12px;font-size:12px}.att-btn-text,.att-note-text{display:none}}.att-list-container{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;border:1px solid #e8eaed;overflow:hidden;height:65vh;display:flex;flex-direction:column}.att-list-table{display:flex;flex-direction:column;height:100%;overflow:hidden}.att-list-body{flex:1;overflow-y:auto;overflow-x:hidden}.att-list-body::-webkit-scrollbar{width:8px}.att-list-body::-webkit-scrollbar-track{background:#f8f9fa;border-radius:4px}.att-list-body::-webkit-scrollbar-thumb{background:#dadce0;border-radius:4px}.att-list-body::-webkit-scrollbar-thumb:hover{background:#bdc1c6}.att-stat-card.att-late{border-left-color:#ff6b35}.att-stat-card.att-late .att-stat-icon{--icon-color: 255, 107, 53;color:#ff6b35}.att-late-btn{color:#ff6b35;border-color:#ff6b35}.att-late-btn:hover,.att-late-btn.att-active{background:#ff6b35!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 16px #ff6b354d}.att-staff-card.att-status-late:before{background:#ff6b35}.att-list-row.att-status-late:before{background:#ff6b35}.att-status-indicator.att-status-late{background:#ff6b351a;color:#e64100}.att-status-indicator.att-status-late .att-status-dot{background:#ff6b35}.att-list-btn.att-late-btn{color:#ff6b35;border-color:#ff6b35}.att-list-btn.att-late-btn:hover,.att-list-btn.att-late-btn.att-active{background:#ff6b35!important;color:#fff!important;transform:scale(1.05)}.att-save-btn{background:linear-gradient(135deg,#34a853,#137333);color:#fff;border:none;padding:12px 20px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s ease;box-shadow:0 2px 8px #34a85333;display:flex;align-items:center;gap:8px}.att-save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #34a8534d}.att-save-btn:disabled{background:#bdbdbd;cursor:not-allowed;transform:none;box-shadow:none}.att-attendance-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.att-attendance-buttons .att-attendance-btn:nth-child(5){grid-column:1 / -1}.att-list-attendance-buttons{display:flex;gap:6px;flex-wrap:wrap}.att-list-header,.att-list-row{grid-template-columns:80px 2fr 1fr 1.2fr 250px 80px}@media (max-width: 1024px){.att-list-header,.att-list-row{grid-template-columns:70px 2fr 1fr 200px 60px;gap:12px}.att-col-role{display:none}.att-list-attendance-buttons{gap:4px}.att-list-btn{width:28px;height:28px;font-size:11px}}@media (max-width: 768px){.att-attendance-buttons{grid-template-columns:1fr}.att-attendance-buttons .att-attendance-btn:nth-child(5){grid-column:1}.att-list-container{height:50vh}.att-list-header,.att-list-row{grid-template-columns:60px 2fr 150px 50px;gap:8px}.att-col-role,.att-col-status{display:none}}@media (max-width: 768px){.att-header-controls{gap:8px}.att-header-controls .att-save-btn{padding:10px 16px;font-size:12px}}.payroll-container{background-color:#f8fafc;min-height:100vh;padding:20px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.payroll-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:30px;margin-bottom:30px;color:#fff;box-shadow:0 10px 30px #667eea4d}.header-left{display:flex;align-items:center;gap:20px}.btn-back{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:10px 16px;border-radius:8px;display:flex;align-items:center;gap:8px;font-weight:500;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:14px}.btn-back:hover{background:#ffffff4d;transform:translateY(-2px)}.header-title h1{margin:0;font-size:2rem;font-weight:700;letter-spacing:-.02em}.header-title p{margin:5px 0 0;opacity:.9;font-size:1rem}.payroll-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;border-radius:12px;padding:24px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001f}.stat-content h3{margin:0 0 4px;font-size:2rem;font-weight:700;color:#1f2937;line-height:1}.stat-content p{margin:0;color:#6b7280;font-weight:500;font-size:.875rem}.payroll-filters{margin-bottom:30px}.filter-card{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0}.filter-card h3{margin:0 0 25px;color:#2d3748;font-weight:600;font-size:1.25rem;display:flex;align-items:center;gap:10px}.error-message{background:#fed7d7;color:#e53e3e;padding:12px 16px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:10px;font-weight:500}.filter-form{display:flex;flex-direction:column;gap:25px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.form-group label{font-weight:600;color:#4a5568;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.form-select{padding:12px 40px 12px 16px;border:2px solid #e2e8f0;border-radius:8px;background:#fff;color:#2d3748;font-size:1rem;transition:all .3s ease;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px}.form-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-select:hover{border-color:#cbd5e0}.filter-actions{display:flex;gap:15px;flex-wrap:wrap}.btn-search,.btn-clear,.btn-export{padding:12px 24px;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;border:none;min-height:44px;text-decoration:none}.btn-search{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.btn-search:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea80}.btn-search:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-clear{background:#f7fafc;color:#4a5568;border:2px solid #e2e8f0}.btn-clear:hover{background:#edf2f7;border-color:#cbd5e0;transform:translateY(-1px)}.payroll-results{background:#fff;border-radius:16px;padding:0;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0;overflow:hidden}.results-header{padding:30px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background:#f8fafc}.results-header h3{margin:0;color:#2d3748;font-weight:600;font-size:1.25rem}.payroll-table{width:100%;overflow-x:auto;background:#fff}.table-header{display:grid;grid-template-columns:120px 220px 150px 180px 140px 150px;background:#f8fafc;border-bottom:2px solid #e2e8f0;font-weight:700;color:#4a5568;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:10}.table-column{padding:16px 12px;display:flex;align-items:center;background:#f8fafc;border-right:1px solid #e2e8f0;font-weight:700;color:#374151}.table-column:last-child{border-right:none}.table-body{display:block;max-height:600px;overflow-y:auto;background:#fff}.table-row{display:grid;grid-template-columns:120px 220px 150px 180px 140px 150px;border-bottom:1px solid #f1f5f9;transition:all .2s ease;background:#fff;align-items:center;min-height:70px}.table-row:hover{background:#f8fafc;border-bottom-color:#e2e8f0}.table-cell{padding:16px 12px;display:flex;align-items:center;font-size:.875rem;border-right:1px solid #f1f5f9;min-height:70px;overflow:hidden;color:#374151}.table-cell:last-child{border-right:none}.staff-id{font-weight:700;color:#3730a3;background:#e0e7ff;padding:6px 10px;border-radius:6px;font-size:.8rem;letter-spacing:.5px}.employee-info{display:flex;align-items:flex-start;gap:12px;width:100%}.employee-details{flex:1;min-width:0}.employee-name{font-weight:600;color:#1f2937;margin-bottom:4px;font-size:.875rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.employee-email{font-size:.75rem;color:#6b7280;line-height:1.2;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.role-badge{background:#ddd6fe;color:#5b21b6;padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap;border:1px solid #c4b5fd}.department-text{color:#374151;font-weight:500;font-size:.875rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}.status-badge{padding:8px 14px;border-radius:16px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;min-width:110px;text-align:center}.status-generated{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.status-pending{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.status-paid{background:#dbeafe;color:#1e40af;border:1px solid #bfdbfe}.action-btn{padding:10px 16px;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:6px;text-decoration:none;border:none;min-width:130px;justify-content:center;white-space:nowrap;text-align:center}.action-btn.proceed{background:#10b981;color:#fff;box-shadow:0 2px 4px #10b9814d}.action-btn.proceed:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 8px #10b98166}.action-btn.generate{background:#f59e0b;color:#fff;box-shadow:0 2px 4px #f59e0b4d}.action-btn.generate:hover{background:#d97706;transform:translateY(-1px);box-shadow:0 4px 8px #f59e0b66}.action-btn.view{background:#6366f1;color:#fff;box-shadow:0 2px 4px #6366f14d}.action-btn.view:hover{background:#4f46e5;transform:translateY(-1px);box-shadow:0 4px 8px #6366f166}.empty-state{text-align:center;padding:60px 20px;color:#64748b;background:#fff}.empty-state h4{color:#374151;margin-bottom:10px;font-size:1.125rem;font-weight:600}.empty-state p{color:#6b7280}.generation-modal-overlay{position:fixed;inset:0;z-index:9999;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}.generation-modal-container{position:relative;background:#fff;border-radius:16px;box-shadow:0 25px 50px #00000080;max-width:1200px;width:100%;max-height:calc(100vh - 40px);overflow:hidden;display:flex;flex-direction:column;margin:auto;animation:modalSlideIn .3s ease-out}.modal-header{padding:24px 30px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background:#f8fafc;flex-shrink:0}.modal-header h2{margin:0;color:#2d3748;font-weight:600;font-size:1.375rem}.btn-close{background:none;border:none;color:#6b7280;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;font-size:24px;line-height:1;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.btn-close:hover{background:#f3f4f6;color:#374151}.modal-body{padding:30px;overflow-y:auto;flex:1}.payroll-generation-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px}.staff-details-section{border:1px solid #ddd;border-radius:8px;padding:20px}.staff-profile{display:flex;flex-direction:column;gap:20px}.profile-image{text-align:center}.profile-image img{width:120px;height:120px;border-radius:8px;object-fit:cover;border:2px solid #ddd}.image-upload{margin-top:10px}.upload-btn{display:inline-block;padding:8px 16px;background:#007bff;color:#fff;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background .3s ease}.upload-btn:hover{background:#0056b3}.staff-info{display:flex;flex-direction:column;gap:8px}.info-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f0f0}.info-row .label{font-weight:500;color:#666;min-width:100px}.info-row .value{color:#333;text-align:right}.attendance-section{border:1px solid #ddd;border-radius:8px;padding:20px}.attendance-section h3{margin:0 0 15px;text-align:center;color:#333;font-size:1.2rem}.attendance-table{width:100%}.attendance-header,.attendance-row{display:grid;grid-template-columns:1fr repeat(6,50px);gap:8px;align-items:center;padding:8px 0}.attendance-header{font-weight:700;border-bottom:2px solid #ddd;background:#f8f9fa;padding:12px 0}.attendance-row{border-bottom:1px solid #f0f0f0}.month-col{text-align:left;font-weight:500}.att-col{text-align:center;font-weight:500}.attendance-input{width:100%;padding:6px;border:1px solid #ddd;border-radius:4px;text-align:center;font-size:.9rem}.attendance-input:focus{border-color:#007bff;outline:none}.bottom-sections{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px}.earnings-section,.deductions-section,.payroll-summary-section{border:2px solid #e2e8f0;border-radius:12px;padding:24px;background:#fff;box-shadow:0 4px 12px #0000000d}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #f1f5f9}.section-header h3{margin:0;color:#2d3748;font-size:1.2rem;font-weight:700}.btn-add{background:#28a745;color:#fff;border:none;border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center}.btn-add:hover{background:#218838}.btn-calculate{background:#4f46e5;color:#fff;border:none;border-radius:6px;padding:8px 16px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease}.btn-calculate:hover{background:#4338ca;transform:translateY(-1px)}.items-list{display:flex;flex-direction:column;gap:10px}.item-row{display:grid;grid-template-columns:1fr 80px 30px;gap:8px;align-items:center}.type-input,.amount-input{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.type-input:focus,.amount-input:focus{border-color:#007bff;outline:none}.btn-remove{background:#dc3545;color:#fff;border:none;border-radius:4px;width:28px;height:28px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center}.btn-remove:hover{background:#c82333}.summary-content{display:flex;flex-direction:column;gap:12px}.summary-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f0f0}.summary-row.total-row{border-top:2px solid #007bff;border-bottom:2px solid #007bff;font-weight:700;margin-top:10px;padding:12px 0}.tax-red{color:#dc3545;font-weight:500}.tax-input-row{display:flex;justify-content:flex-end;margin:5px 0}.tax-input{width:80px;padding:4px 8px;border:1px solid #ddd;border-radius:4px;text-align:center}.tax-input:focus{border-color:#007bff;outline:none}.modal-footer{padding:20px 30px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:10px;background:#f8f9fa;flex-shrink:0}.btn-save{background:#007bff;color:#fff;border:none;border-radius:4px;padding:12px 24px;cursor:pointer;font-size:1rem;font-weight:500;transition:background .3s ease}.btn-save:hover:not(:disabled){background:#0056b3}.btn-save:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 1200px){.table-header,.table-row{grid-template-columns:100px 200px 130px 160px 120px 140px}}@media (max-width: 1024px){.table-header,.table-row{grid-template-columns:90px 180px 120px 140px 110px 130px}.payroll-generation-layout,.bottom-sections{grid-template-columns:1fr}}@media (max-width: 768px){.payroll-container{padding:15px}.payroll-table{font-size:.75rem;overflow-x:auto}.table-header,.table-row{grid-template-columns:80px 160px 100px 120px 100px 120px;min-width:700px}.table-cell{padding:12px 8px}.action-btn{padding:8px 12px;font-size:.75rem;min-width:100px}.generation-modal-container{width:95%;margin:20px;max-height:calc(100vh - 40px)}.attendance-header,.attendance-row{grid-template-columns:1fr repeat(6,40px);gap:4px}}.modal-body::-webkit-scrollbar,.table-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track,.table-body::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.modal-body::-webkit-scrollbar-thumb,.table-body::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover,.table-body::-webkit-scrollbar-thumb:hover{background:#a0aec0}.payroll-results{animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0;transition:all .2s ease}.summary-item:hover{background:#f1f5f9;border-color:#cbd5e0}.summary-label{color:#4a5568;font-weight:600;font-size:.95rem}.summary-value{color:#2d3748;font-weight:700;font-size:1rem;text-align:right}.earning-value{color:#10b981}.deduction-value,.tax-value{color:#ef4444}.total-value{color:#1e40af;font-size:1.1rem}.tax-item{background:#fef7f7;border-color:#fed7d7}.tax-input-container{display:flex;align-items:center}.tax-input-field{width:80px;padding:8px 12px;border:2px solid #e2e8f0;border-radius:6px;text-align:center;font-weight:600;font-size:.95rem;transition:all .3s ease}.tax-input-field:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.total-item{background:#eff6ff;border:2px solid #3b82f6;margin-top:8px;padding:16px}.total-item .summary-label,.total-item .summary-value{font-size:1.1rem;font-weight:700}.items-list{display:flex;flex-direction:column;gap:12px;min-height:200px}.no-items-message{display:flex;align-items:center;justify-content:center;padding:40px 20px;color:#6b7280;font-style:italic;background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;text-align:center}.item-row{display:grid;grid-template-columns:1fr 100px 36px;gap:12px;align-items:center;padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;transition:all .2s ease}.item-row:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000000d}.type-input,.amount-input{padding:10px 12px;border:2px solid #e2e8f0;border-radius:6px;font-size:.9rem;transition:all .3s ease}.type-input:focus,.amount-input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.amount-input{text-align:right;font-weight:600}.btn-remove{background:#ef4444;color:#fff;border:none;border-radius:6px;width:32px;height:32px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.btn-remove:hover{background:#dc2626;transform:scale(1.1)}.earnings-section,.deductions-section{border:2px solid #e2e8f0;border-radius:12px;padding:24px;background:#fff;box-shadow:0 4px 12px #0000000d}.earnings-section .section-header{border-bottom-color:#d1fae5}.deductions-section .section-header{border-bottom-color:#fed7d7}.btn-add{background:#10b981;color:#fff;border:none;border-radius:50%;width:36px;height:36px;cursor:pointer;font-size:20px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 2px 4px #10b9814d}.btn-add:hover{background:#059669;transform:translateY(-2px);box-shadow:0 4px 8px #10b98166}.deductions-section .btn-add{background:#ef4444;box-shadow:0 2px 4px #ef44444d}.deductions-section .btn-add:hover{background:#dc2626;box-shadow:0 4px 8px #ef444466}.appointment-modal{max-width:600px;width:100%}.selected-patient-info{padding:0 30px 20px;display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#f8fafc,#e2e8f0);margin:-1px -1px 20px;border-radius:0 0 16px 16px;border-top:1px solid #e2e8f0}.selected-patient-info .patient-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.selected-patient-info .patient-avatar img{width:100%;height:100%;object-fit:cover}.selected-patient-info .patient-avatar svg{width:24px;height:24px;color:#fff}.selected-patient-info .patient-details h3{font-size:1.1rem;font-weight:600;color:#2d3748;margin:0 0 4px}.selected-patient-info .patient-details p{font-size:.9rem;color:#667eea;margin:0;font-weight:500}.success-message,.error-message{margin:0 30px 20px;padding:16px 20px;border-radius:12px;display:flex;align-items:center;gap:12px;animation:messageSlideIn .3s ease-out}.success-message{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}.error-message{background:linear-gradient(135deg,#f56565,#e53e3e);color:#fff}.success-message svg,.error-message svg{width:20px;height:20px;flex-shrink:0}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.appointment-form{padding:0 30px 30px}.form-group{margin-bottom:24px}.form-group label{display:block;font-weight:600;color:#4a5568;margin-bottom:8px;font-size:.95rem}.form-control{width:100%;padding:14px 16px;border:2px solid #e2e8f0;border-radius:12px;font-size:16px;transition:all .2s ease;background:#fff}.form-control:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.appointment-type-selection{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}.type-btn{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:16px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .2s ease;font-size:.95rem;font-weight:500;color:#4a5568}.type-btn:hover{background:#edf2f7;border-color:#cbd5e0}.type-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.type-btn svg{width:20px;height:20px;flex-shrink:0}.slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:8px}.slot-btn{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:14px 8px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:4px;min-height:70px}.slot-btn:hover:not(:disabled){border-color:#667eea;background:#f8fafc}.slot-btn.available{border-color:#48bb78;background:#f0fff4}.slot-btn.available:hover{background:#c6f6d5;border-color:#38a169}.slot-btn.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.slot-btn.unavailable{background:#f7fafc;border-color:#e2e8f0;color:#a0aec0;cursor:not-allowed}.slot-time{font-size:.95rem;font-weight:600}.slot-status{font-size:.8rem;font-weight:500}.walkin-info{margin-top:8px}.info-card{background:linear-gradient(135deg,#e6fffa,#b2f5ea);border:2px solid #81e6d9;border-radius:12px;padding:20px;display:flex;align-items:flex-start;gap:16px}.info-card svg{width:24px;height:24px;color:#319795;flex-shrink:0;margin-top:2px}.info-card h4{font-size:1.1rem;font-weight:600;color:#234e52;margin:0 0 8px}.info-card p{font-size:.9rem;color:#2d5a5e;margin:0;line-height:1.5}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid #e2e8f0}.btn{padding:12px 24px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn svg{width:18px;height:18px}.btn-secondary{background:#f7fafc;color:#4a5568;border:2px solid #e2e8f0}.btn-secondary:hover:not(:disabled){background:#edf2f7;border-color:#cbd5e0}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea33}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea4d}.spinner{width:18px;height:18px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.loading-state,.empty-state{text-align:center;padding:40px 20px}.loading-state .spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top:3px solid #667eea;margin:0 auto 16px}.empty-state p{color:#718096;margin:0;font-size:.95rem}@media (max-width: 768px){.appointment-modal{max-width:95vw;margin:10px}.selected-patient-info,.appointment-form{padding-left:20px;padding-right:20px}.success-message,.error-message{margin-left:20px;margin-right:20px}.appointment-type-selection{grid-template-columns:1fr;gap:8px}.slots-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.form-actions{flex-direction:column-reverse;gap:8px}.btn{width:100%;justify-content:center}}@media (max-width: 480px){.selected-patient-info{flex-direction:column;text-align:center;padding:20px}.info-card{flex-direction:column;text-align:center}.slots-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}}.opd_container{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#e3f2fd);padding:20px}.opd_header{text-align:center;color:#2d3748;margin-bottom:30px}.opd_header h1{font-size:2.5rem;font-weight:700;margin-bottom:8px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.opd_header p{font-size:1.1rem;color:#718096;font-weight:400}.opd_error-message{background:linear-gradient(135deg,#ff6b6b,#ee5a24);color:#fff;padding:16px 20px;border-radius:12px;margin-bottom:20px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 15px #ff6b6b4d}.opd_error-message svg{width:24px;height:24px;flex-shrink:0}.opd_content{max-width:1400px;margin:0 auto}.opd_quick-actions-section{background:#fff;border-radius:16px;padding:30px;margin-bottom:30px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0}.opd_quick-actions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:20px}.opd_quick-actions-header h2{font-size:1.8rem;font-weight:600;color:#2d3748;margin:0}.opd_search-container{flex:1;max-width:400px}.opd_search-input-wrapper{position:relative;width:100%}.opd_search-input-wrapper svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#a0aec0}.opd_search-input{width:100%;padding:14px 16px 14px 50px;border:2px solid #e2e8f0;border-radius:12px;font-size:16px;background:#fff;transition:all .2s ease}.opd_search-input:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.opd_quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.opd_quick-action-btn{background:#fff;color:#2d3748;border:2px solid #e2e8f0;border-radius:16px;padding:24px;display:flex;align-items:center;gap:20px;cursor:pointer;transition:all .3s ease;min-height:100px}.opd_quick-action-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:#4299e1}.opd_quick-action-btn.opd_appointment-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;box-shadow:0 4px 15px #667eea33}.opd_quick-action-btn.opd_appointment-btn:hover{box-shadow:0 8px 25px #667eea4d}.opd_quick-action-btn.opd_patient-btn{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border:none;box-shadow:0 4px 15px #4ecdc433}.opd_quick-action-btn.opd_patient-btn:hover{box-shadow:0 8px 25px #4ecdc44d}.opd_quick-action-btn svg{width:32px;height:32px;flex-shrink:0}.opd_action-content h3{font-size:1.3rem;font-weight:600;margin:0 0 4px}.opd_action-content p{font-size:.95rem;opacity:.9;margin:0}.opd_patient-section{background:#fff;border-radius:16px;padding:30px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0}.opd_section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.opd_section-header h2{font-size:1.8rem;font-weight:600;color:#2d3748;margin:0}.opd_patient-count{font-size:.95rem;color:#718096;margin:0;font-weight:500}.opd_patients-table-container{overflow-x:auto;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 8px #0000000d}.opd_patients-table{width:100%;border-collapse:collapse;background:#fff;font-size:14px}.opd_patients-table thead{background:linear-gradient(135deg,#667eea,#764ba2)}.opd_patients-table th{padding:16px;text-align:left;font-weight:600;color:#fff;border-bottom:2px solid #e2e8f0;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.opd_patients-table td{padding:16px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.opd_patient-row{transition:all .2s ease}.opd_patient-row:hover{background:#f8fafc}.opd_patient-info-cell{min-width:250px}.opd_patient-info-container{display:flex;align-items:center;gap:12px}.opd_patient-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;box-shadow:0 2px 8px #667eea4d}.opd_patient-avatar img{width:100%;height:100%;object-fit:cover}.opd_patient-avatar svg{width:20px;height:20px;color:#fff}.opd_patient-name-info h3{font-size:15px;font-weight:600;color:#2d3748;margin:0 0 4px}.opd_guardian-name{font-size:12px;color:#718096;margin:0}.opd_age-gender{font-size:12px;color:#718096}.opd_patient-id-cell{min-width:120px}.opd_patient-id-badge{background:linear-gradient(135deg,#4299e1,#2b6cb0);color:#fff;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;display:inline-block;box-shadow:0 2px 8px #4299e14d}.opd_age-gender-cell{min-width:100px}.opd_age-gender-info{display:flex;flex-direction:column;gap:2px}.opd_age{font-size:14px;font-weight:600;color:#2d3748}.opd_gender{font-size:12px;color:#718096;text-transform:capitalize}.opd_contact-cell{min-width:150px}.opd_contact-info{display:flex;flex-direction:column;gap:2px}.opd_phone{font-size:14px;font-weight:500;color:#2d3748}.opd_email{font-size:12px;color:#718096;word-break:break-all}.opd_actions-cell{min-width:180px;text-align:right}.opd_actions-cell button{margin-left:8px}.opd_loading-state,.opd_empty-state{text-align:center;padding:60px 20px}.opd_loading-state .opd_spinner{width:40px;height:40px;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;animation:opd_spin 1s linear infinite;margin:0 auto 20px}@keyframes opd_spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.opd_empty-state svg{width:64px;height:64px;color:#a0aec0;margin-bottom:16px}.opd_empty-state h3{font-size:1.3rem;font-weight:600;color:#4a5568;margin:0 0 8px}.opd_empty-state p{color:#718096;margin:0}.opd_modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.opd_modal-content{background:#fff;border-radius:20px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:opd_modalSlideIn .3s ease-out}.opd_patient-search-modal{max-width:1000px}.opd_add-patient-modal{max-width:900px}@keyframes opd_modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.opd_modal-header{padding:30px 30px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:none;display:flex;justify-content:space-between;align-items:center;border-radius:20px 20px 0 0}.opd_modal-header h2{font-size:1.8rem;font-weight:700;color:#fff;margin:0}.opd_modal-close-btn{background:#fff3;border:none;padding:8px;cursor:pointer;color:#fff;transition:all .2s ease;border-radius:8px}.opd_modal-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.opd_modal-close-btn svg{width:20px;height:20px}.opd_modal-patients-list{padding:20px 30px;max-height:500px;overflow-y:auto}.opd_modal-table th{position:sticky;top:0;background:linear-gradient(135deg,#667eea,#764ba2);z-index:1}.opd_modal-footer{padding:20px 30px 30px;border-top:1px solid #e2e8f0;text-align:center}.opd_add-patient-form{padding:30px;background:linear-gradient(135deg,#f8fafc,#fff)}.opd_form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px}@media (max-width: 1024px){.opd_form-grid{grid-template-columns:repeat(2,1fr)}}.opd_form-group{display:flex;flex-direction:column;position:relative}.opd_form-group.opd_full-width{grid-column:1 / -1}.opd_form-group label{font-weight:600;color:#4a5568;margin-bottom:8px;font-size:.9rem}.opd_form-group input,.opd_form-group select,.opd_form-group textarea{padding:12px 16px;border:2px solid #e2e8f0;border-radius:10px;font-size:15px;transition:all .2s ease;background:#fff;font-family:inherit}.opd_form-group input:focus,.opd_form-group select:focus,.opd_form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;background:#fff}.opd_form-group input:disabled,.opd_form-group select:disabled{background:#f7fafc;cursor:not-allowed;opacity:.6}.opd_form-group textarea{resize:vertical;min-height:80px}.opd_form-group small{font-size:.75rem;color:#718096;margin-top:4px;font-style:italic}.opd_form-actions{margin-top:30px;text-align:center;padding-top:20px;border-top:2px solid #e2e8f0}.opd_btn{padding:14px 28px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;min-width:200px}.opd_btn:disabled{opacity:.6;cursor:not-allowed}.opd_btn svg{width:20px;height:20px}.opd_btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea4d}.opd_btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 25px #667eea66}.opd_btn-secondary{background:#fff;color:#4a5568;border:2px solid #e2e8f0}.opd_btn-secondary:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0}.opd_btn-small{padding:8px 16px;font-size:14px;min-width:auto}.opd_btn-small svg{width:16px;height:16px}.opd_btn .opd_spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:opd_spin .8s linear infinite}@media (max-width: 768px){.opd_container{padding:15px}.opd_header h1{font-size:2rem}.opd_quick-actions-header{flex-direction:column;align-items:stretch;gap:15px}.opd_search-container{max-width:100%}.opd_quick-actions-grid{grid-template-columns:1fr}.opd_quick-action-btn{padding:20px;min-height:80px}.opd_patients-table{font-size:12px}.opd_patients-table th,.opd_patients-table td{padding:12px 8px}.opd_patient-info-cell{min-width:200px}.opd_patient-avatar{width:36px;height:36px}.opd_patient-name-info h3{font-size:14px}.opd_modal-content{margin:10px;max-height:calc(100vh - 20px)}.opd_modal-header,.opd_add-patient-form,.opd_modal-patients-list{padding:20px}.opd_modal-header h2{font-size:1.4rem}.opd_form-grid{grid-template-columns:1fr;gap:15px}.opd_section-header{flex-direction:column;align-items:flex-start;gap:15px}.opd_age-gender-cell,.opd_guardian-name{display:none}}@media (max-width: 480px){.opd_header h1{font-size:1.8rem}.opd_quick-actions-section,.opd_patient-section{padding:20px}.opd_patients-table-container{border-radius:8px}.opd_patients-table th,.opd_patients-table td{padding:10px 6px}.opd_btn-small{padding:6px 12px;font-size:12px}.opd_btn{padding:12px 20px;font-size:14px;min-width:160px}.opd_form-group input,.opd_form-group select,.opd_form-group textarea{font-size:14px;padding:10px 14px}.opd_contact-cell{min-width:100px}.opd_patient-id-cell{min-width:80px}.opd_patient-id-badge{font-size:10px;padding:3px 8px}.opd_contact-cell .opd_email{display:none}}.opd_modal-content{scroll-behavior:smooth}.opd_modal-content::-webkit-scrollbar{width:8px}.opd_modal-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.opd_modal-content::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px}.opd_modal-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#764ba2,#667eea)}.appointments-container{padding:2rem;background:#f8fafc;min-height:100vh}.appointments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.appointments-header h1{color:#1e293b;font-size:2.5rem;font-weight:700;margin:0}.add-appointment-btn{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:transform .2s ease}.add-appointment-btn:hover{transform:translateY(-1px)}.appointments-content{display:flex;justify-content:center;align-items:center;min-height:60vh}.coming-soon{text-align:center;max-width:500px;padding:3rem;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0}.coming-soon-icon{font-size:4rem;margin-bottom:1rem}.coming-soon h2{color:#1e293b;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.coming-soon p{color:#64748b;line-height:1.6}@media (max-width: 768px){.appointments-container{padding:1rem}.appointments-header{flex-direction:column;gap:1rem;align-items:flex-start}.appointments-header h1{font-size:2rem}.coming-soon{padding:2rem}}.surgery-container{padding:20px;max-width:1200px;margin:0 auto}.surgery-header{text-align:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.surgery-header h1{margin:0 0 10px;font-size:2.5rem;font-weight:700}.surgery-header p{margin:0;font-size:1.1rem;opacity:.9}.surgery-content{display:grid;gap:20px}.surgery-card{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000001a;border:1px solid #e1e5e9}.surgery-card h2{color:#2d3748;margin-bottom:20px;font-size:1.8rem}.surgery-card p{color:#4a5568;margin-bottom:20px;line-height:1.6}.surgery-card ul{color:#4a5568;line-height:1.8}.surgery-card li{margin-bottom:8px;padding-left:10px}.operations-container{padding:20px;max-width:1200px;margin:0 auto}.operations-header{text-align:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.operations-header h1{margin:0 0 10px;font-size:2.5rem;font-weight:700}.operations-header p{margin:0;font-size:1.1rem;opacity:.9}.operations-content{display:grid;gap:20px}.operations-card{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000001a;border:1px solid #e1e5e9}.operations-card h2{color:#2d3748;margin-bottom:20px;font-size:1.8rem}.operations-card p{color:#4a5568;margin-bottom:20px;line-height:1.6}.operations-card ul{color:#4a5568;line-height:1.8}.operations-card li{margin-bottom:8px;padding-left:10px}:root{--primary-blue: #1e40af;--primary-teal: #21808d;--light-blue: #e0e7ff;--hover-blue: #1d4ed8;--text-dark: #1f2937;--text-gray: #6b7280;--text-light: #9ca3af;--border-light: #e5e7eb;--border-gray: #d1d5db;--bg-white: #ffffff;--bg-gray: #f9fafb;--bg-cream: #fefdfb;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:var(--text-dark);background:var(--bg-cream);line-height:1.5}.patients-container,.patient-dashboard-container{width:100%;min-height:100vh;background:var(--bg-cream)}.patients-header,.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:20px 32px;background:var(--bg-white);border-bottom:1px solid var(--border-light);position:sticky;top:0;z-index:100}.header-title h1{font-size:24px;font-weight:600;color:var(--text-dark);margin:0}.add-patient-btn,.btn-back{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--primary-blue);color:#fff;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:var(--shadow-sm)}.add-patient-btn:hover{background:var(--hover-blue);box-shadow:var(--shadow-md)}.btn-back{background:var(--bg-white);color:var(--text-dark);border:1px solid var(--border-gray)}.btn-back:hover{background:var(--bg-gray);border-color:var(--primary-blue)}.patient-info-header{display:flex;align-items:center;gap:20px}.patient-avatar-large{width:80px;height:80px;background:var(--bg-gray);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;overflow:hidden;border:2px solid var(--border-light)}.patient-avatar-large img{width:100%;height:100%;object-fit:cover}.patient-avatar-large svg{width:40px;height:40px;color:var(--text-light)}.patient-header-details h1{font-size:22px;font-weight:600;color:var(--text-dark);margin:0 0 8px}.patient-meta{display:flex;gap:12px;flex-wrap:wrap}.patient-id,.patient-age-gender,.patient-phone{padding:6px 12px;background:var(--bg-gray);border-radius:var(--radius-sm);font-size:13px;color:var(--text-gray);border:1px solid var(--border-light)}.dashboard-tabs{display:flex;gap:0;background:var(--bg-white);border-bottom:1px solid var(--border-light);overflow-x:auto;position:sticky;top:105px;z-index:90}.tab-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-gray);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.tab-btn svg{width:18px;height:18px}.tab-btn:hover{color:var(--text-dark);background:var(--bg-gray)}.tab-btn.active{color:var(--primary-blue);border-bottom-color:var(--primary-blue);font-weight:600}.patients-content,.dashboard-content{padding:24px 32px}.search-bar{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--bg-white);border:1px solid var(--border-gray);border-radius:var(--radius-md);margin-bottom:20px}.search-bar svg{width:20px;height:20px;color:var(--text-light)}.search-bar input{flex:1;border:none;background:transparent;font-size:14px;color:var(--text-dark);outline:none}.search-bar input::placeholder{color:var(--text-light)}.results-dropdown{padding:8px 12px;border:1px solid var(--border-gray);border-radius:var(--radius-sm);background:var(--bg-white);color:var(--text-dark);font-size:13px;cursor:pointer;outline:none}.table-wrapper,.table-container{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.patients-table,.visit-table,.investigation-table,.data-table{width:100%;border-collapse:collapse;font-size:14px}.patients-table thead,.visit-table thead,.investigation-table thead,.data-table thead{background:var(--bg-gray)}.patients-table th,.visit-table th,.investigation-table th,.data-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-dark);font-size:12px;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-light)}.patients-table tbody tr,.visit-table tbody tr,.investigation-table tbody tr,.data-table tbody tr{border-bottom:1px solid var(--border-light);transition:background .15s}.patients-table tbody tr:hover,.visit-table tbody tr:hover,.investigation-table tbody tr:hover,.data-table tbody tr:hover{background:var(--bg-gray)}.patients-table tbody tr:last-child,.visit-table tbody tr:last-child,.investigation-table tbody tr:last-child,.data-table tbody tr:last-child{border-bottom:none}.patients-table td,.visit-table td,.investigation-table td,.data-table td{padding:14px 16px;color:var(--text-dark);font-size:14px}.patient-name-link,.opd-link{color:var(--primary-blue);cursor:pointer;font-weight:500;text-decoration:none;transition:color .2s}.patient-name-link:hover,.opd-link:hover{color:var(--hover-blue);text-decoration:underline}.overview-grid{display:grid;grid-template-columns:400px 1fr;gap:24px;align-items:start}.overview-left,.overview-right{display:flex;flex-direction:column;gap:20px}.card{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm)}.card-title{font-size:14px;font-weight:700;color:var(--text-dark);margin:0 0 20px;padding-bottom:16px;border-bottom:1px solid var(--border-light);text-transform:uppercase;letter-spacing:.05em}.vitals-header{display:flex;gap:16px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-light)}.patient-avatar-box{width:100px;height:100px;background:var(--bg-gray);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid var(--border-light);flex-shrink:0}.patient-avatar-box .placeholder{text-align:center;color:var(--text-light)}.patient-avatar-box .placeholder svg{width:48px;height:48px;margin-bottom:8px;opacity:.4}.patient-avatar-box .placeholder p{font-size:10px;text-transform:uppercase;letter-spacing:.05em}.vitals-info{flex:1;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.vitals-info-item{display:flex;flex-direction:column;gap:4px}.vitals-info-label{font-size:11px;color:var(--text-gray);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.vitals-info-value{font-size:14px;color:var(--text-dark);font-weight:500}.patient-details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-item{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--bg-gray);border-radius:var(--radius-md);border:1px solid var(--border-light)}.detail-label{font-size:11px;color:var(--text-gray);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.detail-value{font-size:14px;color:var(--text-dark);font-weight:500}.consultant-list{display:flex;flex-direction:column;gap:12px}.consultant-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-gray);border-radius:var(--radius-md);border:1px solid var(--border-light);transition:all .2s;cursor:pointer}.consultant-item:hover{background:var(--light-blue);border-color:var(--primary-blue);transform:translate(4px)}.consultant-avatar{width:48px;height:48px;background:#fff;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;border:2px solid var(--border-light);flex-shrink:0}.consultant-avatar svg{width:24px;height:24px;color:var(--primary-blue)}.consultant-details{flex:1}.consultant-name{font-size:14px;color:var(--text-dark);font-weight:500;margin:0}.consultant-id{font-size:12px;color:var(--text-gray);margin:0}.chart-legend{display:flex;gap:16px;margin-bottom:16px;padding:12px;background:var(--bg-gray);border-radius:var(--radius-md);border:1px solid var(--border-light);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-dark);font-weight:500}.legend-color{width:16px;height:16px;border-radius:3px;border:1px solid rgba(0,0,0,.1)}.legend-color.opd{background:#60a5fa}.legend-color.pathology{background:#dc2626}.legend-color.radiology{background:#1e40af}.legend-color.pharmacy{background:#10b981}.chart-wrapper{padding:20px;background:var(--bg-gray);border:1px solid var(--border-light);border-radius:var(--radius-md);min-height:300px}.section-subtitle{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-dark);margin:0 0 12px}.section-subtitle svg{width:18px;height:18px;color:var(--primary-blue)}.info-text{font-size:13px;color:var(--text-gray);margin:0;padding:12px;background:var(--bg-gray);border-left:3px solid var(--primary-blue);border-radius:var(--radius-sm)}.findings-list{margin:0;padding-left:20px;color:var(--text-gray);font-size:13px}.findings-list li{margin-bottom:6px}.visit-details-card{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.visit-details-header{padding:20px 24px;background:var(--bg-white);border-bottom:1px solid var(--border-light)}.visit-details-header h3{font-size:14px;font-weight:700;color:var(--text-dark);margin:0;text-transform:uppercase;letter-spacing:.05em}.visits-tab{width:100%}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-light)}.tab-header h2{font-size:20px;font-weight:600;color:var(--text-dark);margin:0}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--primary-blue);color:#fff;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--hover-blue);box-shadow:var(--shadow-md)}.search-container-small{margin-bottom:16px}.search-input-small{width:100%;max-width:400px;padding:10px 16px;border:1px solid var(--border-gray);border-radius:var(--radius-md);font-size:14px;color:var(--text-dark);background:var(--bg-white);outline:none;transition:all .2s}.search-input-small:focus{border-color:var(--primary-blue);box-shadow:0 0 0 3px #1e40af1a}.search-input-small::placeholder{color:var(--text-light)}.action-icons{display:flex;gap:6px;align-items:center}.icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-white);border:1px solid var(--border-gray);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;color:var(--text-gray)}.icon-btn:hover{background:var(--primary-blue);border-color:var(--primary-blue);color:#fff}.icon-btn svg{width:16px;height:16px}.export-buttons{display:flex;gap:8px;align-items:center}.export-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-white);border:1px solid var(--border-gray);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;color:var(--text-gray)}.export-btn:hover{background:var(--primary-blue);border-color:var(--primary-blue);color:#fff}.export-btn svg{width:18px;height:18px}.table-footer,.investigation-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-gray);border-top:1px solid var(--border-light);font-size:13px;color:var(--text-gray)}.pagination-info{font-weight:500}.pagination-controls{display:flex;gap:6px;align-items:center}.pagination-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-white);border:1px solid var(--border-gray);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;color:var(--text-dark);font-size:13px;font-weight:500}.pagination-btn:hover:not(:disabled){background:var(--primary-blue);border-color:var(--primary-blue);color:#fff}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-btn.active{background:var(--primary-blue);border-color:var(--primary-blue);color:#fff}.empty-state,.empty-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state svg{width:64px;height:64px;color:var(--text-light);opacity:.4;margin-bottom:16px}.empty-state h3{font-size:18px;font-weight:600;color:var(--text-dark);margin:0 0 8px}.empty-state p{font-size:14px;color:var(--text-gray);margin:0}.empty-cell{padding:24px;color:var(--text-gray);font-style:italic}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;min-height:400px}.spinner{width:40px;height:40px;border:3px solid var(--border-light);border-top-color:var(--primary-blue);border-radius:50%;animation:spin .8s linear infinite}.loading-state p{margin-top:16px;color:var(--text-gray);font-size:14px}.error-message{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-left:4px solid #dc2626;border-radius:var(--radius-md);color:#dc2626;margin-bottom:20px;font-size:14px}@media (max-width: 1200px){.overview-grid{grid-template-columns:1fr}.overview-left{order:2}.overview-right{order:1}}@media (max-width: 768px){.patients-header,.dashboard-header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px 20px}.header-title h1{font-size:20px}.patient-info-header{flex-direction:column;align-items:flex-start;width:100%}.patient-avatar-large{width:64px;height:64px}.patient-meta{flex-direction:column;width:100%}.btn-back,.add-patient-btn,.btn-primary{width:100%;justify-content:center}.dashboard-tabs{overflow-x:scroll;padding:0 12px}.tab-btn{font-size:13px;padding:12px 16px}.patients-content,.dashboard-content{padding:16px 20px}.patient-details-grid{grid-template-columns:1fr}.table-wrapper,.table-container{overflow-x:auto}.table-footer,.investigation-footer{flex-direction:column;gap:8px}}.table-wrapper::-webkit-scrollbar,.table-container::-webkit-scrollbar,.dashboard-tabs::-webkit-scrollbar{height:6px;width:6px}.table-wrapper::-webkit-scrollbar-track,.table-container::-webkit-scrollbar-track,.dashboard-tabs::-webkit-scrollbar-track{background:var(--bg-gray)}.table-wrapper::-webkit-scrollbar-thumb,.table-container::-webkit-scrollbar-thumb,.dashboard-tabs::-webkit-scrollbar-thumb{background:var(--border-gray);border-radius:3px}.table-wrapper::-webkit-scrollbar-thumb:hover,.table-container::-webkit-scrollbar-thumb:hover,.dashboard-tabs::-webkit-scrollbar-thumb:hover{background:var(--text-light)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--primary-blue);outline-offset:2px}@media print{.patients-header,.dashboard-header,.dashboard-tabs,.btn-back,.add-patient-btn,.btn-primary,.action-icons,.search-bar,.search-container-small,.export-buttons{display:none!important}.card{page-break-inside:avoid}}.charges-container{padding:2rem;background:#f8fafc;min-height:100vh}.charges-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.charges-header h1{color:#1e293b;font-size:2.5rem;font-weight:700;margin:0}.add-charge-btn{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:transform .2s ease}.add-charge-btn:hover{transform:translateY(-1px)}.tabs-container{margin-bottom:2rem}.tabs{display:flex;background:#fff;border-radius:12px;padding:.5rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0;overflow-x:auto}.tab{flex:1;padding:.75rem 1.5rem;border:none;background:transparent;color:#64748b;font-weight:600;cursor:pointer;border-radius:8px;transition:all .2s ease;white-space:nowrap;min-width:120px}.tab:hover{background:#f1f5f9;color:#1e293b}.tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.master-data-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0;overflow:hidden}.section-header{padding:1.5rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}.section-header h2{margin:0 0 1rem;color:#1e293b;font-size:1.5rem;font-weight:600}.add-item-form{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.add-input,.add-select{flex:1;min-width:200px;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s ease}.add-input:focus,.add-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.add-input:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.add-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:transform .2s ease;white-space:nowrap}.add-btn:hover:not(:disabled){transform:translateY(-1px)}.add-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;padding:1.5rem}.item-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;transition:all .2s ease}.item-card:hover{background:#f1f5f9;border-color:#cbd5e1}.item-content{display:flex;justify-content:space-between;align-items:center;gap:1rem}.item-name{font-weight:600;color:#1e293b;font-size:.9rem}.tax-item-info{display:flex;flex-direction:column;gap:.25rem}.tax-rate{font-size:.75rem;color:#64748b;font-weight:500}.delete-item-btn{padding:.5rem 1rem;background:#fee2e2;color:#dc2626;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s ease;white-space:nowrap}.delete-item-btn:hover{background:#fecaca}.types-container{padding:1.5rem}.type-category{margin-bottom:2rem}.type-category:last-child{margin-bottom:0}.type-category-title{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.charges-filters{display:flex;gap:1rem;margin-bottom:2rem;align-items:center;flex-wrap:wrap}.search-box{display:flex;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem 1rem;flex:1;max-width:400px}.search-box svg{color:#64748b;margin-right:.5rem}.search-input{border:none;outline:none;background:transparent;font-size:.9rem;color:#1e293b;width:100%}.search-input::placeholder{color:#94a3b8}.category-filter{min-width:200px}.filter-select{width:100%;padding:.5rem 1rem;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#1e293b;font-size:.9rem;cursor:pointer}.charges-list{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0;overflow:hidden}.list-header{display:grid;grid-template-columns:2fr 1.5fr 1fr 1.5fr 1fr 1fr;gap:1rem;padding:1rem 1.5rem;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-weight:600;color:#64748b;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.charge-row{display:grid;grid-template-columns:2fr 1.5fr 1fr 1.5fr 1fr 1fr;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid #f1f5f9;align-items:center}.charge-row:hover{background:#f8fafc}.charge-cell{color:#1e293b}.charge-info{display:flex;align-items:center;gap:1rem}.charge-icon{font-size:2rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border-radius:8px}.charge-info h4{margin:0 0 .25rem;font-weight:600}.charge-info p{margin:0;color:#64748b;font-size:.875rem;line-height:1.4}.category-info{display:flex;flex-direction:column;gap:.5rem}.category-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#dbeafe;color:#1e40af;display:inline-block;width:fit-content}.type-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#fef3c7;color:#d97706;display:inline-block;width:fit-content}.amount-info{display:flex;flex-direction:column;gap:.25rem}.amount-label{font-size:.75rem;color:#64748b;font-weight:500}.amount{font-weight:700;color:#059669;font-size:1.1rem}.tax-info{display:flex;flex-direction:column;gap:.5rem}.tax-details{display:flex;flex-direction:column;gap:.25rem}.tax-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#fce7f3;color:#be185d;display:inline-block;width:fit-content}.tax-amount{font-size:.875rem;color:#dc2626;font-weight:600}.final-amount{font-weight:700;color:#1e293b;font-size:1.1rem;border-top:1px solid #e2e8f0;padding-top:.25rem}.unit-status-info{display:flex;flex-direction:column;gap:.5rem}.unit-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#e0e7ff;color:#3730a3;display:inline-block;width:fit-content}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-block;width:fit-content}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#fee2e2;color:#dc2626}.action-btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.action-btn.edit{background:#dbeafe;color:#1e40af}.action-btn.edit:hover{background:#bfdbfe}.action-btn.delete{background:#fee2e2;color:#dc2626}.action-btn.delete:hover{background:#fecaca}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-width:800px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2{margin:0;color:#1e293b;font-size:1.5rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .2s ease}.modal-close:hover{background:#f1f5f9}.charge-form{padding:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-group label{font-weight:600;color:#374151;margin-bottom:.5rem;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled,.form-group select:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1rem;border-top:1px solid #e2e8f0}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-1px)}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover{background:#e5e7eb}.tpa-charges-section{margin-top:20px;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.tpa-charges-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.tpa-charges-section h3{margin:0;color:#495057;font-size:16px;font-weight:600}.apply-all-btn{background:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .2s}.apply-all-btn:hover{background:#218838}.tpa-charges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:15px}.tpa-charge-item{background:#fff;border:1px solid #dee2e6;border-radius:6px;padding:15px}.tpa-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.tpa-header h4{margin:0;color:#495057;font-size:14px;font-weight:600}.checkbox-label{display:flex;align-items:center;gap:5px;font-size:12px;color:#6c757d;cursor:pointer}.checkbox-label input[type=checkbox]{margin:0}.tpa-inputs{display:flex;flex-direction:column;gap:8px}.tpa-inputs input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px}.calculated-amounts{display:flex;justify-content:space-between;font-size:12px;color:#6c757d}.tpa-modal{max-width:800px;max-height:80vh;overflow-y:auto}.tpa-charges-form{padding:20px 0}.tpa-charges-list{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.tpa-charge-row{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.tpa-info h4{margin:0 0 5px;color:#495057;font-size:16px;font-weight:600}.tpa-code{margin:0;color:#6c757d;font-size:14px}.tpa-charge-inputs{display:flex;align-items:center;gap:20px}.input-group{display:flex;flex-direction:column;gap:5px}.input-group label{font-size:12px;color:#6c757d;font-weight:500}.input-group input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;width:120px}.calculated-values{display:flex;flex-direction:column;gap:5px}.value-item{display:flex;justify-content:space-between;align-items:center;gap:10px}.value-item label{font-size:12px;color:#6c757d;min-width:80px}.value-item span{font-size:14px;color:#495057;font-weight:500;min-width:60px;text-align:right}.tpa-status{display:flex;align-items:center}.charge-row{cursor:pointer;transition:background-color .2s}.charge-row:hover{background-color:#f8f9fa}.charge-row .action-buttons{position:relative;z-index:10}@media (max-width: 1024px){.list-header,.charge-row{grid-template-columns:2fr 1fr 1fr 1fr 1fr}.header-cell:nth-child(4),.charge-cell:nth-child(4){display:none}.form-row{grid-template-columns:1fr}.tabs{flex-wrap:wrap}.tab{min-width:100px}}@media (max-width: 768px){.charges-container{padding:1rem}.charges-header{flex-direction:column;gap:1rem;align-items:flex-start}.charges-header h1{font-size:2rem}.charges-filters{flex-direction:column;align-items:stretch}.search-box{max-width:none}.list-header,.charge-row{grid-template-columns:1fr;gap:.5rem}.header-cell:not(:first-child),.charge-cell:not(:first-child){display:none}.charge-info{justify-content:center}.modal-content{margin:1rem;max-height:calc(100vh - 2rem)}.tabs{flex-direction:column}.tab{min-width:auto}.add-item-form{flex-direction:column;align-items:stretch}.add-input,.add-select{min-width:auto}.items-grid{grid-template-columns:1fr}.tpa-charge-row{flex-direction:column;align-items:flex-start;gap:15px}.tpa-charge-inputs{width:100%;justify-content:space-between}.tpa-charges-grid{grid-template-columns:1fr}.tpa-modal{max-width:95vw}}.charges-container{animation:fadeIn .6s ease-out}.charges-header{animation:slideInUp .6s ease-out .2s both}.charges-filters{animation:slideInUp .6s ease-out .3s both}.charges-list{animation:slideInUp .6s ease-out .4s both}.tabs-container{animation:slideInUp .6s ease-out .3s both}.charge-row{cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.charge-row:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(52,152,219,.1),transparent);transition:left .5s ease}.charge-row:hover:before{left:100%}.charge-row:hover{background-color:#f8f9fa;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.charge-row:active{transform:translateY(0) scale(.98);transition:transform .1s ease}.add-charge-btn{position:relative;overflow:hidden;transition:all .3s ease}.add-charge-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.add-charge-btn:hover:before{left:100%}.add-charge-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3498db4d}.action-btn{transition:all .3s ease;position:relative;overflow:hidden}.action-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.tab{transition:all .3s ease;position:relative;overflow:hidden}.tab:before{content:"";position:absolute;bottom:0;left:50%;width:0;height:3px;background:#3498db;transition:all .3s ease;transform:translate(-50%)}.tab:hover:before{width:100%}.tab.active:before{width:100%}.tab:hover{transform:translateY(-2px)}.modal-overlay{animation:fadeIn .3s ease-out}.modal-content{animation:scaleIn .4s ease-out}.modal-content.tpa-modal,.form-group{animation:slideInUp .4s ease-out}.form-group:nth-child(5){animation-delay:.3s}input,select,textarea{transition:all .3s ease}input:focus,select:focus,textarea:focus{transform:translateY(-1px);box-shadow:0 4px 12px #3498db33}.tpa-charges-section{animation:slideInUp .6s ease-out .5s both}.tpa-charge-item{transition:all .3s ease;animation:fadeIn .5s ease-out}.tpa-charge-item:nth-child(1){animation-delay:.1s}.tpa-charge-item:nth-child(2){animation-delay:.15s}.tpa-charge-item:nth-child(3){animation-delay:.2s}.tpa-charge-item:nth-child(4){animation-delay:.25s}.tpa-charge-item:nth-child(5){animation-delay:.3s}.tpa-charge-item:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a}.apply-all-btn{transition:all .3s ease;position:relative;overflow:hidden}.apply-all-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.apply-all-btn:hover:before{left:100%}.apply-all-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #28a7454d}.tpa-charge-row{transition:all .3s ease;animation:slideInLeft .4s ease-out}.tpa-charge-row:nth-child(1){animation-delay:.1s}.tpa-charge-row:nth-child(2){animation-delay:.15s}.tpa-charge-row:nth-child(3){animation-delay:.2s}.tpa-charge-row:nth-child(4){animation-delay:.25s}.tpa-charge-row:nth-child(5){animation-delay:.3s}.tpa-charge-row:hover{transform:translate(5px);box-shadow:0 4px 12px #0000001a}.search-box{transition:all .3s ease}.search-box:focus-within{transform:translateY(-1px);box-shadow:0 4px 12px #3498db33}.filter-select{transition:all .3s ease}.filter-select:focus{transform:translateY(-1px);box-shadow:0 4px 12px #3498db33}.status-badge{transition:all .3s ease}.status-badge:hover{transform:scale(1.05)}.master-data-section{animation:slideInUp .6s ease-out .3s both}.item-card{transition:all .3s ease;animation:fadeIn .5s ease-out}.item-card:nth-child(1){animation-delay:.1s}.item-card:nth-child(2){animation-delay:.15s}.item-card:nth-child(3){animation-delay:.2s}.item-card:nth-child(4){animation-delay:.25s}.item-card:nth-child(5){animation-delay:.3s}.item-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px #00000026}.delete-item-btn{transition:all .3s ease}.delete-item-btn:hover{transform:scale(1.1);box-shadow:0 4px 12px #e74c3c4d}.add-item-form{animation:slideInUp .6s ease-out .4s both}.add-input,.add-select,.add-btn{transition:all .3s ease}.add-input:focus,.add-select:focus{transform:translateY(-1px);box-shadow:0 4px 12px #3498db33}.add-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3498db4d}.type-category{animation:slideInUp .6s ease-out}.type-category:nth-child(1){animation-delay:.1s}.type-category:nth-child(2){animation-delay:.2s}.type-category:nth-child(3){animation-delay:.3s}.type-category:nth-child(4){animation-delay:.4s}.type-category-title{transition:color .3s ease}.type-category:hover .type-category-title{color:#3498db}.charges-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:1px solid #e5e7eb;padding-bottom:1rem}.tab-btn{padding:.75rem 1.5rem;border:none;background:none;color:#6b7280;font-weight:500;cursor:pointer;border-radius:.5rem;transition:all .2s}.tab-btn:hover{background:#f3f4f6;color:#374151}.tab-btn.active{background:#3b82f6;color:#fff}.filter-group{display:flex;gap:1rem;align-items:center}.filter-select{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;background:#fff;font-size:.875rem}.master-data-section{background:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.section-header h3{margin:0;color:#111827;font-size:1.25rem}.add-form{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.add-input,.add-select{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;min-width:150px}.add-btn{padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:background-color .2s}.add-btn:hover{background:#2563eb}.data-list{display:grid;gap:1rem}.data-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#f9fafb}.data-info h4{margin:0 0 .25rem;color:#111827;font-size:1rem}.data-info p{margin:0 0 .25rem;color:#6b7280;font-size:.875rem}.data-type{background:#e0e7ff;color:#3730a3;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.delete-btn{padding:.5rem 1rem;background:#ef4444;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:background-color .2s}.delete-btn:hover{background:#dc2626}.charge-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:1rem;padding:1rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fff;transition:all .2s}.charge-row:hover{box-shadow:0 2px 8px #0000001a}.charge-description{color:#6b7280;font-size:.875rem;margin-top:.25rem}.pricing-info{display:flex;flex-direction:column;gap:.25rem}.price-item{display:flex;justify-content:space-between;align-items:center}.price-label{font-size:.75rem;color:#6b7280}.price-value{font-weight:600;color:#059669}.unit-tax-info{display:flex;flex-direction:column;gap:.5rem}.tax-badges{display:flex;flex-wrap:wrap;gap:.25rem}.tax-badge{background:#fef3c7;color:#92400e;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.modal-content.large{max-width:800px;width:90%}.tpa-charges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-bottom:1.5rem}.tpa-charge-item{border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;background:#f9fafb}.tpa-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.tpa-header h4{margin:0;color:#111827;font-size:1rem}.tpa-code{background:#e0e7ff;color:#3730a3;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.tpa-inputs{display:flex;flex-direction:column;gap:.5rem}.tpa-input{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem}.form-section{margin-bottom:2rem}.form-section h3{margin:0 0 1rem;color:#111827;font-size:1.125rem;border-bottom:1px solid #e5e7eb;padding-bottom:.5rem}@media (max-width: 768px){.charges-tabs{flex-wrap:wrap}.tab-btn{flex:1;min-width:120px}.charge-row{grid-template-columns:1fr;gap:.5rem}.section-header{flex-direction:column;align-items:stretch}.add-form{flex-direction:column}.add-input,.add-select{width:100%}.tpa-charges-grid{grid-template-columns:1fr}.filter-group{flex-direction:column}.filter-select{width:100%}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (max-width: 768px){.slide-in-left,.slide-in-right{animation:slideInUp .5s ease-out}.charge-row:hover,.tpa-charge-row:hover,.item-card:hover{transform:none}}.tpa-charges-section{margin-top:2rem;padding:1.5rem;background:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb}.tpa-charges-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.tpa-charges-section .section-header h3{margin:0;color:#111827;font-size:1.125rem}.apply-all-btn{padding:.5rem 1rem;background:#10b981;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:background-color .2s}.apply-all-btn:hover{background:#059669}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#374151;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.calculated-amounts{display:flex;justify-content:space-between;font-size:.75rem;color:#6b7280;margin-top:.5rem}.charge-row{cursor:pointer;transition:all .2s}.charge-row:hover{background:#f3f4f6;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.action-buttons{display:flex;gap:.5rem}.action-buttons button{padding:.5rem 1rem;border:none;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:all .2s;font-weight:500}.action-btn.edit{background:#3b82f6;color:#fff}.action-btn.edit:hover{background:#2563eb}.action-btn.tpa{background:#8b5cf6;color:#fff}.action-btn.tpa:hover{background:#7c3aed}.action-btn.delete{background:#ef4444;color:#fff}.action-btn.delete:hover{background:#dc2626}.tpa-charges-section .tpa-charges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.tpa-charges-section .tpa-charge-item{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;transition:all .2s}.tpa-charges-section .tpa-charge-item:hover{box-shadow:0 2px 8px #0000001a}.tpa-charges-section .tpa-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #f3f4f6}.tpa-charges-section .tpa-header h4{margin:0;color:#111827;font-size:.875rem;font-weight:600}.tpa-charges-section .tpa-inputs{display:flex;flex-direction:column;gap:.75rem}.tpa-charges-section .tpa-input{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;transition:border-color .2s}.tpa-charges-section .tpa-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.medicine-master-container{display:flex;height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#f8f9fa;position:relative}.pharmacy-sidebar{width:220px;background-color:#fff;color:#000;padding:0;box-shadow:2px 0 8px #00000026;z-index:100;position:relative;border-right:1px solid #dee2e6}.pharmacy-tab{padding:15px 20px;cursor:pointer;transition:all .2s ease;border-left:4px solid transparent;font-weight:500;font-size:14px;display:block;text-decoration:none;color:#000;border-bottom:1px solid rgba(0,0,0,.1);background-color:#fff}.pharmacy-tab:hover{background-color:#f8f9fa;border-left-color:#3498db;padding-left:24px}.pharmacy-tab.active{background-color:#3498db;color:#fff;border-left-color:#2980b9;font-weight:600;box-shadow:inset 0 0 10px #0000001a}.pharmacy-content{flex:1;padding:25px 30px;overflow-y:auto;background-color:#f8f9fa;position:relative;z-index:50}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding:20px 25px;background:#fff;border-radius:8px;box-shadow:0 2px 10px #00000014;position:relative;z-index:200}.header-info h2{color:#2c3e50;margin:0;font-size:26px;font-weight:600;letter-spacing:-.5px}.add-button{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease;box-shadow:0 2px 8px #28a7454d;text-transform:uppercase;letter-spacing:.5px;position:relative;z-index:300}.add-button:hover{transform:translateY(-1px);box-shadow:0 4px 15px #28a74566;background:linear-gradient(135deg,#218838,#1e7e34)}.add-button:active{transform:translateY(0)}.error-message{background-color:#dc3545;color:#fff;padding:15px 20px;border-radius:6px;margin-bottom:20px;font-weight:500;box-shadow:0 2px 10px #dc354533;border-left:4px solid #c82333;position:relative;z-index:150}.loading{text-align:center;padding:60px;font-size:18px;color:#6c757d;font-weight:500;background:#fff;border-radius:8px;box-shadow:0 2px 10px #00000014;position:relative;z-index:150}.table-container{background:#fff;border-radius:8px;box-shadow:0 2px 15px #00000014;overflow:hidden;border:1px solid #dee2e6;position:relative;z-index:150}table{width:100%;border-collapse:collapse;font-size:14px}table thead{background:linear-gradient(135deg,#495057,#343a40);color:#fff}table th{padding:18px 15px;text-align:left;font-weight:600;text-transform:uppercase;letter-spacing:.8px;font-size:12px;border-right:1px solid rgba(255,255,255,.1);white-space:nowrap}table th:last-child{border-right:none}table td{padding:16px 15px;border-bottom:1px solid #dee2e6;vertical-align:middle;border-right:1px solid #f8f9fa}table td:last-child{border-right:none}table tbody tr{transition:all .2s ease}table tbody tr:hover{background-color:#f1f3f4;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}table tbody tr:nth-child(2n){background-color:#fbfcfd}.no-records{text-align:center;color:#6c757d;font-style:italic;padding:40px!important;font-size:16px}.action-cell{text-align:center;white-space:nowrap;width:150px}.icon-btn{background:none;border:2px solid transparent;cursor:pointer;padding:8px 12px;margin:0 3px;border-radius:6px;transition:all .2s ease;font-size:12px;font-weight:600;min-width:60px;height:35px;display:inline-flex;align-items:center;justify-content:center}.edit-btn{color:#007bff;border-color:#007bff;background-color:transparent}.edit-btn:hover{background-color:#007bff;color:#fff;transform:scale(1.05)}.delete-btn{color:#dc3545;border-color:#dc3545;background-color:transparent}.delete-btn:hover{background-color:#dc3545;color:#fff;transform:scale(1.05)}.footer{padding:18px 25px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);color:#6c757d;font-weight:500;border-top:1px solid #dee2e6;font-size:13px}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:12px;box-shadow:0 25px 80px #00000080;width:90%;max-width:600px;max-height:85vh;overflow-y:auto;animation:modalSlideIn .3s ease-out;border:1px solid #dee2e6;position:relative;z-index:10001}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-40px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;background:linear-gradient(135deg,#495057,#343a40);color:#fff;border-radius:12px 12px 0 0}.modal-header h3{margin:0;font-size:20px;font-weight:600;letter-spacing:-.3px}.close-btn{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:35px;height:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-btn:hover{background-color:#fff3;transform:rotate(90deg)}.modal-body form{display:flex;flex-direction:column;gap:20px}.form-field{display:flex;flex-direction:column}.modal-error-message{background-color:#dc3545;color:#fff;padding:12px 16px;border-radius:6px;margin-bottom:20px;font-weight:500;font-size:14px}.modal-body input,.modal-body textarea,.modal-body select{padding:14px 16px;border:2px solid #dee2e6;border-radius:6px;font-size:14px;font-family:inherit;transition:all .3s ease;background-color:#fff;width:100%;box-sizing:border-box}.modal-body input:focus,.modal-body textarea:focus,.modal-body select:focus{outline:none;border-color:#007bff;background-color:#fff;box-shadow:0 0 0 3px #007bff1a}.modal-body textarea{resize:vertical;min-height:100px}.modal-actions{padding:25px 30px;background-color:#f8f9fa;border-radius:0 0 12px 12px;display:flex;gap:15px;justify-content:flex-end;border-top:1px solid #dee2e6}.save-btn,.cancel-btn{padding:12px 28px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease;min-width:100px;text-transform:uppercase;letter-spacing:.5px}.save-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;box-shadow:0 2px 8px #28a7454d}.save-btn:hover{transform:translateY(-1px);box-shadow:0 4px 15px #28a74566}.cancel-btn{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff;box-shadow:0 2px 8px #6c757d4d}.cancel-btn:hover{transform:translateY(-1px);box-shadow:0 4px 15px #6c757d66}@media (max-width: 1200px){.pharmacy-content{padding:20px 25px}.content-header{padding:15px 20px}}@media (max-width: 1024px){.medicine-master-container{flex-direction:column}.pharmacy-sidebar{width:100%;display:flex;overflow-x:auto;padding:0;order:1;z-index:500}.pharmacy-tab{white-space:nowrap;min-width:140px;text-align:center;font-size:13px;padding:12px 16px;border-left:none;border-bottom:4px solid transparent}.pharmacy-tab:hover{padding-left:16px;border-bottom-color:#3498db}.pharmacy-tab.active{border-bottom-color:#2980b9}.pharmacy-content{padding:15px;order:2}}@media (max-width: 768px){.content-header{flex-direction:column;gap:15px;align-items:stretch}.header-info h2{text-align:center;font-size:22px}.table-container{overflow-x:auto}table{min-width:700px}.modal-content{width:95%;margin:10px}.modal-actions{flex-direction:column}.save-btn,.cancel-btn{width:100%}}@media (max-width: 480px){.pharmacy-content{padding:10px}.content-header{padding:15px}.header-info h2{font-size:20px}.add-button{padding:10px 20px;font-size:13px}table th,table td{padding:12px 10px;font-size:12px}.modal-header,.modal-body,.modal-actions{padding:20px}.pharmacy-tab{min-width:120px;font-size:12px;padding:10px 12px}.icon-btn{padding:6px 8px;margin:0 2px;min-width:50px;height:30px;font-size:10px}}.pharmacy-tab:focus,.add-button:focus,.icon-btn:focus,.save-btn:focus,.cancel-btn:focus,.close-btn:focus{outline:2px solid #007bff;outline-offset:2px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f8fafc;color:#334155;line-height:1.5}.pharmacy-app{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding-bottom:2rem}.app-header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.2);padding:1rem 2rem;box-shadow:0 2px 20px #0000001a}.app-header h1{color:#1e293b;font-size:2rem;font-weight:700;text-align:center;margin:0}.app-nav{padding:1rem 2rem 0}.nav-tabs{display:flex;gap:1rem;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;padding:.5rem;border:1px solid rgba(255,255,255,.2)}.nav-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;border:none;border-radius:8px;color:#fffc;cursor:pointer;transition:all .3s ease;font-size:.95rem;font-weight:500;flex:1;justify-content:center}.nav-tab:hover{background:#ffffff1a;color:#fff;transform:translateY(-2px)}.nav-tab.active{background:#fff;color:#667eea;box-shadow:0 4px 20px #00000026}.app-main{padding:2rem;max-width:1400px;margin:0 auto}.action-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:1rem}.search-container{position:relative;flex:1;max-width:400px}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#64748b;z-index:2}.search-input{width:100%;padding:.75rem 1rem .75rem 3rem;border:2px solid rgba(255,255,255,.2);border-radius:12px;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.95rem;transition:all .3s ease}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;background:#fff}.content-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000001a;overflow:hidden}.card-header{padding:1.5rem 2rem;border-bottom:1px solid #f1f5f9;background:linear-gradient(135deg,#f8fafc,#e2e8f0)}.card-header h2{color:#1e293b;font-size:1.5rem;font-weight:600;margin:0}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none;white-space:nowrap}.btn:not(:disabled):hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #667eea99}.btn-secondary{background:#e2e8f0;color:#475569;border:2px solid #cbd5e1}.btn-secondary:hover:not(:disabled){background:#cbd5e1;border-color:#94a3b8}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 15px #10b98166}.btn-success:hover:not(:disabled){box-shadow:0 6px 20px #10b98199}.btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 15px #f59e0b66}.btn-warning:hover:not(:disabled){box-shadow:0 6px 20px #f59e0b99}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 15px #ef444466}.btn-danger:hover:not(:disabled){box-shadow:0 6px 20px #ef444499}.btn-info{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 15px #3b82f666}.btn-info:hover:not(:disabled){box-shadow:0 6px 20px #3b82f699}.btn-sm{padding:.5rem .75rem;font-size:.8rem;border-radius:6px}.btn-large{padding:1rem 2rem;font-size:1.1rem;border-radius:12px}.data-table thead{background:linear-gradient(135deg,#f8fafc,#e2e8f0)}.data-table th{padding:1rem 1.5rem;text-align:left;font-weight:600;color:#374151;font-size:.9rem;border-bottom:2px solid #e5e7eb}.data-table td{padding:1rem 1.5rem;border-bottom:1px solid #f3f4f6;vertical-align:middle}.data-table tbody tr:hover{background:#f8fafc}.medicine-info{display:flex;flex-direction:column;gap:.25rem}.medicine-name{font-weight:600;color:#1f2937}.medicine-composition{font-size:.8rem;color:#6b7280}.stock-level{padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:500}.stock-level.normal-stock{background:#d1fae5;color:#065f46}.stock-level.low-stock{background:#fee2e2;color:#991b1b;animation:pulse 2s infinite}.no-data{text-align:center;padding:3rem 1rem;color:#6b7280;font-style:italic}.suppliers-grid{padding:2rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.supplier-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden;transition:all .3s ease}.supplier-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.supplier-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:1px solid #e5e7eb}.supplier-header h3{margin:0;color:#1f2937;font-size:1.2rem;font-weight:600}.supplier-actions{display:flex;gap:.5rem}.supplier-details{padding:1.5rem}.supplier-details>div{margin-bottom:.75rem;font-size:.9rem;line-height:1.5}.supplier-details strong{color:#374151;font-weight:500}.purchase-intro{padding:3rem 2rem;text-align:center}.purchase-intro p{margin-bottom:2rem;color:#6b7280;font-size:1.1rem;max-width:600px;margin-left:auto;margin-right:auto}.modal{background:#fff;border-radius:24px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff0d;width:100%;max-width:800px;max-height:95vh;overflow:hidden;display:flex;flex-direction:column;position:relative;animation:slideIn .3s ease-out;transform-origin:center}@keyframes slideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{background:linear-gradient(135deg,#6366f1,#8b5cf6);padding:2rem 2.5rem 1.5rem;position:relative;overflow:hidden}.modal-header:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="20" cy="20" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="80" cy="40" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="40" cy="80" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>') repeat;pointer-events:none}.modal-header h3{margin:0;color:#fff;font-size:1.75rem;font-weight:700;text-align:center;position:relative;z-index:1;text-shadow:0 2px 4px rgba(0,0,0,.1)}.modal-close{position:absolute;top:1rem;right:1rem;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;padding:.75rem;border-radius:12px;transition:all .3s ease;z-index:2;display:flex;align-items:center;justify-content:center}.modal-close:hover:not(:disabled){background:#ffffff4d;transform:scale(1.05)}.modal-close:active{transform:scale(.95)}.modal-body{flex:1;overflow-y:auto;padding:2.5rem;background:linear-gradient(to bottom,#fafbff,#f8fafc)}.form{display:flex;flex-direction:column;gap:2rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.form-group{display:flex;flex-direction:column;gap:.75rem;position:relative}.form-label{font-weight:600;color:#374151;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.form-input,.form-select,.form-textarea{width:100%;padding:1rem 1.25rem;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;font-family:inherit;transition:all .3s ease;background:#fff;position:relative;box-shadow:0 1px 3px #0000001a}@keyframes shake{0%,20%,40%,60%,80%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-2px)}}.form-select{cursor:pointer;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="%236b7280"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"/></svg>');background-repeat:no-repeat;background-position:right 1rem center;background-size:1rem;appearance:none;padding-right:3rem}.form-textarea{resize:vertical;min-height:120px;font-family:inherit;line-height:1.6}.form-input-with-icon{position:relative}.form-input-with-icon .form-input{padding-left:3rem}.form-input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af;z-index:2}.loading-text{color:#6366f1;font-style:italic;font-size:.85rem;margin-top:.5rem;display:flex;align-items:center;gap:.5rem}.loading-text:before{content:"";width:12px;height:12px;border:2px solid #e5e7eb;border-top:2px solid #6366f1;border-radius:50%;animation:spin 1s linear infinite}.error-message{color:#dc2626;font-size:.85rem;margin-top:.5rem;padding:.5rem .75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;display:flex;align-items:center;gap:.5rem}.error-message:before{content:"⚠️";font-size:.9rem}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding:2rem 2.5rem;background:linear-gradient(to top,#f8fafc,#fff);border-top:1px solid #e5e7eb;margin-top:auto}.form-actions .btn{min-width:120px;padding:.875rem 1.75rem;font-weight:600;border-radius:12px;position:relative;overflow:hidden}.form-actions .btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.form-actions .btn:hover:before{left:100%}.medicines-section{border:2px solid #e5e7eb;border-radius:16px;padding:2rem;background:linear-gradient(135deg,#f8fafc,#fff);position:relative}.medicines-section:before{content:"";position:absolute;inset:-1px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:16px;z-index:-1;opacity:.1}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.section-header h4{margin:0;color:#374151;font-size:1.3rem;font-weight:700}.medicine-item{background:#fff;border:2px solid #e5e7eb;border-radius:16px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 6px -1px #0000001a;transition:all .3s ease}.medicine-item:hover{border-color:#6366f1;box-shadow:0 8px 25px #6366f126;transform:translateY(-2px)}.medicine-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.medicine-header h5{margin:0;color:#374151;font-size:1.1rem;font-weight:600;padding:.5rem 1rem;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:8px}.medicine-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.purchase-summary{border:2px solid #10b981;border-radius:16px;padding:2rem;background:linear-gradient(135deg,#ecfdf5,#f0fdf4);position:relative;margin-top:2rem}.purchase-summary:before{content:"💰";position:absolute;top:1rem;right:1rem;font-size:1.5rem;opacity:.7}.purchase-summary h4{margin:0 0 2rem;color:#065f46;font-size:1.3rem;font-weight:700;text-align:center}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:1.5rem}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#6b7280;gap:1.5rem}.spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top:4px solid #6366f1;border-radius:50%;animation:spin 1s linear infinite}.spinner-sm{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@media (max-width: 1200px){.app-main{padding:1.5rem}.form-grid{grid-template-columns:1fr}.medicine-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-grid{grid-template-columns:1fr}}@media (max-width: 768px){.app-header{padding:1rem}.app-header h1{font-size:1.5rem}.app-nav{padding:1rem}.nav-tabs{flex-direction:column;gap:.5rem}.nav-tab{justify-content:flex-start}.app-main{padding:1rem}.action-bar{flex-direction:column;align-items:stretch}.search-container{max-width:none}.suppliers-grid{grid-template-columns:1fr;padding:1rem}.modal{margin:.5rem;max-width:calc(100vw - 1rem);max-height:calc(100vh - 1rem)}.modal-body{padding:1.5rem}.form-actions{flex-direction:column-reverse;padding:1.5rem}.form-actions .btn{width:100%}.action-buttons{flex-wrap:wrap}.data-table{font-size:.8rem}.data-table th,.data-table td{padding:.5rem .75rem}.form-grid{grid-template-columns:1fr;gap:1.5rem}.medicine-grid{grid-template-columns:1fr}}@media (max-width: 480px){.medicine-grid{grid-template-columns:1fr}.btn{padding:.75rem 1.25rem;font-size:.9rem}.btn-sm{padding:.5rem .75rem;font-size:.8rem}.modal-header{padding:1.5rem}.modal-header h3{font-size:1.5rem}}@media print{.pharmacy-app{background:#fff}.app-nav,.action-bar,.modal-overlay{display:none}.content-card{box-shadow:none;border:1px solid #ccc}}@media (prefers-color-scheme: dark){body{background-color:#1a202c;color:#e2e8f0}.pharmacy-app{background:linear-gradient(135deg,#2d3748,#1a202c)}.content-card,.modal-pharmacy{background:#2d3748f2;color:#e2e8f0}.form-input,.form-select,.form-textarea{background:#2d3748;border-color:#4a5568;color:#e2e8f0}}.btn:focus-visible,.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible,.nav-tab:focus-visible{outline:3px solid #6366f1;outline-offset:2px}@media (prefers-contrast: high){.btn{border:3px solid currentColor}.form-input,.form-select,.form-textarea{border-width:3px}}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.modal-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.btn{position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.btn:active:after{width:300px;height:300px}.import-instructions{margin-bottom:30px;padding:20px;background-color:#f8f9fa;border-radius:8px}.import-instructions h4{color:#2563eb;margin-bottom:15px;font-size:18px}.import-instructions ol{margin-left:20px;line-height:1.8}.import-instructions ol li{margin-bottom:8px}.csv-format-info{margin:20px 0;padding:15px;background-color:#fff;border-left:4px solid #2563eb;border-radius:4px}.csv-format-info h5{color:#1e40af;margin-bottom:10px;font-size:16px}.csv-format-info p{font-family:Courier New,monospace;font-size:13px;color:#475569;word-wrap:break-word}.file-upload-section{margin:30px 0;padding:20px;border:2px dashed #cbd5e1;border-radius:8px;text-align:center}.file-upload-section h4{color:#334155;margin-bottom:15px;font-size:16px}.file-input{display:block;width:100%;padding:12px;margin:15px 0;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;cursor:pointer;background-color:#fff}.file-input:hover{border-color:#2563eb}.selected-file-info{margin-top:15px;padding:15px;background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;text-align:left}.selected-file-info p{margin:5px 0;font-size:14px;color:#0c4a6e}.btn-block{width:100%;margin:15px 0}.btn-success{background-color:#16a34a;color:#fff}.btn-success:hover{background-color:#15803d}.btn-success:disabled{background-color:#86efac;cursor:not-allowed}.file-input-wrapper{margin:20px 0}.file-input-hidden{display:none}.file-input-label{display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 25px;background-color:#fff;border:2px solid #cbd5e1;border-radius:8px;cursor:pointer;font-size:15px;font-weight:500;color:#334155;transition:all .3s ease;text-align:center}.file-input-label:hover{border-color:#2563eb;background-color:#f0f9ff;color:#2563eb}.file-input-label:active{transform:scale(.98)}.file-upload-section{margin:30px 0;padding:25px;border:2px dashed #cbd5e1;border-radius:8px;background-color:#f8fafc}.file-upload-section h4{color:#334155;margin-bottom:15px;font-size:16px;text-align:center}.selected-file-info{margin-top:20px;padding:15px;background-color:#dcfce7;border:1px solid #86efac;border-radius:6px;text-align:left}.selected-file-info p{margin:5px 0;font-size:14px;color:#166534}.selected-file-info p strong{color:#14532d}.modal-overlay{position:fixed;inset:0;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease-out}.modal-pharmacy{background:#fff;border-radius:24px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff0d;width:100%;max-width:1200px;max-height:98vh;overflow:hidden;display:flex;flex-direction:column;position:relative;animation:slideIn .3s ease-out;transform-origin:center}.modal-pharmacy .modal-header{background:linear-gradient(135deg,#6366f1,#8b5cf6);padding:2rem 2.5rem 1.5rem;position:relative;overflow:hidden}.modal-pharmacy .modal-header:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="20" cy="20" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="80" cy="40" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="40" cy="80" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>') repeat;pointer-events:none}.modal-pharmacy .modal-header h3{margin:0;color:#fff;font-size:1.75rem;font-weight:700;text-align:center;position:relative;z-index:1;text-shadow:0 2px 4px rgba(0,0,0,.1)}.modal-pharmacy .modal-close{position:absolute;top:1rem;right:1rem;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;padding:.75rem;border-radius:12px;transition:all .3s ease;z-index:2;display:flex;align-items:center;justify-content:center}.modal-pharmacy .modal-close:hover:not(:disabled){background:#ffffff4d;transform:scale(1.05)}.modal-pharmacy .modal-close:active{transform:scale(.95)}.modal-pharmacy .modal-body{flex:1;overflow-y:auto;padding:2.5rem;background:linear-gradient(to bottom,#fafbff,#f8fafc)}.form{display:flex;flex-direction:column;gap:0}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem 2rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem;position:relative}.form-group-full{grid-column:1 / -1}.form-group-half{grid-column:span 2}.form-label{font-weight:600;color:#374151;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem;display:flex;align-items:center;gap:.25rem}.form-label .required-star{color:#ef4444;font-size:.9rem}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:10px;font-size:.95rem;font-family:inherit;transition:all .3s ease;background:#fff;position:relative;box-shadow:0 1px 3px #0000001a}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a,0 4px 6px -1px #0000001a;transform:translateY(-1px)}.form-input.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a,0 4px 6px -1px #ef44441a;animation:shake .5s ease-in-out}.form-input.readonly{background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:#6b7280;cursor:not-allowed;border-color:#d1d5db}.form-select{cursor:pointer;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="%236b7280"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"/></svg>');background-repeat:no-repeat;background-position:right .75rem center;background-size:1rem;appearance:none;padding-right:2.5rem}.form-textarea{resize:vertical;min-height:100px;font-family:inherit;line-height:1.6}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem 2.5rem;background:linear-gradient(to top,#f8fafc,#fff);border-top:1px solid #e5e7eb;margin-top:auto}.form-actions .btn{min-width:140px;padding:.875rem 1.75rem;font-weight:600;border-radius:12px;position:relative;overflow:hidden}.medicines-section{border:2px solid #e5e7eb;border-radius:16px;padding:1.5rem;background:linear-gradient(135deg,#f8fafc,#fff);position:relative;margin:1.5rem 0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.section-header h4{margin:0;color:#374151;font-size:1.2rem;font-weight:700}.medicine-item{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 4px #0000000d;transition:all .3s ease}.medicine-item:hover{border-color:#6366f1;box-shadow:0 4px 12px #6366f126}.medicine-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #f3f4f6}.medicine-header h5{margin:0;color:#374151;font-size:1rem;font-weight:600;padding:.5rem 1rem;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:8px}.medicine-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem 1.5rem}.purchase-summary{border:2px solid #10b981;border-radius:16px;padding:1.5rem;background:linear-gradient(135deg,#ecfdf5,#f0fdf4);position:relative;margin-top:1.5rem}.purchase-summary h4{margin:0 0 1.5rem;color:#065f46;font-size:1.2rem;font-weight:700;text-align:center}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.summary-item{text-align:center;padding:1rem;background:#fff;border-radius:10px;border:1px solid #d1fae5}.summary-item label{display:block;font-size:.8rem;color:#047857;text-transform:uppercase;font-weight:600;margin-bottom:.5rem;letter-spacing:.5px}.summary-item .value{display:block;font-size:1.25rem;color:#065f46;font-weight:700}@media (max-width: 1400px){.modal-pharmacy{max-width:95vw}}@media (max-width: 1024px){.form-grid,.medicine-grid,.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.modal-pharmacy{max-width:100vw;max-height:100vh;border-radius:0}.modal-pharmacy .modal-body{padding:1.5rem}.form-grid{grid-template-columns:1fr;gap:1rem}.medicine-grid,.summary-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse;padding:1.5rem}.form-actions .btn{width:100%}.modal-pharmacy .modal-header{padding:1.5rem}.modal-pharmacy .modal-header h3{font-size:1.5rem}}.modal-pharmacy .modal-body::-webkit-scrollbar{width:8px}.modal-pharmacy .modal-body::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.modal-pharmacy .modal-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.modal-pharmacy .modal-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}:root{--primary-600: #2563eb;--primary-700: #1d4ed8;--primary-50: #eff6ff;--primary-100: #dbeafe;--primary-500: #3b82f6;--success-600: #059669;--success-700: #047857;--success-50: #ecfdf5;--success-100: #d1fae5;--warning-600: #d97706;--warning-700: #b45309;--warning-50: #fffbeb;--warning-100: #fef3c7;--danger-600: #dc2626;--danger-700: #b91c1c;--danger-50: #fef2f2;--danger-100: #fee2e2;--gray-25: #fefefe;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: .375rem;--radius: .5rem;--radius-md: .625rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25)}body{font-family:var(--font-family);font-feature-settings:"cv02","cv03","cv04","cv11";background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:var(--gray-800);line-height:1.6;font-size:var(--text-base)}.pharmacy-billing{min-height:100vh;background:var(--gray-25);padding:var(--space-8) var(--space-6);max-width:1400px;margin:0 auto}.header{text-align:center;margin-bottom:var(--space-12);padding:var(--space-10) var(--space-8);background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);color:#fff;position:relative;overflow:hidden}.header:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.08'%3E%3Ccircle cx='7' cy='7' r='7'/%3E%3Ccircle cx='53' cy='53' r='7'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.4}.header h1{font-size:var(--text-3xl);font-weight:700;letter-spacing:-.025em;position:relative;z-index:1;text-shadow:0 2px 4px rgb(0 0 0 / .1)}.tabs,.sub-tabs{display:flex;justify-content:center;margin-bottom:var(--space-10);background:#fff;border-radius:var(--radius-2xl);padding:var(--space-3);box-shadow:var(--shadow-lg);width:fit-content;margin-left:auto;margin-right:auto;border:1px solid var(--gray-200);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tab,.sub-tab{padding:var(--space-4) var(--space-6);background:transparent;border:none;border-radius:var(--radius-xl);cursor:pointer;font-weight:500;font-size:var(--text-sm);color:var(--gray-600);transition:all .3s cubic-bezier(.4,0,.2,1);margin:0 var(--space-1);position:relative;overflow:hidden;min-width:100px;text-align:center}.tab:hover:not(.active),.sub-tab:hover:not(.active){background:linear-gradient(135deg,var(--gray-50) 0%,var(--primary-50) 100%);color:var(--primary-600);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.tab.active,.sub-tab.active{background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%);color:#fff;box-shadow:var(--shadow-lg);transform:translateY(-2px);font-weight:600}.date-filter-section{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-2xl);padding:var(--space-8);margin:var(--space-8) 0;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.date-filter-header{display:flex;flex-direction:column;gap:var(--space-6)}.date-inputs{display:flex;flex-wrap:wrap;gap:var(--space-6);align-items:end;background:var(--gray-50);padding:var(--space-6);border-radius:var(--radius-xl);border:1px solid var(--gray-200)}.date-input-group{display:flex;flex-direction:column;gap:var(--space-2);flex:1;min-width:180px}.date-input-group label{font-size:var(--text-sm);font-weight:600;color:var(--gray-700);text-transform:uppercase;letter-spacing:.025em}.date-input{padding:var(--space-4) var(--space-4);border:2px solid var(--gray-200);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:500;background:#fff;transition:all .2s ease;box-shadow:var(--shadow-sm)}.date-input:focus{outline:none;border-color:var(--primary-600);box-shadow:0 0 0 4px #2563eb1a,var(--shadow-md);transform:translateY(-1px)}.show-all-btn{padding:var(--space-4) var(--space-6);border:none;border-radius:var(--radius-lg);font-size:var(--text-sm);cursor:pointer;font-weight:600;height:fit-content;background:linear-gradient(135deg,var(--success-600) 0%,var(--success-700) 100%);color:#fff;transition:all .3s ease;box-shadow:var(--shadow-md);text-transform:uppercase;letter-spacing:.025em;white-space:nowrap}.show-all-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.quick-filters{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-6);background:linear-gradient(135deg,var(--primary-50) 0%,var(--gray-50) 100%);border-radius:var(--radius-xl);border:1px solid var(--primary-100)}.quick-filters span{font-weight:600;color:var(--gray-700);font-size:var(--text-sm);margin-right:var(--space-2)}.quick-filter-btn{padding:var(--space-3) var(--space-4);background:#fff;border:2px solid var(--gray-200);border-radius:var(--radius-lg);font-size:var(--text-sm);cursor:pointer;transition:all .3s ease;font-weight:500;box-shadow:var(--shadow-sm);color:var(--gray-700)}.quick-filter-btn:hover{background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%);color:#fff;border-color:var(--primary-600);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.advice-list,.medicine-section,.bill-details,.bill-summary,.patient-info,.direct-sale-section{background:#fff;border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);padding:var(--space-10);margin-bottom:var(--space-8);border:1px solid var(--gray-200);transition:all .3s ease;position:relative;overflow:hidden}.advice-list:before,.medicine-section:before,.bill-details:before,.bill-summary:before,.patient-info:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%)}.advice-list:hover,.medicine-section:hover,.bill-details:hover,.bill-summary:hover,.patient-info:hover{box-shadow:var(--shadow-2xl);transform:translateY(-2px)}.advice-list h3,.medicine-section h3,.bill-details h3,.bill-summary h3,.patient-info h3{color:var(--gray-800);margin-bottom:var(--space-8);font-size:var(--text-2xl);font-weight:700;display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:2px solid var(--gray-100)}.advice-list h3:before,.medicine-section h3:before{content:"";width:6px;height:24px;background:linear-gradient(135deg,var(--primary-600),var(--primary-700));border-radius:3px;box-shadow:var(--shadow-sm)}.advice-table{border-radius:var(--radius-2xl);overflow:hidden;border:1px solid var(--gray-200);background:#fff;box-shadow:var(--shadow-lg);margin-top:var(--space-6)}.table-header{display:grid;background:linear-gradient(135deg,var(--gray-800) 0%,var(--gray-700) 100%);color:#fff;font-weight:600;padding:var(--space-5) 0;gap:var(--space-4);font-size:var(--text-sm);position:relative}.table-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%)}.advice-table .table-header{grid-template-columns:1.2fr 1fr 1fr 140px 120px 2fr 220px}.table-row{display:grid;padding:var(--space-5) 0;border-bottom:1px solid var(--gray-100);gap:var(--space-4);align-items:center;transition:all .3s ease;font-size:var(--text-sm);background:#fff}.advice-table .table-row{grid-template-columns:1.2fr 1fr 1fr 140px 120px 2fr 220px}.table-row:hover{background:linear-gradient(135deg,var(--primary-50) 0%,var(--gray-50) 100%);transform:translate(4px);box-shadow:var(--shadow-md)}.table-row:last-child{border-bottom:none}.table-header>*,.table-row>*{padding:0 var(--space-4);text-align:left;font-weight:500}.no-data{text-align:center;padding:var(--space-16);color:var(--gray-500);font-style:italic;font-size:var(--text-base);background:linear-gradient(135deg,var(--gray-50) 0%,white 100%);border-radius:var(--radius-xl);margin:var(--space-6)}.status{padding:var(--space-2) var(--space-4);border-radius:var(--radius-2xl);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;display:inline-flex;align-items:center;gap:var(--space-2);border:2px solid transparent;box-shadow:var(--shadow-sm);transition:all .2s ease}.status:before{content:"";width:8px;height:8px;border-radius:50%;box-shadow:var(--shadow-sm)}.status.pending{background:linear-gradient(135deg,var(--warning-50) 0%,var(--warning-100) 100%);color:var(--warning-700);border-color:var(--warning-200)}.status.pending:before{background:var(--warning-600)}.status.converted{background:linear-gradient(135deg,var(--success-50) 0%,var(--success-100) 100%);color:var(--success-700);border-color:var(--success-200)}.status.converted:before{background:var(--success-600)}.status.not_converted{background:linear-gradient(135deg,var(--danger-50) 0%,var(--danger-100) 100%);color:var(--danger-700);border-color:var(--danger-200)}.status.not_converted:before{background:var(--danger-600)}.action-buttons{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end}.btn-generate,.btn-not-converted,.btn-view,.btn-print,.btn-back{padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--text-xs);font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:.05em;position:relative;overflow:hidden;box-shadow:var(--shadow-md);min-width:100px;text-align:center}.btn-generate{background:linear-gradient(135deg,var(--success-600) 0%,var(--success-700) 100%);color:#fff}.btn-generate:hover:not(:disabled){transform:translateY(-3px);box-shadow:var(--shadow-xl)}.btn-not-converted{background:linear-gradient(135deg,var(--danger-600) 0%,var(--danger-700) 100%);color:#fff}.btn-not-converted:hover:not(:disabled){transform:translateY(-3px);box-shadow:var(--shadow-xl)}.btn-view,.btn-print{background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%);color:#fff}.btn-view:hover:not(:disabled),.btn-print:hover:not(:disabled){transform:translateY(-3px);box-shadow:var(--shadow-xl)}.btn-back{background:linear-gradient(135deg,var(--gray-600) 0%,var(--gray-700) 100%);color:#fff;margin-bottom:var(--space-6);padding:var(--space-4) var(--space-6)}.btn-back:hover{transform:translateY(-3px);box-shadow:var(--shadow-xl)}.patient-info{border-left:6px solid var(--primary-600);background:linear-gradient(135deg,var(--primary-50) 0%,white 100%)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6)}.info-item{padding:var(--space-6);background:#fff;border-radius:var(--radius-xl);border:2px solid var(--gray-200);font-size:var(--text-sm);transition:all .3s ease;position:relative;overflow:hidden}.info-item:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(135deg,var(--primary-500) 0%,var(--primary-600) 100%)}.info-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px);border-color:var(--primary-300)}.info-item strong{display:block;color:var(--gray-700);font-size:var(--text-xs);text-transform:uppercase;font-weight:700;margin-bottom:var(--space-2);letter-spacing:.075em}.medicine-table{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-lg);margin:var(--space-6) 0;border:1px solid var(--gray-200)}.medicine-table th{background:linear-gradient(135deg,var(--gray-800) 0%,var(--gray-700) 100%);color:#fff;padding:var(--space-5) var(--space-4);text-align:left;font-weight:600;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.025em;position:relative}.medicine-table th:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%)}.medicine-table td{padding:var(--space-4) var(--space-4);border-bottom:1px solid var(--gray-100);font-size:var(--text-sm);vertical-align:middle;font-weight:500}.medicine-table tr:last-child td{border-bottom:none}.medicine-table tr:nth-child(2n){background:var(--gray-25)}.medicine-table tr:hover{background:linear-gradient(135deg,var(--primary-50) 0%,var(--gray-50) 100%);transform:scale(1.005);box-shadow:var(--shadow-md)}.quantity-input{width:80px;padding:var(--space-3) var(--space-3);border:2px solid var(--gray-200);border-radius:var(--radius-lg);text-align:center;font-size:var(--text-sm);font-weight:600;transition:all .2s ease;background:#fff;box-shadow:var(--shadow-sm)}.quantity-input:focus{outline:none;border-color:var(--primary-600);box-shadow:0 0 0 4px #2563eb1a,var(--shadow-md);transform:scale(1.05)}.medicine-table select{padding:var(--space-3) var(--space-4);border:2px solid var(--gray-200);border-radius:var(--radius-lg);font-size:var(--text-sm);background:#fff;cursor:pointer;transition:all .2s ease;min-width:140px;font-weight:500;box-shadow:var(--shadow-sm)}.medicine-table select:focus{outline:none;border-color:var(--primary-600);box-shadow:0 0 0 4px #2563eb1a,var(--shadow-md)}.btn-delete-medicine{background:linear-gradient(135deg,var(--danger-600) 0%,var(--danger-700) 100%);color:#fff;border:none;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);cursor:pointer;font-size:var(--text-base);transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);min-width:44px;height:44px}.btn-delete-medicine:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.bill-summary{border-left:6px solid var(--primary-600);background:linear-gradient(135deg,var(--primary-50) 0%,white 100%)}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--gray-200);font-size:var(--text-base);font-weight:500;background:#fff;margin-bottom:var(--space-2);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .2s ease}.summary-item:hover{transform:translate(4px);box-shadow:var(--shadow-md)}.summary-item.total{font-size:var(--text-xl);font-weight:700;color:var(--primary-700);background:linear-gradient(135deg,var(--primary-100) 0%,white 100%);border:2px solid var(--primary-200);margin-top:var(--space-6);padding:var(--space-6);box-shadow:var(--shadow-lg)}.generate-bill-btn,.print-bill-btn{width:100%;padding:var(--space-6) var(--space-8);background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%);color:#fff;border:none;border-radius:var(--radius-2xl);font-size:var(--text-lg);font-weight:700;cursor:pointer;margin-top:var(--space-8);transition:all .3s cubic-bezier(.4,0,.2,1);letter-spacing:.025em;text-transform:uppercase;position:relative;overflow:hidden;box-shadow:var(--shadow-xl)}.generate-bill-btn:hover:not(:disabled),.print-bill-btn:hover:not(:disabled){transform:translateY(-4px);box-shadow:var(--shadow-2xl)}.loading{display:flex;justify-content:center;align-items:center;padding:var(--space-16);color:var(--gray-500);font-style:italic;font-size:var(--text-base);font-weight:500}.loading:before{content:"";width:24px;height:24px;border:3px solid var(--gray-200);border-top:3px solid var(--primary-600);border-radius:50%;margin-right:var(--space-4);animation:spin 1s linear infinite}.error-message{background:linear-gradient(135deg,var(--danger-50) 0%,var(--danger-100) 100%);color:var(--danger-700);padding:var(--space-6) var(--space-8);border-radius:var(--radius-xl);border:2px solid var(--danger-200);margin:var(--space-6) 0;font-weight:600;font-size:var(--text-base);display:flex;align-items:center;gap:var(--space-3);box-shadow:var(--shadow-lg)}.error-message:before{content:"⚠️";font-size:var(--text-xl)}.date-range-indicator{font-size:var(--text-sm);font-weight:500;color:var(--gray-600);margin-left:var(--space-4);padding:var(--space-2) var(--space-4);background:linear-gradient(135deg,var(--gray-100) 0%,var(--gray-50) 100%);border-radius:var(--radius-2xl);border:1px solid var(--gray-200);box-shadow:var(--shadow-sm)}@media (max-width: 1200px){.pharmacy-billing{padding:var(--space-6) var(--space-4)}.advice-table .table-header,.advice-table .table-row{grid-template-columns:1fr .8fr .8fr 120px 100px 1.5fr 180px;font-size:var(--text-sm)}}@media (max-width: 768px){.pharmacy-billing{padding:var(--space-4) var(--space-3)}.header{padding:var(--space-8) var(--space-6);margin-bottom:var(--space-8)}.header h1{font-size:var(--text-2xl)}.tabs,.sub-tabs{flex-direction:column;width:100%;padding:var(--space-4);gap:var(--space-2)}.tab,.sub-tab{width:100%;margin:0}.date-inputs{flex-direction:column;gap:var(--space-4)}.date-input-group{min-width:auto}.advice-table .table-header,.advice-table .table-row{display:block;border-bottom:2px solid var(--gray-200);padding:var(--space-4);margin-bottom:var(--space-2);border-radius:var(--radius-lg)}.table-header>*,.table-row>*{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;border-bottom:1px solid var(--gray-100)}.info-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column;gap:var(--space-2)}}@media print{.pharmacy-billing{background:#fff!important;padding:0!important}.header{background:none!important;color:#000!important;box-shadow:none!important}.tabs,.sub-tabs,.date-filter-section,.action-buttons{display:none!important}}.customer-form-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}.customer-form-modal{background:#fff;border-radius:var(--radius-2xl);padding:var(--space-10);width:90%;max-width:500px;box-shadow:var(--shadow-2xl);border:1px solid var(--gray-200);position:relative;animation:slideUp .3s ease}.customer-form-modal h3{color:var(--gray-800);font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--space-8);text-align:center;padding-bottom:var(--space-4);border-bottom:2px solid var(--gray-100)}.form-group{margin-bottom:var(--space-6)}.form-group label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--gray-700);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.025em}.form-group input{width:100%;padding:var(--space-4) var(--space-4);border:2px solid var(--gray-200);border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:500;background:#fff;transition:all .3s ease;box-shadow:var(--shadow-sm)}.form-group input:focus{outline:none;border-color:var(--primary-600);box-shadow:0 0 0 4px #2563eb1a,var(--shadow-md);transform:translateY(-1px)}.form-group input::placeholder{color:var(--gray-400);font-style:italic}.form-actions{display:flex;gap:var(--space-4);justify-content:flex-end;margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--gray-200)}.btn-cancel{padding:var(--space-4) var(--space-8);background:linear-gradient(135deg,var(--gray-600) 0%,var(--gray-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:.025em;box-shadow:var(--shadow-md);min-width:100px}.btn-cancel:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-xl)}.btn-cancel:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-confirm{padding:var(--space-4) var(--space-8);background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:.025em;box-shadow:var(--shadow-md);min-width:120px}.btn-confirm:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-xl)}.btn-confirm:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.direct-sale-section{background:#fff;border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);padding:var(--space-10);margin-bottom:var(--space-8);border:1px solid var(--gray-200);position:relative;overflow:hidden}.direct-sale-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,var(--success-600) 0%,var(--success-700) 100%)}.direct-sale-section h2{color:var(--gray-800);margin-bottom:var(--space-8);font-size:var(--text-2xl);font-weight:700;display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:2px solid var(--gray-100)}.medicine-search-section{margin-bottom:var(--space-8)}.medicine-search-section h3{color:var(--gray-800);margin-bottom:var(--space-6);font-size:var(--text-xl);font-weight:600}.search-box{margin-bottom:var(--space-6)}.medicine-search-input{width:100%;padding:var(--space-4) var(--space-4);border:2px solid var(--gray-200);border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:500;background:#fff;transition:all .3s ease;box-shadow:var(--shadow-sm)}.medicine-search-input:focus{outline:none;border-color:var(--primary-600);box-shadow:0 0 0 4px #2563eb1a,var(--shadow-md)}.search-results{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-height:400px;overflow-y:auto}.search-result-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--gray-100);transition:all .2s ease}.search-result-item:hover{background:linear-gradient(135deg,var(--primary-50) 0%,var(--gray-50) 100%);transform:translate(2px)}.search-result-item:last-child{border-bottom:none}.medicine-info{display:flex;flex-direction:column;gap:var(--space-1)}.medicine-info strong{color:var(--gray-800);font-size:var(--text-base);font-weight:600}.medicine-info span{color:var(--gray-600);font-size:var(--text-sm);font-weight:500}.add-medicine-btn{padding:var(--space-3) var(--space-5);background:linear-gradient(135deg,var(--success-600) 0%,var(--success-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.025em;box-shadow:var(--shadow-md)}@media (max-width: 768px){.customer-form-modal{width:95%;padding:var(--space-6);margin:var(--space-4)}.form-actions{flex-direction:column;gap:var(--space-3)}.btn-cancel,.btn-confirm{width:100%}}.medicine-table td,.medicine-table tr{position:relative;overflow:visible!important}.medicine-table tbody,.medicine-table{overflow:visible!important}.medicine-table .css-26l3qy-menu,.medicine-table [class*=-menu]{z-index:999!important;position:absolute!important}.medicine-table .css-1nmdiq5-menu,.medicine-table [class*=MenuList]{max-height:200px!important;overflow-y:auto!important}.medicine-name-cell{position:relative;overflow:visible!important;min-width:250px}.medicine-name-wrapper{display:flex;flex-direction:column;gap:8px;position:relative;z-index:1}.medicine-name-display{font-weight:500;color:var(--gray-800);font-size:var(--text-sm);padding:var(--space-2) 0}.medicine-select-container,.medicine-select-container .css-b62m3t-container{position:relative;z-index:100}.medicine-select-container [class*=-menu]{z-index:9999!important;position:absolute!important;background:#fff;box-shadow:var(--shadow-xl);border:1px solid var(--gray-200);border-radius:var(--radius-lg)}.medicine-select-container [class*=-option]:hover{background:linear-gradient(135deg,var(--primary-50) 0%,var(--gray-50) 100%);cursor:pointer}.medicine-select-container [class*=-option--is-focused]{background:var(--primary-100)}.medicine-select-container [class*=MenuList]{max-height:250px;overflow-y:auto;padding:var(--space-2)}.medicine-select-container [class*=MenuList]::-webkit-scrollbar{width:8px}.medicine-select-container [class*=MenuList]::-webkit-scrollbar-track{background:var(--gray-100);border-radius:var(--radius)}.medicine-select-container [class*=MenuList]::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:var(--radius)}.medicine-select-container [class*=MenuList]::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}.add-medicine-section{margin-top:var(--space-6);padding:var(--space-6);background:linear-gradient(135deg,var(--primary-50) 0%,var(--gray-50) 100%);border-radius:var(--radius-xl);border:2px dashed var(--primary-300)}.add-medicine-section label{display:block;margin-bottom:var(--space-3);font-weight:600;color:var(--gray-700);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.025em}.add-medicine-btn{padding:var(--space-4) var(--space-8);background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-700) 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-md);text-transform:uppercase;letter-spacing:.025em}.add-medicine-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.add-medicine-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.status-badge{padding:4px 12px;border-radius:4px;font-weight:600;font-size:.9em}.status-badge.pending{background-color:#fff3cd;color:#856404}.status-badge.partial{background-color:#cce5ff;color:#004085}.status-badge.completed{background-color:#d4edda;color:#155724}.summary-item.paid{color:#28a745;font-weight:600}.summary-item.remaining{color:#dc3545;font-weight:600}.summary-item.status{margin-top:10px;padding-top:10px;border-top:2px solid #dee2e6}.pharmacy-app{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh;color:#1e293b;line-height:1.6}.app-header{background:linear-gradient(135deg,#1e40af,#3b82f6,#6366f1);color:#fff;padding:2.5rem 2rem;text-align:center;box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a;position:relative;overflow:hidden}.app-header:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Ccircle cx='30' cy='30' r='4'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") repeat;pointer-events:none}.app-header h1{font-size:2.5rem;font-weight:800;margin-bottom:.75rem;letter-spacing:-.025em;text-shadow:0 2px 4px rgba(0,0,0,.1);position:relative;z-index:1}.motivation{font-size:1.125rem;opacity:.95;font-weight:500;position:relative;z-index:1;background:#ffffff1a;padding:.75rem 1.5rem;border-radius:50px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:inline-block}.app-main{max-width:100vw;padding:2.5rem 2rem}.action-bar{margin-bottom:2.5rem;display:flex;align-items:center;gap:1rem}.search-container{position:relative;flex:1;max-width:450px}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#64748b;pointer-events:none;z-index:2}.search-input{width:100%;padding:14px 20px 14px 48px;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);background:#fff;box-shadow:0 1px 3px #0000001a}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a,0 4px 6px -1px #0000001a;transform:translateY(-1px)}.content-card{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow:hidden;border:1px solid #f1f5f9;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.card-header{display:flex;align-items:center;padding:2rem 2.5rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.card-header h2{font-size:1.5rem;font-weight:700;color:#1e293b;letter-spacing:-.025em}.ml-2{margin-left:.75rem}.ml-auto{margin-left:auto}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:12px 20px;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn:hover:before{left:100%}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 4px 14px #3b82f663}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-2px);box-shadow:0 8px 25px #3b82f680}.btn-secondary{background:linear-gradient(135deg,#64748b,#475569);color:#fff;box-shadow:0 4px 14px #64748b63}.btn-info{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff;box-shadow:0 4px 14px #06b6d463}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 14px #10b98163}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 14px #ef444463}.btn-sm{padding:8px 16px;font-size:.75rem;border-radius:8px}.table-container{overflow-x:auto;border-radius:0 0 16px 16px}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:16px 20px;text-align:left;font-weight:700;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.data-table td{padding:16px 20px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.data-table tbody tr{transition:all .2s ease}.data-table tbody tr:hover{background:linear-gradient(135deg,#f8fafc,#f1f8ff);transform:scale(1.001)}.medicine-info{display:flex;flex-direction:column;gap:6px}.medicine-name{font-weight:600;color:#1f2937;font-size:.9375rem}.medicine-composition{font-size:.8125rem;color:#64748b;font-style:italic}.stock-level{padding:6px 12px;border-radius:8px;font-weight:600;font-size:.75rem;text-align:center;min-width:60px;display:inline-block;box-shadow:0 1px 3px #0000001a}.normal-stock{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border:1px solid #10b981}.low-stock{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b;border:1px solid #ef4444;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}.no-data{text-align:center;padding:4rem 2rem;color:#64748b;font-style:italic;font-size:1.125rem}.modal-overlay{position:fixed;inset:0;background:#0f172a99;display:grid;grid-row:2;align-items:center;justify-content:center;z-index:1000;padding:2rem;animation:overlayFadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@keyframes overlayFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.modal{background:#fff;border-radius:20px;width:100%;max-width:85vw;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;border:1px solid #e2e8f0;animation:modalSlideIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:2rem 2.5rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#f8fafc,#f1f5f9);position:sticky;top:0;z-index:10}.modal-header h3{display:flex;align-items:center;gap:.75rem;font-size:1.5rem;font-weight:700;color:#1e293b;letter-spacing:-.025em}.modal-close{background:#64748b1a;border:1px solid rgba(100,116,139,.2);color:#64748b;cursor:pointer;padding:8px;border-radius:10px;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-close:hover{background:#64748b33;color:#374151;transform:scale(1.05)}.form{padding:2.5rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2.5rem}.form-group{display:flex;flex-direction:column;gap:8px}.form-group-full{grid-column:1 / -1;display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.875rem;font-weight:600;color:#374151;letter-spacing:.025em}.form-input,.form-select,.form-textarea{padding:12px 16px;border:2px solid #d1d5db;border-radius:10px;font-size:.875rem;transition:all .3s cubic-bezier(.4,0,.2,1);background:#fff;font-family:inherit}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a;transform:translateY(-1px)}.form-input.readonly{background:linear-gradient(135deg,#f9fafb,#f3f4f6);color:#6b7280;cursor:not-allowed;border-color:#e5e7eb}.form-textarea{resize:vertical;min-height:100px;font-family:inherit}.medicines-section{background:linear-gradient(135deg,#f0f9ff,#e0f7fa);border:2px solid #e0f2fe;border-radius:16px;padding:2rem;margin-bottom:2.5rem;box-shadow:0 4px 6px -1px #06b6d41a}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #b0e7ef}.section-header h4{font-size:1.25rem;font-weight:700;color:#0e7490;display:flex;align-items:center;gap:.5rem}.medicine-item{background:#fff;border:2px solid #e2e8f0;border-radius:12px;margin-bottom:1.5rem;overflow:hidden;box-shadow:0 2px 4px -1px #0000000f;transition:all .3s ease}.medicine-item:hover{border-color:#0891b2;box-shadow:0 4px 6px -1px #0891b226;transform:translateY(-1px)}.medicine-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e5e7eb}.medicine-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;padding:1.5rem}.purchase-summary{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #bbf7d0;border-radius:16px;padding:2rem;margin-bottom:2.5rem;box-shadow:0 4px 6px -1px #22c55e1a}.purchase-summary h4{font-size:1.25rem;font-weight:700;color:#166534;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-bottom:1.5rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;border-top:2px solid #f1f5f9;position:sticky;bottom:0;background:#fff;margin:0 -2.5rem -2.5rem;padding:1.5rem 2.5rem 2rem}.modal::-webkit-scrollbar{width:8px}.modal::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.modal::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#cbd5e1,#94a3b8);border-radius:4px}.modal::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#94a3b8,#64748b)}@media (max-width: 768px){.app-main{padding:1.5rem 1rem}.app-header{padding:2rem 1rem}.app-header h1{font-size:2rem}.card-header{padding:1.5rem;flex-direction:column;gap:1rem;align-items:stretch}.form{padding:1.5rem}.form-grid,.medicine-grid,.summary-grid{grid-template-columns:1fr}.form-actions{flex-direction:column;margin:0 -1.5rem -1.5rem;padding-left:1.5rem;padding-right:1.5rem}.modal{margin:1rem;max-height:calc(100vh - 2rem);border-radius:16px}.modal-header{padding:1.5rem}.data-table{font-size:.75rem}.data-table th,.data-table td{padding:12px 8px}.action-bar{flex-direction:column;gap:1rem;align-items:stretch}.search-container{max-width:100%}}@media (max-width: 480px){.modal-overlay{padding:1rem}.medicine-header{flex-direction:column;gap:.75rem;align-items:stretch}.app-header h1{font-size:1.75rem}.motivation{padding:.5rem 1rem;font-size:1rem}}.btn:focus,.form-input:focus,.form-select:focus,.form-textarea:focus,.modal-close:focus{outline:2px solid #3b82f6;outline-offset:2px}.searchable-select{position:relative;width:100%}.select-input-wrapper{position:relative;display:flex;align-items:center}.select-input{width:100%;padding-right:30px!important}.select-arrow{position:absolute;right:10px;cursor:pointer;color:#666;transition:transform .2s ease}.select-arrow.open{transform:rotate(180deg)}.select-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:4px;max-height:200px;overflow-y:auto;z-index:1000;box-shadow:0 4px 6px #0000001a}.select-option{padding:10px 15px;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background-color .2s ease}.select-option:hover{background-color:#f8f9fa}.select-option:last-child{border-bottom:none}.select-option.disabled{cursor:not-allowed;color:#999;font-style:italic}.select-option.disabled:hover{background-color:transparent}.modal .searchable-select .select-dropdown{z-index:1050}@media (max-width: 768px){.select-dropdown{max-height:150px}.select-option{padding:8px 12px;font-size:14px}}.medicine-template-page{padding:20px;max-width:1400px;margin:0 auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.medicine-template-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;box-shadow:0 4px 15px #0000001a}.medicine-template-header h2{margin:0;font-size:28px;font-weight:600}.medicine-create-template-btn{background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);padding:12px 24px;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;transition:all .3s ease}.medicine-create-template-btn:hover:not(:disabled){background:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px)}.medicine-create-template-btn:disabled{opacity:.6;cursor:not-allowed}.medicine-template-error-banner{background-color:#dc3545;color:#fff;padding:15px 20px;border-radius:6px;margin-bottom:20px;font-weight:500;box-shadow:0 2px 10px #dc354533;border-left:4px solid #c82333}.medicine-template-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px}.medicine-template-modal-content{background:#fff;border-radius:12px;box-shadow:0 25px 80px #00000080;width:100%;max-width:1200px;max-height:90vh;overflow-y:auto;animation:medicineModalSlideIn .3s ease-out;border:1px solid #dee2e6;position:relative}@keyframes medicineModalSlideIn{0%{opacity:0;transform:translateY(-40px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.medicine-template-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;background:#f8f9fa;border-bottom:1px solid #e9ecef;border-radius:12px 12px 0 0}.medicine-template-modal-header h3{margin:0;color:#495057;font-size:22px}.medicine-close-form-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#6c757d;padding:5px;border-radius:4px;transition:all .2s ease}.medicine-close-form-btn:hover{background:#e9ecef;color:#495057}.medicine-template-form{padding:30px}.medicine-template-info{margin-bottom:30px}.medicine-form-group{display:flex;flex-direction:column;max-width:400px}.medicine-form-group label{margin-bottom:8px;font-weight:600;color:#495057;font-size:14px}.medicine-form-group input,.medicine-form-group select{padding:12px;border:2px solid #e9ecef;border-radius:8px;font-size:16px;transition:border-color .3s ease}.medicine-form-group input:focus,.medicine-form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.medicine-medications-section{margin-bottom:30px}.medicine-medications-section h4{margin-bottom:20px;color:#495057;font-size:20px;border-bottom:2px solid #e9ecef;padding-bottom:10px}.medicine-medications-table-container{overflow-x:auto;border:1px solid #e9ecef;border-radius:8px;margin-bottom:15px}.medicine-medications-table{width:100%;border-collapse:collapse;background:#fff;min-width:800px}.medicine-medications-table th{background:#f8f9fa;padding:15px 10px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #e9ecef;white-space:nowrap;font-size:14px}.medicine-medications-table td{padding:12px 10px;border-bottom:1px solid #e9ecef;vertical-align:middle}.medicine-medications-table select,.medicine-medications-table input{width:100%;padding:8px;border:1px solid #e9ecef;border-radius:4px;font-size:14px;min-width:120px}.medicine-medications-table select:focus,.medicine-medications-table input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.medicine-remove-medication-btn{background:none;border:none;cursor:pointer;font-size:16px;padding:5px;border-radius:4px;transition:background-color .2s ease}.medicine-remove-medication-btn:hover:not(:disabled){background:#fff5f5}.medicine-remove-medication-btn:disabled{opacity:.4;cursor:not-allowed}.medicine-add-medication-btn{background:#28a745;color:#fff;border:none;padding:12px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .3s ease}.medicine-add-medication-btn:hover{background:#218838}.medicine-form-actions{display:flex;gap:15px;justify-content:flex-end;padding-top:20px;border-top:1px solid #e9ecef}.medicine-cancel-btn{background:#6c757d;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;transition:background-color .3s ease}.medicine-cancel-btn:hover{background:#5a6268}.medicine-submit-btn{background:#667eea;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;transition:all .3s ease}.medicine-submit-btn:hover:not(:disabled){background:#5a67d8;transform:translateY(-1px)}.medicine-submit-btn:disabled{background:#adb5bd;cursor:not-allowed;transform:none}.medicine-templates-list-section{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:30px}.medicine-templates-list-section h3{margin-bottom:25px;color:#495057;font-size:22px;border-bottom:2px solid #e9ecef;padding-bottom:10px}.medicine-template-loading{text-align:center;padding:40px;color:#6c757d;font-size:18px}.medicine-no-templates{text-align:center;padding:60px 20px;color:#6c757d}.medicine-no-templates p{font-size:18px;margin:0}.medicine-templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.medicine-template-card{border:1px solid #e9ecef;border-radius:12px;overflow:hidden;transition:all .3s ease;background:#fff}.medicine-template-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-3px)}.medicine-template-card-header{padding:20px;background:#f8f9fa;border-bottom:1px solid #e9ecef}.medicine-template-card-header h4{margin:0 0 8px;color:#495057;font-size:18px;font-weight:600}.medicine-template-card-body{padding:20px}.medicine-medications-count{color:#6c757d;margin-bottom:15px;font-size:14px;font-weight:500}.medicine-medications-preview{display:flex;flex-wrap:wrap;gap:8px}.medicine-medication-tag{background:#e3f2fd;color:#1976d2;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.medicine-more-medications{background:#f5f5f5;color:#666;padding:4px 8px;border-radius:4px;font-size:12px;font-style:italic}.medicine-template-card-actions{padding:15px 20px;background:#f8f9fa;border-top:1px solid #e9ecef;display:flex;gap:10px}.medicine-edit-btn{background:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .3s ease;flex:1}.medicine-edit-btn:hover{background:#218838}.medicine-delete-btn{background:#dc3545;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .3s ease;flex:1}.medicine-delete-btn:hover{background:#c82333}.medicine-template-error-message{text-align:center;padding:40px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24}.medicine-template-error-message h3{margin-bottom:15px}.medicine-template-error-message button{background:#dc3545;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;margin-top:15px}@media (max-width: 1200px){.medicine-templates-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.medicine-template-modal-content{max-width:95vw}}@media (max-width: 768px){.medicine-template-page{padding:15px}.medicine-template-header{flex-direction:column;gap:15px;text-align:center}.medicine-template-info{margin-bottom:20px}.medicine-form-group{max-width:100%}.medicine-medications-table-container{font-size:14px}.medicine-medications-table th,.medicine-medications-table td{padding:8px 5px}.medicine-form-actions{flex-direction:column}.medicine-templates-grid{grid-template-columns:1fr}.medicine-template-modal-overlay{padding:10px}.medicine-template-modal-content{max-height:95vh}.medicine-template-form{padding:20px}}@media (max-width: 480px){.medicine-template-form{padding:15px}.medicine-templates-list-section{padding:20px}.medicine-medications-table select,.medicine-medications-table input{min-width:100px;font-size:12px}.medicine-template-modal-header{padding:15px 20px}.medicine-template-modal-overlay{padding:5px}}.inventory-page{padding:20px;max-width:1200px;margin:0 auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;margin:0 4px}.btn-back{background-color:#28a745;color:#fff}.btn-back:hover{background-color:#1e7e34}.btn-sm{padding:4px 8px;font-size:12px}.btn-edit{background-color:#ffc107;color:#212529}.btn-edit:hover{background-color:#e0a800}.btn-delete{background-color:#dc3545;color:#fff}.btn-delete:hover{background-color:#c82333}.error-message{background-color:#f8d7da;color:#721c24;padding:12px;border-radius:4px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.close-error{background:none;border:none;font-size:18px;cursor:pointer;color:#721c24}.loading-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;z-index:1000}.inventory-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e9ecef}.inventory-header h2{margin:0;color:#343a40}.header-buttons{display:flex;gap:10px}.inventory-table,.purchase-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.inventory-table th,.inventory-table td,.purchase-table th,.purchase-table td{padding:12px;text-align:left;border-bottom:1px solid #e9ecef}.inventory-table th,.purchase-table th{background-color:#f8f9fa;font-weight:600;color:#495057}.inventory-table tbody tr:hover,.purchase-table tbody tr:hover{background-color:#f8f9fa}.purchase-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;border-bottom:2px solid #e9ecef}.purchase-sections{display:flex;flex-direction:column;gap:30px}.add-purchase-section,.purchase-history-section{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.add-purchase-section h3,.purchase-history-section h3{margin-top:0;margin-bottom:20px;color:#343a40}.add-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;border-bottom:2px solid #e9ecef}.add-item-sections{display:flex;flex-direction:column;gap:30px}.category-section,.add-item-form-section{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.category-header h3{margin:0;color:#343a40}.add-category-form{background:#f8f9fa;padding:15px;border-radius:4px;margin-bottom:20px}.categories-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}.category-item{background:#e9ecef;padding:10px;border-radius:4px;display:flex;flex-direction:column;gap:4px}.category-name{font-weight:600;color:#343a40}.category-description{font-size:12px;color:#6c757d}.purchase-form,.item-form{display:flex;flex-direction:column;gap:15px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.form-group{display:flex;flex-direction:column;gap:5px}.form-group label{font-weight:600;color:#495057;font-size:14px}.form-group input,.form-group select,.form-group textarea{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:#e9ecef;opacity:1}@media (max-width: 768px){.inventory-page{padding:10px}.inventory-header,.purchase-header,.add-item-header{flex-direction:column;gap:15px;text-align:center}.header-buttons{justify-content:center}.form-row,.categories-list{grid-template-columns:1fr}.inventory-table,.purchase-table{font-size:12px}.inventory-table th,.inventory-table td,.purchase-table th,.purchase-table td{padding:8px 4px}}@media (max-width: 480px){.btn{padding:6px 12px;font-size:12px}.inventory-table,.purchase-table{display:block;overflow-x:auto;white-space:nowrap}}.management-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px;margin-bottom:30px}.management-section{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #e9ecef}.section-header h3{margin:0;color:#343a40}.add-form{background:#f8f9fa;padding:15px;border-radius:4px;margin-bottom:15px}.items-list{max-height:300px;overflow-y:auto}.item-card{background:#e9ecef;padding:10px;border-radius:4px;margin-bottom:8px;display:flex;flex-direction:column;gap:4px}.item-name{font-weight:600;color:#343a40}.item-code,.item-contact,.item-description{font-size:12px;color:#6c757d}.form-section{background:#f8f9fa;padding:15px;border-radius:4px;margin-bottom:20px}.form-section h4{margin-top:0;margin-bottom:15px;color:#343a40;border-bottom:1px solid #dee2e6;padding-bottom:8px}.purchase-items-table,.purchase-items-detail-table{width:100%;border-collapse:collapse;margin-top:10px}.purchase-items-table th,.purchase-items-table td,.purchase-items-detail-table th,.purchase-items-detail-table td{padding:8px;text-align:left;border-bottom:1px solid #e9ecef;font-size:12px}.purchase-items-table th,.purchase-items-detail-table th{background-color:#e9ecef;font-weight:600}.purchases-list{display:flex;flex-direction:column;gap:20px}.purchase-card{background:#f8f9fa;padding:15px;border-radius:4px;border-left:4px solid #007bff}.purchase-header-info{margin-bottom:15px}.purchase-details h4{margin-top:0;margin-bottom:10px;color:#007bff}.purchase-details p{margin:5px 0;font-size:14px}.purchase-items h5{margin-top:0;margin-bottom:10px;color:#343a40}@media (max-width: 1024px){.management-grid{grid-template-columns:1fr}}@media (max-width: 768px){.form-section{padding:10px}.purchase-items-table,.purchase-items-detail-table{font-size:11px}.purchase-items-table th,.purchase-items-table td,.purchase-items-detail-table th,.purchase-items-detail-table td{padding:4px}.purchase-card{padding:10px}}.tpa-container{padding:30px;background:#f8f9fa;min-height:100vh;animation:fadeIn .6s ease-out}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:1rem;border-radius:.5rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem;position:relative}.error-message svg{width:20px;height:20px;flex-shrink:0}.error-close{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#dc2626;font-size:1.25rem;cursor:pointer;padding:.25rem;border-radius:.25rem;transition:background-color .2s}.error-close:hover{background-color:#fecaca}.no-data{text-align:center;padding:3rem 1rem;color:#6b7280}.no-data p{font-size:1.1rem;margin:0}.modal-content .spinner{width:16px;height:16px;border:2px solid #ffffff;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite;margin-right:.5rem}.form-actions button:disabled{opacity:.6;cursor:not-allowed}.form-actions button:disabled:hover{transform:none;box-shadow:none}.tpa-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;animation:slideInUp .6s ease-out .2s both}.tpa-header h1{color:#2c3e50;font-size:32px;font-weight:700;margin:0;transition:color .3s ease}.tpa-header h1:hover{color:#3498db}.add-tpa-btn{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;position:relative;overflow:hidden;box-shadow:0 4px 15px #3498db4d}.add-tpa-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.add-tpa-btn:hover:before{left:100%}.add-tpa-btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px #3498db66}.add-tpa-btn:active{transform:translateY(-1px)}.tpa-description{background:#fff;padding:20px;border-radius:12px;margin-bottom:30px;box-shadow:0 2px 10px #0000000d;animation:slideInUp .6s ease-out .3s both;transition:all .3s ease}.tpa-description:hover{box-shadow:0 4px 20px #0000001a;transform:translateY(-2px)}.tpa-description p{margin:0;color:#6c757d;font-size:16px;line-height:1.6}.tpa-filters{display:flex;gap:20px;margin-bottom:30px;animation:slideInUp .6s ease-out .4s both}.search-box{flex:1;position:relative;transition:all .3s ease}.search-box:focus-within{transform:translateY(-2px);box-shadow:0 4px 15px #3498db33}.search-box svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:#6c757d;z-index:1}.search-input{width:100%;padding:12px 15px 12px 45px;border:2px solid #e9ecef;border-radius:8px;font-size:16px;transition:all .3s ease;background:#fff}.search-input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.status-filter{min-width:150px}.filter-select{width:100%;padding:12px 15px;border:2px solid #e9ecef;border-radius:8px;font-size:16px;background:#fff;cursor:pointer;transition:all .3s ease}.filter-select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;transform:translateY(-1px)}.tpa-list{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #00000014;animation:slideInUp .6s ease-out .5s both}.list-header{display:grid;grid-template-columns:2fr 2fr 2fr 1fr 1fr;gap:20px;padding:20px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #e9ecef;font-weight:600;color:#495057;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.header-cell{display:flex;align-items:center}.tpa-row{display:grid;grid-template-columns:2fr 2fr 2fr 1fr 1fr;gap:20px;padding:20px;border-bottom:1px solid #f1f3f4;transition:all .3s ease;position:relative;overflow:hidden;cursor:pointer}.tpa-row:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(52,152,219,.1),transparent);transition:left .5s ease}.tpa-row:hover:before{left:100%}.tpa-row:hover{background:#f8f9fa;transform:translateY(-2px);box-shadow:0 4px 15px #0000001a}.tpa-row:last-child{border-bottom:none}.tpa-cell{display:flex;align-items:center}.tpa-info{display:flex;align-items:center;gap:15px}.tpa-icon{width:50px;height:50px;background:linear-gradient(135deg,#3498db,#2980b9);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;box-shadow:0 4px 15px #3498db4d;transition:all .3s ease}.tpa-row:hover .tpa-icon{transform:scale(1.1) rotate(5deg)}.tpa-info h4{margin:0 0 5px;color:#2c3e50;font-size:18px;font-weight:600;transition:color .3s ease}.tpa-row:hover .tpa-info h4{color:#3498db}.tpa-code{margin:0;color:#6c757d;font-size:14px;font-weight:500;background:#e9ecef;padding:4px 8px;border-radius:4px;transition:all .3s ease}.tpa-row:hover .tpa-code{background:#3498db;color:#fff}.contact-info{display:flex;flex-direction:column;gap:8px}.contact-item{display:flex;align-items:center;gap:8px}.contact-label{font-size:12px;color:#6c757d;font-weight:500;min-width:80px}.contact-value{font-size:14px;color:#2c3e50;font-weight:500;transition:color .3s ease}.tpa-row:hover .contact-value{color:#3498db}.address-info{display:flex;align-items:center}.address-text{color:#6c757d;font-size:14px;line-height:1.4;transition:color .3s ease}.tpa-row:hover .address-text{color:#495057}.tpa-id-badge{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;padding:8px 12px;border-radius:6px;font-size:12px;font-weight:600;text-align:center;box-shadow:0 2px 8px #e74c3c4d;transition:all .3s ease}.tpa-row:hover .tpa-id-badge{transform:scale(1.05);box-shadow:0 4px 12px #e74c3c66}.action-btn{padding:8px 16px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.action-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.action-btn:hover:before{left:100%}.action-btn.edit{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;box-shadow:0 2px 8px #f39c124d}.action-btn.edit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #f39c1266}.action-btn.view{background:linear-gradient(135deg,#9b59b6,#8e44ad);color:#fff;box-shadow:0 2px 8px #9b59b64d}.action-btn.view:hover{transform:translateY(-2px);box-shadow:0 4px 12px #9b59b666}.action-btn.delete{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;box-shadow:0 2px 8px #e74c3c4d}.action-btn.delete:hover{transform:translateY(-2px);box-shadow:0 4px 12px #e74c3c66}.action-btn:active{transform:translateY(0) scale(.95)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}.modal-content{background:#fff;border-radius:12px;padding:0;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:scaleIn .4s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;border-bottom:2px solid #f1f3f4;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.modal-header h2{margin:0;color:#2c3e50;font-size:24px;font-weight:700}.modal-close{background:none;border:none;font-size:28px;color:#6c757d;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .3s ease}.modal-close:hover{background:#e9ecef;color:#495057;transform:scale(1.1)}.tpa-form{padding:30px}.form-section{margin-bottom:30px;animation:slideInUp .4s ease-out}.form-section:nth-child(1){animation-delay:.1s}.form-section:nth-child(2){animation-delay:.2s}.form-section:nth-child(3){animation-delay:.3s}.form-section h3{margin:0 0 20px;color:#2c3e50;font-size:18px;font-weight:600;padding-bottom:10px;border-bottom:2px solid #e9ecef;transition:color .3s ease}.form-section:hover h3{color:#3498db}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group{display:flex;flex-direction:column;gap:8px;animation:slideInUp .4s ease-out}.form-group:nth-child(1){animation-delay:.1s}.form-group:nth-child(2){animation-delay:.15s}.form-group:nth-child(3){animation-delay:.2s}.form-group:nth-child(4){animation-delay:.25s}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:14px;font-weight:600;color:#495057;transition:color .3s ease}.form-group:focus-within label{color:#3498db}.form-group input,.form-group select,.form-group textarea{padding:12px 15px;border:2px solid #e9ecef;border-radius:8px;font-size:16px;transition:all .3s ease;background:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;transform:translateY(-1px)}.form-group textarea{resize:vertical;min-height:100px}.code-input-group{display:flex;gap:10px}.code-input-group input{flex:1}.generate-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;box-shadow:0 2px 8px #27ae604d}.generate-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #27ae6066}.generate-btn:active{transform:translateY(0) scale(.95)}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:2px solid #f1f3f4}.btn-secondary{background:#6c757d;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#5a6268;transform:translateY(-2px);box-shadow:0 4px 12px #6c757d4d}.btn-primary{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #3498db4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3498db66}.btn-primary:active{transform:translateY(0) scale(.98)}@media (max-width: 1024px){.tpa-container{padding:20px}.tpa-header{flex-direction:column;gap:20px;align-items:flex-start}.tpa-filters{flex-direction:column}.list-header,.tpa-row{grid-template-columns:1fr;gap:15px}.header-cell{display:none}.tpa-cell{flex-direction:column;align-items:flex-start;gap:10px}.action-buttons{width:100%;justify-content:flex-end}.form-row{grid-template-columns:1fr}}@media (max-width: 768px){.tpa-container{padding:15px}.tpa-header h1{font-size:24px}.add-tpa-btn{padding:10px 20px;font-size:14px}.modal-content{width:95%;margin:20px}.modal-header,.tpa-form{padding:20px}.form-actions{flex-direction:column}.btn-secondary,.btn-primary{width:100%}.tpa-row{flex-direction:column;gap:1rem}.tpa-cell{width:100%}.action-buttons{justify-content:flex-start}.form-row{flex-direction:column}.form-group{width:100%}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.operations-page{max-width:1200px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.page-header{margin-bottom:30px}.page-header h1{color:#333;font-size:28px;font-weight:600;margin:0}.tabs{display:flex;border-bottom:2px solid #e1e5e9;margin-bottom:30px}.tab{padding:12px 24px;background:none;border:none;font-size:16px;font-weight:500;color:#6c757d;cursor:pointer;border-bottom:3px solid transparent;transition:all .3s ease}.tab:hover{color:#495057;background-color:#f8f9fa}.tab.active{color:#007bff;border-bottom-color:#007bff;background-color:#fff}.tab-content{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.tab-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;background-color:#f8f9fa;border-bottom:1px solid #dee2e6}.tab-header h2{margin:0;color:#333;font-size:22px;font-weight:600}.add-btn{background-color:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:5px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .3s ease}.add-btn:hover{background-color:#218838}.loading{text-align:center;padding:40px;color:#6c757d;font-size:16px}.action-buttons{display:flex;gap:8px;justify-content:center}.edit-btn,.delete-btn{background:none;border:none;font-size:16px;cursor:pointer;padding:6px 8px;border-radius:4px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:30px;height:30px}.edit-btn:hover{background-color:#e3f2fd;transform:scale(1.1)}.delete-btn:hover{background-color:#ffebee;transform:scale(1.1)}.edit-btn:active,.delete-btn:active{transform:scale(.95)}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{background-color:#f8f9fa;color:#495057;font-weight:600;padding:15px 20px;text-align:left;border-bottom:2px solid #dee2e6;white-space:nowrap}.data-table td{padding:15px 20px;border-bottom:1px solid #dee2e6;color:#333;vertical-align:top}.data-table tbody tr:hover{background-color:#f8f9fa}.data-table tbody tr:last-child td{border-bottom:none}.modal{background:#fff;border-radius:8px;box-shadow:0 10px 30px #0000004d;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #dee2e6;background-color:#f8f9fa}.modal-header h3{margin:0;color:#333;font-size:20px;font-weight:600}.close-btn{background:none;border:none;font-size:24px;color:#6c757d;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.close-btn:hover{background-color:#e9ecef;color:#495057}.modal-body{padding:30px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:500;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 15px;border:1px solid #ced4da;border-radius:5px;font-size:14px;color:#495057;background-color:#fff;transition:border-color .3s ease,box-shadow .3s ease;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-group select{cursor:pointer}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid #dee2e6}.cancel-btn{background-color:#6c757d;color:#fff;border:none;padding:12px 24px;border-radius:5px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .3s ease}.cancel-btn:hover{background-color:#5a6268}.submit-btn{background-color:#007bff;color:#fff;border:none;padding:12px 24px;border-radius:5px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .3s ease}.submit-btn:hover:not(:disabled){background-color:#0056b3}.submit-btn:disabled{background-color:#6c757d;cursor:not-allowed}@media (max-width: 768px){.operations-page{padding:15px}.tab-header{flex-direction:column;gap:15px;align-items:stretch}.tab-header h2{text-align:center}.modal{width:95%;margin:20px}.modal-body{padding:20px}.form-actions{flex-direction:column}.data-table{font-size:12px}.data-table th,.data-table td{padding:10px 15px}}@media (max-width: 480px){.tabs{flex-direction:column}.tab{text-align:center}.page-header h1{font-size:24px}.data-table th,.data-table td{padding:8px 12px}}.iol-management{min-height:100vh;background-color:#f5f5f5;padding:20px 0}.container{max-width:1200px;margin:0 auto;padding:0 20px}.page-title{text-align:center;color:#333;margin-bottom:30px;font-size:2.5rem;font-weight:600}.tab-navigation-wrapper{margin-bottom:30px;overflow-x:auto;padding:10px 0}.tab-navigation{display:flex;justify-content:flex-start;background:#fff;border-radius:10px;padding:5px;box-shadow:0 2px 10px #0000001a;min-width:max-content;margin:0 auto}.tab-button{padding:15px 20px;border:none;background:transparent;cursor:pointer;border-radius:8px;font-size:.9rem;font-weight:500;transition:all .3s ease;color:#666;white-space:nowrap;min-width:120px}.tab-button:hover{background-color:#f0f0f0;color:#333}.tab-button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea4d}.error-message{background-color:#fee;color:#c33;padding:15px;border-radius:8px;margin-bottom:20px;border:1px solid #fcc;text-align:center}.tab-content{background:#fff;border-radius:15px;padding:30px;box-shadow:0 10px 30px #0000001a;min-height:400px}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.tab-title{margin:0;color:#333;font-size:1.5rem;font-weight:600}.btn-add{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.btn-add:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.btn-add:disabled{opacity:.6;cursor:not-allowed;transform:none}.search-section{margin-bottom:25px}.search-input{width:100%;padding:15px 20px;border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;transition:border-color .3s ease}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.data-list{margin-top:20px}.list-container{border:1px solid #e0e0e0;border-radius:10px;overflow:hidden;background:#fff}.list-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #e0e0e0;font-weight:600;color:#333}.header-name{flex:1;font-size:1rem}.header-actions{width:200px;text-align:center;font-size:1rem}.list-item{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid #f0f0f0;transition:all .3s ease}.list-item:hover{background-color:#f8f9fa;transform:translate(5px)}.list-item:last-child{border-bottom:none}.item-info{flex:1}.item-name{font-size:1.1rem;font-weight:500;color:#333}.item-actions{display:flex;gap:10px;width:200px;justify-content:center}.btn-edit,.btn-delete{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .3s ease;min-width:70px}.btn-edit{background-color:#4caf50;color:#fff}.btn-edit:hover{background-color:#45a049;transform:translateY(-1px);box-shadow:0 4px 8px #4caf504d}.btn-delete{background-color:#f44336;color:#fff}.btn-delete:hover{background-color:#da190b;transform:translateY(-1px);box-shadow:0 4px 8px #f443364d}.btn-edit:disabled,.btn-delete:disabled{opacity:.6;cursor:not-allowed;transform:none}.loading,.no-data{text-align:center;padding:50px;color:#666;font-size:1.1rem}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease}.modal-content{background:#fff;border-radius:15px;padding:0;width:90%;max-width:500px;box-shadow:0 20px 60px #0000004d;animation:slideIn .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px 20px;border-bottom:1px solid #e0e0e0}.modal-title{margin:0;color:#333;font-size:1.3rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.8rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.modal-close:hover{background-color:#f0f0f0;color:#333}.modal-form{padding:30px}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:1rem}.form-group input{width:100%;padding:12px 15px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .3s ease;background-color:#fff;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input::placeholder{color:#999}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px}.btn-primary,.btn-secondary{padding:12px 24px;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:120px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.btn-secondary{background-color:#f8f9fa;color:#666;border:2px solid #e0e0e0}.btn-secondary:hover{background-color:#e9ecef;color:#333;transform:translateY(-1px)}@keyframes slideIn{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.container{padding:0 15px}.page-title{font-size:2rem;margin-bottom:20px}.tab-content{padding:20px}.tab-header{flex-direction:column;align-items:stretch;gap:15px}.btn-add{align-self:flex-start}.list-header,.list-item{padding:15px}.header-actions,.item-actions{width:160px}.btn-edit,.btn-delete{padding:6px 12px;font-size:.8rem;min-width:60px}.modal-content{margin:20px;width:calc(100% - 40px)}.modal-header,.modal-form{padding:20px}.form-actions{flex-direction:column;gap:10px}.btn-primary,.btn-secondary{width:100%;min-width:auto}}@media (max-width: 480px){.iol-management{padding:10px 0}.tab-navigation-wrapper{margin:0 10px 20px}.tab-button{padding:10px 15px;font-size:.8rem;min-width:100px}.search-input{padding:12px 15px}.list-item{flex-direction:column;align-items:stretch;gap:15px;padding:20px 15px}.item-actions{width:100%;justify-content:flex-end}.list-header{display:none}}.tab-button:focus,.btn-edit:focus,.btn-delete:focus,.btn-primary:focus,.btn-secondary:focus,.btn-add:focus{outline:2px solid #667eea;outline-offset:2px}*{box-sizing:border-box;margin:0;padding:0}.optical-store{font-family:Arial,sans-serif;padding:20px;background-color:#f5f5f5;min-height:100vh}.header{background-color:#fff;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.header-content{display:flex;justify-content:space-between;align-items:center}.header-title{margin:0;color:#333;font-size:24px}.btn{border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:16px;font-weight:700;transition:background-color .2s ease}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#218838}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62}.btn-info{background-color:#17a2b8;color:#fff}.btn-info:hover{background-color:#138496}.btn-disabled{background-color:#6c757d;color:#fff;cursor:not-allowed}.btn-disabled:hover{background-color:#6c757d}.purchase-btn{font-size:16px;font-weight:700}.main-content{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.filter-section{margin-bottom:20px;display:flex;align-items:center;gap:15px}.filter-group{display:flex;align-items:center}.filter-label{margin-right:8px;font-weight:700}.filter-select{padding:8px;border-radius:4px;border:1px solid #ddd}.search-btn{padding:8px 16px;font-size:14px}.inventory-table{width:100%;border-collapse:collapse;background-color:#fff}.inventory-table thead tr{background-color:#f8f9fa}.inventory-table th,.inventory-table td{padding:12px;text-align:left;border-bottom:1px solid #dee2e6}.inventory-table th{border-bottom:2px solid #dee2e6;font-weight:700}.inventory-table tbody tr:hover{background-color:#f8f9fa}.status-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:700}.status-available{background-color:#d4edda;color:#155724}.status-unavailable{background-color:#f8d7da;color:#721c24}.qty-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:700}.qty-high{background-color:#d4edda;color:#155724}.qty-low{background-color:#fff3cd;color:#856404}.action-btn{background:none;border:none;font-size:18px;cursor:pointer;padding:4px 8px}.action-btn:hover{background-color:#f8f9fa;border-radius:4px}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background-color:#fff;border-radius:8px;width:90%;max-width:800px;max-height:80vh;overflow:auto}.modal-header{padding:20px;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.close-btn:hover{background-color:#f8f9fa;border-radius:50%}.modal-body{padding:20px}.modal-footer{padding:20px;border-top:1px solid #dee2e6;display:flex;justify-content:space-between}.available-products-section{margin-bottom:20px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.section-header h3{margin:0}.select-all-btn{padding:8px 16px;font-size:14px}.products-list{max-height:300px;overflow-y:auto;border:1px solid #dee2e6;border-radius:4px}.product-item{padding:15px;border-bottom:1px solid #dee2e6;display:flex;align-items:center;background-color:#fff;transition:background-color .2s ease}.product-item:last-child{border-bottom:none}.product-item.selected,.product-item:hover{background-color:#f8f9fa}.product-checkbox{margin-right:15px;transform:scale(1.2)}.product-info{flex:1}.product-name{font-weight:700;margin-bottom:5px}.product-details{color:#666;font-size:14px}.quantity-selector{display:flex;align-items:center;gap:10px}.qty-label{font-size:14px}.qty-input{width:60px;padding:4px;border:1px solid #ddd;border-radius:4px;text-align:center}.subtotal{font-size:14px;color:#666;font-weight:700}.add-form-section{background-color:#f8f9fa;padding:20px;border-radius:6px;margin-bottom:20px;border:1px solid #dee2e6}.add-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.add-form-header h3{margin:0}.form-controls{display:flex;gap:10px}.add-row-btn{padding:8px 12px;font-size:16px}.new-products-container{max-height:400px;overflow-y:auto}.new-product-form{background-color:#fff;padding:15px;margin-bottom:15px;border-radius:6px;border:1px solid #dee2e6}.product-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.product-form-header h4{margin:0;color:#495057}.remove-btn{padding:4px 8px;font-size:12px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.form-group{display:flex;flex-direction:column}.form-label{display:block;margin-bottom:5px;font-size:12px;font-weight:700}.form-input{width:100%;padding:6px;border:1px solid #ddd;border-radius:4px;font-size:12px}.form-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.form-actions{text-align:right;margin-top:15px}.save-all-btn{padding:10px 20px;font-weight:700}.purchase-summary{background-color:#f8f9fa;padding:20px;border-radius:6px;margin-bottom:20px}.purchase-summary h3{margin:0 0 15px}.summary-items{margin-bottom:15px}.summary-item{display:flex;justify-content:space-between;margin-bottom:8px;padding:8px;background-color:#fff;border-radius:4px}.item-total{font-weight:700}.summary-totals{border-top:2px solid #dee2e6;padding-top:10px}.total-row{display:flex;justify-content:space-between;margin-bottom:5px}.total-value{font-weight:700}.final-total{font-size:18px}.total-amount{font-weight:700;color:#28a745}.toggle-form-btn,.complete-purchase-btn{padding:10px 20px}@media (max-width: 768px){.optical-store{padding:10px}.header-content{flex-direction:column;gap:15px;text-align:center}.header-title{font-size:20px}.filter-section{flex-direction:column;align-items:flex-start;gap:10px}.modal{width:95%;margin:10px}.modal-footer{flex-direction:column;gap:10px}.section-header{flex-direction:column;gap:10px;align-items:flex-start}.product-item{flex-direction:column;align-items:flex-start;gap:10px}.quantity-selector{width:100%;justify-content:flex-end}.form-grid{grid-template-columns:1fr}.add-form-header{flex-direction:column;gap:10px;align-items:flex-start}.form-controls{width:100%;justify-content:flex-start}}@media (max-width: 480px){.header-title{font-size:18px}.btn{padding:10px 16px;font-size:14px}.inventory-table{font-size:12px}.inventory-table th,.inventory-table td{padding:8px 4px}.modal-header,.modal-body,.modal-footer{padding:15px}.new-product-form{padding:10px}.purchase-summary{padding:15px}}.optical-store-wrapper{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#e2e8f0);font-family:Inter,system-ui,-apple-system,sans-serif}.optical-nav-bar{background:#fff;padding:1rem 2rem;box-shadow:0 2px 8px #0000001a;border-bottom:1px solid #e2e8f0}.nav-tabs{display:flex;gap:1rem;max-width:1200px;margin:0 auto}.nav-tab{padding:.75rem 1.5rem;background:transparent;border:2px solid transparent;border-radius:12px;cursor:pointer;font-weight:600;font-size:.9rem;transition:all .2s ease;color:#64748b}.nav-tab:hover{background:#f1f5f9;color:#475569;border-color:#cbd5e1}.nav-tab.active{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border-color:#1d4ed8;box-shadow:0 4px 12px #3b82f64d}.optical-main-content{max-width:1400px;margin:0 auto;padding:2rem}.tab-content{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 16px #0000000d;border:1px solid #e2e8f0}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #f1f5f9}.tab-header h2{color:#1e293b;font-size:1.75rem;font-weight:700;margin:0}.add-btn-primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:.875rem 2rem;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s ease;box-shadow:0 4px 12px #10b9814d}.add-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.products-summary{display:flex;gap:2rem;margin-bottom:1rem}.summary-item{padding:1rem;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:10px;color:#1e40af;font-size:.9rem}.data-table-container,.batch-table-container,.bad-stock-table-container{overflow-x:auto;overflow-y:auto;max-width:100%;max-height:70vh;position:relative;border-radius:12px;box-shadow:0 4px 16px #0000001a;background:#fff;border:1px solid #e2e8f0}.data-table,.batch-table,.bad-stock-table{min-width:1200px;width:100%;border-collapse:separate;border-spacing:0;table-layout:auto}.data-table th,.data-table td,.batch-table th,.batch-table td,.bad-stock-table th,.bad-stock-table td{padding:.875rem .75rem;text-align:left;border-bottom:1px solid #f1f5f9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:120px;position:relative}.data-table th,.batch-table th,.bad-stock-table th{background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:#374151;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:5;border-bottom:2px solid #e2e8f0}.data-table td,.batch-table td,.bad-stock-table td{color:#4b5563;font-size:.9rem}.data-table th:first-child,.data-table td:first-child,.batch-table th:first-child,.batch-table td:first-child{position:sticky;left:0;background:#fff;z-index:10;box-shadow:2px 0 4px #0000001a}.data-table th:first-child,.batch-table th:first-child{background:linear-gradient(135deg,#f8fafc,#f1f5f9);z-index:15}.data-table-container::-webkit-scrollbar,.batch-table-container::-webkit-scrollbar,.bad-stock-table-container::-webkit-scrollbar{height:12px;width:12px}.data-table-container::-webkit-scrollbar-track,.batch-table-container::-webkit-scrollbar-track,.bad-stock-table-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:6px}.data-table-container::-webkit-scrollbar-thumb,.batch-table-container::-webkit-scrollbar-thumb,.bad-stock-table-container::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:6px;cursor:pointer}.data-table-container::-webkit-scrollbar-thumb:hover,.batch-table-container::-webkit-scrollbar-thumb:hover,.bad-stock-table-container::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af)}.table-scroll-hint{position:sticky;top:0;left:0;background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;padding:.5rem 1rem;font-size:.85rem;font-weight:500;text-align:center;border-bottom:2px solid #93c5fd;z-index:20;margin-bottom:0}.data-table th:nth-child(1),.data-table td:nth-child(1){min-width:120px}.data-table th:nth-child(2),.data-table td:nth-child(2){min-width:120px}.data-table th:nth-child(3),.data-table td:nth-child(3){min-width:100px}.data-table th:nth-child(4),.data-table td:nth-child(4){min-width:180px}.data-table th:nth-child(5),.data-table td:nth-child(5){min-width:140px}.data-table th:nth-child(6),.data-table td:nth-child(6){min-width:100px}.data-table th:nth-child(7),.data-table td:nth-child(7){min-width:120px}.data-table th:nth-child(8),.data-table td:nth-child(8){min-width:100px}.data-table th:nth-child(9),.data-table td:nth-child(9){min-width:90px}.data-table th:nth-child(10),.data-table td:nth-child(10){min-width:100px}.data-table th:nth-child(11),.data-table td:nth-child(11){min-width:80px}.data-table th:nth-child(12),.data-table td:nth-child(12){min-width:120px}.data-table th:nth-child(13),.data-table td:nth-child(13){min-width:70px}.data-table th:nth-child(14),.data-table td:nth-child(14){min-width:140px}.data-table th:nth-child(15),.data-table td:nth-child(15){min-width:100px}.data-table th:nth-child(16),.data-table td:nth-child(16){min-width:90px}.batch-table th:nth-child(1),.batch-table td:nth-child(1){min-width:120px}.batch-table th:nth-child(2),.batch-table td:nth-child(2){min-width:100px}.batch-table th:nth-child(3),.batch-table td:nth-child(3){min-width:100px}.batch-table th:nth-child(4),.batch-table td:nth-child(4){min-width:120px}.batch-table th:nth-child(5),.batch-table td:nth-child(5){min-width:120px}.batch-table th:nth-child(12),.batch-table td:nth-child(12){min-width:120px}.low-stock,.low-stock-text{color:#dc2626;font-weight:600}.error-message{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#991b1b;padding:1rem;border-radius:8px;border:1px solid #fca5a5;margin-bottom:1rem;font-weight:500}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#fffc;display:flex;align-items:center;justify-content:center;z-index:9999;font-size:1.2rem;font-weight:600;color:#3b82f6}.products-container{margin-top:1rem}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:2rem}.product-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 16px #00000014;border:1px solid #e2e8f0;transition:all .3s ease}.product-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.product-card-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #f1f5f9}.product-name{color:#1e293b;font-size:1.25rem;font-weight:700;margin:0 0 .5rem}.product-category{background:linear-gradient(135deg,#ddd6fe,#c4b5fd);color:#5b21b6;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.product-details{display:flex;flex-direction:column;gap:1rem}.product-code-section{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:.75rem;border-radius:8px}.product-code{font-weight:600;color:#374151;font-size:.9rem}.product-company{color:#6b7280;font-size:.85rem}.price-info{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.price-item{display:flex;flex-direction:column;gap:.25rem}.price-label{color:#6b7280;font-size:.8rem;font-weight:500}.price-value{color:#1e293b;font-size:1.1rem;font-weight:700}.price-value.sale-price{color:#059669}.stock-info{padding:.75rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-radius:8px}.stock-item{display:flex;justify-content:space-between;align-items:center}.stock-label{color:#065f46;font-weight:500;font-size:.9rem}.stock-value{color:#047857;font-weight:700}.additional-info{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{color:#6b7280;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.info-value{color:#374151;font-size:.85rem;font-weight:500}.purchase-history{text-align:center;padding:.5rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:6px;margin-top:.5rem}.history-label{color:#92400e;font-size:.8rem;font-weight:600}.product-actions{display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #f1f5f9}.btn-view-details{flex:1;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;padding:.75rem;border-radius:8px;cursor:pointer;font-weight:600;font-size:.85rem;transition:all .2s ease}.btn-view-details:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.btn-bad-stock{flex:1;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;padding:.75rem;border-radius:8px;cursor:pointer;font-weight:600;font-size:.85rem;transition:all .2s ease}.btn-bad-stock:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.btn-bad-stock-small{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;padding:.5rem;border-radius:6px;cursor:pointer;font-size:1rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-bad-stock-small:hover{transform:scale(1.1);box-shadow:0 2px 8px #ef444466}.barcode-section{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:8px;border:1px solid #e2e8f0}.barcode-label{color:#374151;font-size:.8rem;font-weight:600}.barcode-image{max-width:200px;max-height:80px;border:1px solid #cbd5e1;border-radius:4px;padding:.25rem;background:#fff}.barcode-image-large{max-width:300px;max-height:120px;border:1px solid #cbd5e1;border-radius:8px;padding:.5rem;background:#fff}.barcode-image-small{max-width:100px;max-height:40px;border:1px solid #cbd5e1;border-radius:4px;padding:.25rem;background:#fff}.barcode-download-section{display:flex;justify-content:center;margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#3b82f60d,#1d4ed805);border-radius:12px;border:1px solid rgba(59,130,246,.2)}.btn-download-barcode{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:10px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px #dc26264d;display:flex;align-items:center;gap:.5rem}.btn-download-barcode:hover{transform:translateY(-1px);box-shadow:0 4px 12px #dc262666}.btn-download-small{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;border:none;padding:.5rem;border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:32px;height:32px}.btn-download-small:hover{transform:scale(1.1);box-shadow:0 2px 8px #dc262666}.barcode-actions{display:flex;gap:1rem;justify-content:center;margin-top:1rem;flex-wrap:wrap}.barcode-action-buttons{display:flex;gap:.5rem;align-items:center;justify-content:center}.btn-view-barcode{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:10px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px #10b9814d;display:flex;align-items:center;gap:.5rem}.btn-view-barcode:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.btn-barcode-small{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;padding:.5rem;border-radius:8px;cursor:pointer;font-size:1rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:40px;height:32px}.btn-barcode-small:hover{transform:scale(1.1);box-shadow:0 2px 8px #3b82f666}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:800px;max-height:90vh;width:90%;overflow:hidden;border:1px solid #e2e8f0}.details-modal{max-width:min(95vw,1400px);max-height:95vh}.barcode-modal{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.modal-header h3{margin:0;color:#1e293b;font-size:1.5rem;font-weight:700}.modal-close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:.25rem;border-radius:4px;transition:all .2s ease}.modal-close-btn:hover{background:#f3f4f6;color:#374151}.modal-body{padding:2rem;max-height:70vh;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;border-top:1px solid #e2e8f0;background:#f8fafc}.btn-cancel{background:#6b7280;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s ease}.btn-cancel:hover{background:#4b5563}.btn-submit{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px #10b9814d}.btn-submit:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.product-details-content{display:flex;flex-direction:column;gap:2rem}.details-summary{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:1.5rem;border-radius:12px;border:1px solid #e2e8f0}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.detail-item{display:flex;flex-direction:column;gap:.5rem}.detail-item label{color:#6b7280;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.detail-item span{color:#1e293b;font-size:1rem;font-weight:500}.main-barcode-section{margin-top:1rem;padding:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;text-align:center}.main-barcode-section h5{margin:0 0 1rem;color:#1e293b;font-weight:600}.batch-details{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden}.batch-details h4{margin:0;padding:1rem 1.5rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:#1e293b;font-weight:700;border-bottom:1px solid #e2e8f0}.bad-stock-details{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden}.bad-stock-details h4{margin:0;padding:1rem 1.5rem;background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#991b1b;font-weight:700;border-bottom:1px solid #fecaca}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600}.bad-stock-badge{background:#fee2e2;color:#991b1b}.no-data{text-align:center;color:#6b7280;font-style:italic;padding:2rem}.no-barcode{color:#9ca3af;font-size:.8rem;font-style:italic}.no-products{text-align:center;padding:3rem;color:#6b7280;font-size:1.1rem}.barcode-display-container{display:flex;flex-direction:column;gap:2rem;align-items:center}.barcode-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;width:100%;margin-bottom:2rem}.barcode-detail{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:10px;border:1px solid #e2e8f0}.barcode-detail label{font-weight:600;color:#64748b;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.barcode-detail span{font-weight:500;color:#1e293b;font-size:1rem}.barcode-image-container{display:flex;flex-direction:column;align-items:center;padding:2rem;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 16px #0000001a}.barcode-image-display{max-width:400px;max-height:200px;width:auto;height:auto;border:1px solid #cbd5e1;border-radius:8px;padding:1rem;background:#fff}.barcode-error{color:#dc2626;font-style:italic;padding:2rem;text-align:center;background:linear-gradient(135deg,#fee2e2,#fecaca);border-radius:8px;border:1px solid #fca5a5}.purchase-form-container{display:flex;flex-direction:column;gap:2rem}.purchase-header-card,.purchase-totals-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:1.5rem;border-radius:12px;border:1px solid #e2e8f0}.purchase-header-card h4,.purchase-totals-card h4{margin:0 0 1rem;color:#1e293b;font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{color:#374151;font-weight:600;font-size:.9rem}.form-field input,.form-field select,.form-field textarea{padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;transition:all .2s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.calculated-field{background:#f9fafb;color:#6b7280;cursor:not-allowed}.totals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.total-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.total-item.total-final{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-weight:700}.products-section{background:#fff;border-radius:12px;border:1px solid #e2e8f0}.products-section h4{margin:0;padding:1rem 1.5rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:#1e293b;font-weight:700;border-bottom:1px solid #e2e8f0}.purchase-item-card{margin:1.5rem;padding:1.5rem;background:#fafbfb;border-radius:12px;border:1px solid #e2e8f0}.item-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.item-card-header h5{margin:0;color:#1e293b;font-weight:600}.remove-item-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s ease}.remove-item-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #ef444466}.add-another-item-btn{width:100%;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;padding:1rem;margin:1.5rem;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px #6366f14d}.add-another-item-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f166}.simple-form{padding:2rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;border:1px solid #e2e8f0}.bad-stock-form{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:1.5rem;border-radius:12px;border:1px solid #e2e8f0}@media (max-width: 768px){.optical-main-content{padding:1rem}.nav-tabs{gap:.5rem;padding:0 1rem}.nav-tab{padding:.5rem 1rem;font-size:.8rem}.products-grid{grid-template-columns:1fr}.data-table,.batch-table{min-width:900px;font-size:.8rem}.data-table th,.data-table td,.batch-table th,.batch-table td{padding:.5rem .25rem;min-width:80px}.table-scroll-hint{font-size:.75rem;padding:.25rem .5rem}.form-grid{grid-template-columns:1fr}.modal-container{width:95%;margin:1rem}}@media (max-width: 480px){.data-table,.batch-table{min-width:700px;font-size:.75rem}.data-table th,.data-table td,.batch-table th,.batch-table td{padding:.4rem .2rem;min-width:70px}.tab-header{flex-direction:column;gap:1rem;align-items:stretch}.add-btn-primary{padding:.75rem 1.5rem}}Investigation Lab Container .investigation-lab-container{max-width:1400px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.controls-section{background:#f8f9fa;padding:15px;border-radius:8px;margin-bottom:20px;display:flex;flex-direction:column;gap:15px;box-shadow:0 1px 3px #0000001a}.date-control{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.date-control label{font-weight:500;color:#374151;min-width:fit-content}.date-control input[type=date]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;transition:border-color .2s}.date-control input[type=date]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.today-btn{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.today-btn:hover{background:#2563eb}.filter-controls{display:flex;gap:15px;flex-wrap:wrap}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{margin:0;cursor:pointer}.results-summary{padding:10px;background:#fff;border-left:4px solid #3b82f6;border-radius:4px;font-size:14px}.filter-indicator{color:#059669;font-weight:500}.tab-header{display:flex;gap:0;margin-bottom:20px;border-bottom:1px solid #e5e7eb}.tab-button{padding:12px 20px;border:none;background:transparent;cursor:pointer;font-size:14px;font-weight:500;color:#6b7280;border-bottom:2px solid transparent;transition:all .2s}.tab-button:hover{color:#374151;background:#f9fafb}.tab-button.active{color:#3b82f6;border-bottom-color:#3b82f6;background:#f8fafc}.tab-content{min-height:400px}.investigation-tab h2,.lab-tab h2{margin:0 0 20px;color:#111827;font-size:24px;font-weight:600}.cases-list{display:flex;flex-direction:column;gap:20px}.case-group-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;box-shadow:0 2px 4px #0000000d;transition:all .2s}.case-group-item:hover{box-shadow:0 4px 6px -1px #0000001a;border-color:#d1d5db}.case-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;gap:15px}.case-info{flex:1}.case-id{margin:0 0 8px;font-size:20px;font-weight:700;color:#111827}.case-details{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.case-actions{display:flex;gap:10px}.create-billing-btn{padding:10px 20px;background:#10b981;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s;white-space:nowrap}.create-billing-btn:hover{background:#059669}.reports-under-case{margin-top:15px;padding-top:15px;border-top:1px solid #f3f4f6}.reports-under-case h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#374151}.reports-list-compact{display:flex;flex-direction:column;gap:10px}.report-compact-item{background:#f9fafb;padding:12px;border-radius:8px;border:1px solid #e5e7eb;transition:background-color .2s}.report-compact-item:hover{background:#f3f4f6}.report-compact-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.report-name{font-weight:600;color:#111827;flex:1}.report-badges{display:flex;gap:6px;align-items:center}.billed-badge{background:#10b981;color:#fff;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:500}.report-charge{font-weight:600;color:#059669}.tax-info{font-size:12px;color:#6b7280;font-weight:400}.report-parameters-compact,.report-files-compact{font-size:12px;color:#6b7280;margin-top:4px}.report-actions{margin-top:8px;display:flex;gap:8px}.add-report-btn{padding:6px 12px;background:#3b82f6;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;transition:background-color .2s}.add-report-btn:hover{background:#2563eb}.outside-hospital-badge{background:#fef3c7;color:#92400e;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;white-space:nowrap}.status-badge-small{padding:4px 8px;border-radius:4px;color:#fff;font-size:12px;font-weight:500;white-space:nowrap}.appointment-status{border:1px solid rgba(255,255,255,.3)}.detail-chip{background:#f3f4f6;padding:4px 8px;border-radius:4px;font-size:12px;color:#374151;border:1px solid #e5e7eb;white-space:nowrap}.doctor-chip{background:#dbeafe;color:#1e40af;border-color:#93c5fd}.date-chip{background:#f3e8ff;color:#7c3aed;border-color:#c4b5fd}.appointment-details{background:#eff6ff;padding:12px;border-radius:6px;border-left:3px solid #3b82f6;margin-top:15px}.appointment-details h5{margin:0 0 8px;font-size:14px;color:#1e40af;font-weight:600}.appointment-info{display:flex;flex-wrap:wrap;gap:8px}.appt-detail{background:#fff;padding:4px 8px;border-radius:4px;font-size:12px;color:#374151;border:1px solid #e5e7eb;white-space:nowrap}.billing-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.billing-modal{background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.billing-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e5e7eb}.billing-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.close-modal-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.close-modal-btn:hover{background:#f3f4f6;color:#374151}.billing-modal-content{padding:20px}.report-selection-section{background:#f9fafb;padding:16px;border-radius:8px;margin-bottom:20px}.report-selection-section h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#374151}.report-selection-list{display:flex;flex-direction:column;gap:8px}.report-selection-item{background:#fff;border-radius:6px;border:1px solid #e5e7eb}.report-checkbox-label{display:flex;align-items:center;gap:12px;padding:12px;cursor:pointer;transition:background-color .2s}.report-checkbox-label:hover{background:#f9fafb}.report-selection-info{display:flex;justify-content:space-between;align-items:center;flex:1}.report-selection-name{font-weight:500;color:#111827}.report-selection-charge{font-weight:600;color:#059669}.already-billed{background:#10b981;color:#fff;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.billing-form{display:flex;flex-direction:column;gap:16px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:#374151}.form-group input,.form-group textarea,.form-group select{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.readonly-field{background:#f9fafb;color:#6b7280}.billing-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px;border-top:1px solid #e5e7eb}.cancel-btn{padding:10px 20px;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.cancel-btn:hover{background:#e5e7eb}.submit-billing-btn{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.submit-billing-btn:hover:not(:disabled){background:#2563eb}.submit-billing-btn:disabled{background:#9ca3af;cursor:not-allowed}.report-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1001;padding:20px}.report-modal{background:#fff;border-radius:12px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.report-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e5e7eb}.report-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.report-modal-content{padding:20px}.file-upload-container{display:flex;align-items:center;gap:8px;background:#f7fafc;border-radius:6px;padding:6px 8px;border:1px solid #e7edf8}.file-label{background:#e9edf5;color:#24446d;border-radius:5px;padding:4px 13px;cursor:pointer;font-size:14px;border:1px solid #24446d21;transition:background .15s}.file-label:hover{background:#d1e1fb}.uploaded-files{margin-top:10px}.uploaded-files h6{margin:0 0 8px;font-size:14px;font-weight:600;color:#374151}.uploaded-file-item{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;background:#f3f4f6;border-radius:4px;margin-bottom:4px}.file-link{color:#3b82f6;text-decoration:none;font-size:14px}.file-link:hover{text-decoration:underline}.file-delete-btn{background:#ef4444;color:#fff;border:none;border-radius:4px;padding:2px 6px;cursor:pointer;font-size:12px}.file-delete-btn:hover{background:#dc2626}.parameters-section{background:#f9fafb;padding:16px;border-radius:8px;margin-top:16px}.parameters-section h5{margin:0 0 12px;font-size:16px;font-weight:600;color:#374151}.add-param-btn{background:#3b82f6;color:#fff;border:none;border-radius:6px;padding:8px 16px;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:12px}.add-param-btn:hover{background:#2563eb}.parameter-row{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr 1.5fr 60px;gap:8px;margin-bottom:8px;align-items:center}.parameter-row input{padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:13px}.delete-param-btn{background:#ef4444;color:#fff;border:none;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:14px;font-weight:700}.delete-param-btn:hover{background:#dc2626}.report-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px;border-top:1px solid #e5e7eb}.submit-report-btn{padding:10px 20px;background:#10b981;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.submit-report-btn:hover:not(:disabled){background:#059669}.submit-report-btn:disabled{background:#9ca3af;cursor:not-allowed}.loading{text-align:center;padding:40px;font-size:16px;color:#6b7280;background:#f9fafb;border-radius:8px;margin:20px 0}.error{text-align:center;padding:20px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:20px 0}.error p{color:#dc2626;margin:0 0 15px;font-size:16px}.retry-btn{padding:10px 20px;background:#dc2626;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.retry-btn:hover{background:#b91c1c}.no-data{text-align:center;padding:40px 20px;color:#6b7280;font-size:16px;background:#f9fafb;border-radius:8px;border:2px dashed #d1d5db}.debug-section{margin-top:20px;padding:15px;background:#f0f0f0;border-radius:6px;border-left:4px solid #6b7280}.debug-section h4{margin:0 0 10px;color:#374151;font-size:14px}.debug-section p{margin:5px 0;font-size:12px;color:#4b5563}@media (max-width: 768px){.investigation-lab-container{padding:15px}.controls-section{padding:12px}.date-control{flex-direction:column;align-items:flex-start;gap:8px}.case-header{flex-direction:column;align-items:flex-start;gap:12px}.case-details{flex-direction:column;align-items:flex-start;gap:6px}.case-actions,.create-billing-btn{width:100%}.report-compact-header{flex-direction:column;align-items:flex-start;gap:8px}.billing-modal,.report-modal{margin:10px;max-height:calc(100vh - 20px)}.form-row{grid-template-columns:1fr}.parameter-row{grid-template-columns:1fr;gap:4px}.billing-modal-footer,.report-modal-footer{flex-direction:column;gap:8px}}@media print{.controls-section,.tab-header,.debug-section,.case-actions,.billing-modal-overlay,.report-modal-overlay{display:none}.investigation-lab-container{max-width:none;padding:0}.case-group-item{break-inside:avoid;border:1px solid #000;margin-bottom:15px}}.scan-container{padding:20px;max-width:1200px;margin:0 auto}.scan-header{text-align:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.scan-header h1{margin:0 0 10px;font-size:2.5rem;font-weight:700}.scan-header p{margin:0;font-size:1.1rem;opacity:.9}.scan-content{display:grid;gap:20px}.scan-card{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 20px #0000001a;border:1px solid #e1e5e9}.scan-card h2{color:#2d3748;margin-bottom:20px;font-size:1.8rem}.scan-card p{color:#4a5568;margin-bottom:20px;line-height:1.6}.scan-card ul{color:#4a5568;line-height:1.8}.scan-card li{margin-bottom:8px;padding-left:10px}.test-scan-manager{padding:20px;background-color:#f5f7fa;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#333}.test-scan-manager *{box-sizing:border-box}.test-scan-manager .page-header{margin-bottom:25px}.test-scan-manager .page-header h1{color:#333;font-size:28px;font-weight:600;margin:0;padding:0}.test-scan-manager .error-message{background:#fff;border-radius:8px;padding:40px;text-align:center;box-shadow:0 2px 10px #0000001a;border-left:4px solid #e74c3c}.test-scan-manager .error-banner{background:#ffebee;color:#c62828;padding:12px 20px;border-radius:4px;margin-bottom:20px;border-left:4px solid #e57373;font-weight:500}.test-scan-manager .tabs-container{display:flex;background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;overflow:hidden;min-height:600px}.test-scan-manager .tabs-nav{width:200px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;padding:0}.test-scan-manager .tab-btn{width:100%;padding:18px 24px;border:none;background:transparent;color:#fffc;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:left;border-bottom:1px solid rgba(255,255,255,.1)}.test-scan-manager .tab-btn:last-child{border-bottom:none}.test-scan-manager .tab-btn:hover{background:#ffffff1a;color:#fff}.test-scan-manager .tab-btn.active{background:#fff3;color:#fff;font-weight:600}.test-scan-manager .tab-content-container{flex:1;background:#fff;position:relative}.test-scan-manager .tab-content{padding:0;height:100%}.test-scan-manager .tab-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;background:#fff;border-bottom:1px solid #e9ecef}.test-scan-manager .tab-header h2{color:#333;font-size:22px;font-weight:600;margin:0}.test-scan-manager .create-btn{background:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease;text-transform:uppercase;letter-spacing:.5px}.test-scan-manager .create-btn:hover{background:#218838}.test-scan-manager .loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#6c757d;font-size:16px}.test-scan-manager .data-table{background:#fff;border-radius:0;overflow:hidden;box-shadow:none}.test-scan-manager .table-header{display:grid;grid-template-columns:repeat(3,1fr);background:#6c757d;padding:15px 25px;font-weight:600;color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.test-scan-manager .table-header.template-header{grid-template-columns:.8fr 1.2fr .8fr 1fr 1fr .8fr .8fr .8fr 1fr 1fr;font-size:12px}.test-scan-manager .table-row{display:grid;grid-template-columns:repeat(3,1fr);padding:15px 25px;border-bottom:1px solid #e9ecef;align-items:center;background:#fff;font-size:14px;color:#495057}.test-scan-manager .table-row:hover{background-color:#f8f9fa}.test-scan-manager .table-row.template-row{grid-template-columns:.8fr 1.2fr .8fr 1fr 1fr .8fr .8fr .8fr 1fr 1fr;font-size:13px}.test-scan-manager .actions{display:flex;gap:10px;justify-content:flex-end;align-items:center}.test-scan-manager .edit-btn{background:transparent;color:#007bff;border:none;padding:5px 10px;font-size:12px;font-weight:500;cursor:pointer;text-decoration:none;transition:color .2s ease}.test-scan-manager .edit-btn:hover{color:#0056b3;text-decoration:underline}.test-scan-manager .delete-btn{background:transparent;color:#dc3545;border:none;padding:5px 10px;font-size:12px;font-weight:500;cursor:pointer;text-decoration:none;transition:color .2s ease}.test-scan-manager .delete-btn:hover{color:#c82333;text-decoration:underline}.test-scan-manager .records-count{padding:12px 25px;background:#f8f9fa;font-size:13px;color:#6c757d;border-top:1px solid #e9ecef}.test-scan-manager .no-data{text-align:center;padding:40px 20px;color:#6c757d;font-size:14px;background:#fff}.test-scan-manager .description-cell{color:#495057;font-size:14px}.test-scan-manager .parameters-cell{color:#6c757d;font-size:13px}.test-scan-manager .templates-cell{display:flex;flex-wrap:wrap;gap:4px}.test-scan-manager .template-tag{background:#e3f2fd;color:#1976d2;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.test-scan-manager .modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.test-scan-manager .modal-content{background:#fff;border-radius:8px;width:90%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.test-scan-manager .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #e9ecef;background:#f8f9fa}.test-scan-manager .modal-header h3{margin:0;font-size:18px;font-weight:600;color:#333}.test-scan-manager .close-btn{background:none;border:none;color:#6c757d;font-size:20px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.test-scan-manager .close-btn:hover{color:#495057}.test-scan-manager .form-content{padding:25px}.test-scan-manager .form-group{margin-bottom:20px}.test-scan-manager .form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.test-scan-manager .form-group label{display:block;margin-bottom:5px;font-weight:500;color:#333;font-size:14px}.test-scan-manager .form-group input,.test-scan-manager .form-group select,.test-scan-manager .form-group textarea{width:100%;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .2s ease}.test-scan-manager .form-group input:focus,.test-scan-manager .form-group select:focus,.test-scan-manager .form-group textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.test-scan-manager .form-group textarea{min-height:80px;resize:vertical}.test-scan-manager .form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:25px;padding-top:20px;border-top:1px solid #e9ecef}.test-scan-manager .cancel-btn{background:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.test-scan-manager .cancel-btn:hover{background:#5a6268}.test-scan-manager .submit-btn{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.test-scan-manager .submit-btn:hover:not(:disabled){background:#0056b3}.test-scan-manager .submit-btn:disabled{background:#6c757d;cursor:not-allowed}.testscan-success-message{position:fixed;top:20px;right:20px;background:#28a745;color:#fff;padding:15px 20px;border-radius:4px;z-index:10000;font-weight:500;box-shadow:0 4px 15px #0003}@media (max-width: 1024px){.test-scan-manager .table-header.template-header,.test-scan-manager .table-row.template-row{grid-template-columns:.7fr 1fr .7fr .8fr .8fr .7fr .7fr .7fr .8fr .8fr;font-size:11px}.test-scan-manager .form-row{grid-template-columns:1fr}}@media (max-width: 768px){.test-scan-manager{padding:15px}.test-scan-manager .tabs-container{flex-direction:column}.test-scan-manager .tabs-nav{width:100%;display:grid;grid-template-columns:repeat(4,1fr);flex-direction:row}.test-scan-manager .tab-btn{padding:12px 8px;text-align:center;border-bottom:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.1);font-size:12px}.test-scan-manager .tab-btn:last-child{border-right:none}.test-scan-manager .tab-header{flex-direction:column;align-items:stretch;gap:15px;padding:15px 20px}.test-scan-manager .table-header,.test-scan-manager .table-row{font-size:12px;padding:12px 20px}.test-scan-manager .table-header.template-header,.test-scan-manager .table-row.template-row{display:block;padding:15px 20px}.test-scan-manager .table-header.template-header>div,.test-scan-manager .table-row.template-row>div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e9ecef}.test-scan-manager .table-header.template-header>div:last-child,.test-scan-manager .table-row.template-row>div:last-child{border-bottom:none}.test-scan-manager .actions{justify-content:flex-start;margin-top:10px}}@media (max-width: 480px){.test-scan-manager .tabs-nav{grid-template-columns:1fr;grid-template-rows:repeat(4,1fr)}.test-scan-manager .tab-btn{border-right:none;border-bottom:1px solid rgba(255,255,255,.1);text-align:left;padding:14px 20px}.test-scan-manager .tab-btn:last-child{border-bottom:none}.test-scan-manager .table-header,.test-scan-manager .table-row{grid-template-columns:1fr;padding:15px}.test-scan-manager .table-header>div,.test-scan-manager .table-row>div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e9ecef}.test-scan-manager .table-header>div:last-child,.test-scan-manager .table-row>div:last-child{border-bottom:none}.test-scan-manager .create-btn{width:100%;padding:12px}.test-scan-manager .form-actions{flex-direction:column}.test-scan-manager .cancel-btn,.test-scan-manager .submit-btn{width:100%}}.test-scan-manager .set-template-row{grid-template-columns:2fr 1fr 1fr!important}.test-scan-manager .parameters-section .parameters-table-header{grid-template-columns:2fr 1.5fr 1fr 1fr}.test-scan-manager .set-template-row .parameters-table-header{grid-template-columns:2fr 1fr 1fr}.schedule-main-container{padding:20px;background-color:#f5f5f5;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.schedule-header{text-align:center;margin-bottom:30px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.schedule-title{color:#1976d2;margin:0 0 10px;font-size:28px;font-weight:700}.schedule-subtitle{color:#666;margin:0;font-size:16px}.schedule-content{max-width:1200px;margin:0 auto}.schedule-doctor-selection{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.schedule-doctor-selection h3{margin:0 0 15px;color:#333;font-size:18px}.schedule-doctor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px}.schedule-doctor-card{border:2px solid #e0e0e0;border-radius:8px;padding:15px;cursor:pointer;transition:all .3s ease;background:#fafafa}.schedule-doctor-card:hover{border-color:#1976d2;background:#f0f7ff;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.schedule-doctor-card.selected{border-color:#1976d2;background:#e3f2fd;box-shadow:0 4px 12px #1976d233}.doctor-name{font-weight:700;font-size:16px;color:#333;margin-bottom:8px}.doctor-details{display:flex;justify-content:space-between;font-size:12px;color:#666}.doctor-id{background:#e0e0e0;padding:2px 6px;border-radius:4px}.doctor-specialist{font-style:italic;color:#1976d2}.schedule-configuration{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.schedule-config-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.schedule-config-header h3{margin:0;color:#333;font-size:20px}.schedule-btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;margin:0 5px}.schedule-btn-primary{background:#1976d2;color:#fff}.schedule-btn-primary:hover{background:#1565c0}.schedule-btn-secondary{background:#f0f0f0;color:#333;border:1px solid #ddd}.schedule-btn-secondary:hover{background:#e0e0e0}.schedule-btn-save{background:#4caf50;color:#fff;padding:10px 20px;font-size:16px}.schedule-btn-save:hover{background:#45a049}.schedule-btn-save:disabled{background:#ccc;cursor:not-allowed}.schedule-btn-danger{background:#f44336;color:#fff;padding:4px 8px;font-size:12px}.schedule-btn-danger:hover{background:#d32f2f}.schedule-bulk-operations{margin-bottom:30px;padding:15px;background:#f8f9fa;border-radius:6px;border-left:4px solid #1976d2}.schedule-bulk-operations h4{margin:0 0 15px;color:#333;font-size:16px}.bulk-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.bulk-time-controls{display:flex;gap:10px;align-items:center;margin-left:auto}.bulk-time-controls label{font-weight:500;color:#555}.bulk-time-controls select{padding:4px 8px;border:1px solid #ddd;border-radius:4px;font-size:12px}.schedule-weekdays{margin-bottom:30px}.schedule-weekdays h4{margin:0 0 15px;color:#333;font-size:18px}.weekdays-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.weekday-card{border:1px solid #e0e0e0;border-radius:8px;padding:15px;background:#fafafa;transition:all .3s ease}.weekday-card:hover{box-shadow:0 2px 8px #0000001a}.weekday-header{margin-bottom:15px}.weekday-toggle{display:flex;align-items:center;cursor:pointer;font-weight:500}.weekday-toggle input[type=checkbox]{margin-right:8px;transform:scale(1.2)}.weekday-name{color:#333;font-size:16px}.weekday-settings{padding-top:10px;border-top:1px solid #e0e0e0}.time-inputs{display:flex;gap:10px;margin-bottom:10px}.time-inputs label{flex:1;font-size:12px;color:#666;font-weight:500}.time-inputs input[type=time]{width:100%;padding:6px;border:1px solid #ddd;border-radius:4px;margin-top:4px;font-size:12px}.slot-duration label{display:block;font-size:12px;color:#666;font-weight:500;margin-bottom:4px}.slot-duration select{width:100%;padding:6px;border:1px solid #ddd;border-radius:4px;font-size:12px}.schedule-exceptions h4{margin:0 0 15px;color:#333;font-size:18px}.exception-form{margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:6px}.exception-inputs{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.exception-inputs input{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.exception-list{space-y:10px}.exception-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;margin-bottom:8px}.exception-details{display:flex;gap:20px}.exception-date{font-weight:500;color:#333}.exception-time{color:#666;font-size:14px}.schedule-loading{text-align:center;padding:40px;color:#666;font-size:16px}.schedule-empty{text-align:center;padding:40px;color:#999;font-style:italic}@media (max-width: 768px){.schedule-main-container{padding:10px}.schedule-config-header{flex-direction:column;gap:15px;align-items:stretch}.weekdays-grid{grid-template-columns:1fr}.bulk-controls{flex-direction:column;align-items:stretch}.bulk-time-controls{margin-left:0;justify-content:space-between}.exception-inputs{flex-direction:column;align-items:stretch}.exception-item{flex-direction:column;gap:10px;align-items:stretch}.exception-details{justify-content:space-between}}.template-manager-visual{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.tm-header{background:#fff;border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 4px 20px #00000014}.tm-header-content h1{margin:0 0 8px;font-size:28px;color:#2d3748;font-weight:700}.tm-header-content p{margin:0;color:#718096;font-size:15px}.tm-tabs{display:flex;gap:12px;margin-top:20px}.tm-tab{padding:12px 24px;border:2px solid #e2e8f0;background:#fff;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s;color:#4a5568}.tm-tab:hover{border-color:#667eea;color:#667eea;transform:translateY(-2px)}.tm-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;box-shadow:0 4px 16px #667eea66}.tm-loading{position:fixed;inset:0;background:#fffffffa;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.tm-spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.tm-notification{position:fixed;top:20px;right:20px;padding:16px 20px;border-radius:12px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 32px #00000026;z-index:999;animation:slideIn .3s ease;max-width:500px}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.tm-notification.error{background:linear-gradient(135deg,#fff5f5,#fed7d7);color:#c53030;border-left:5px solid #f56565}.tm-notification.success{background:linear-gradient(135deg,#f0fff4,#c6f6d5);color:#2f855a;border-left:5px solid #48bb78}.tm-notification button{background:transparent;border:none;font-size:20px;cursor:pointer;opacity:.6;transition:opacity .2s;padding:0 4px}.tm-notification button:hover{opacity:1}.tm-content{background:#fff;border-radius:16px;padding:32px;box-shadow:0 4px 20px #00000014}.tm-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.tm-toolbar h2{margin:0;font-size:24px;color:#2d3748;font-weight:700}.tm-empty{text-align:center;padding:80px 40px}.tm-empty-icon{font-size:80px;margin-bottom:20px;opacity:.5}.tm-empty h3{font-size:24px;color:#2d3748;margin:0 0 12px}.tm-empty p{color:#718096;margin:0 0 32px;font-size:16px}.tm-templates{display:flex;flex-direction:column;gap:20px}.tm-template{border:2px solid #e2e8f0;border-radius:12px;overflow:hidden}.tm-template-header{background:linear-gradient(135deg,#f7fafc,#edf2f7);padding:20px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #e2e8f0}.tm-template-header h3{margin:0 0 8px;font-size:20px;color:#2d3748;font-weight:700}.tm-badge{background:#ebf4ff;color:#2c5282;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:700}.tm-badge-small{background:#e6fffa;color:#234e52;padding:3px 10px;border-radius:10px;font-size:11px;font-weight:600}.tm-meta{color:#718096;font-size:14px;font-weight:600}.tm-section{border-bottom:1px solid #e2e8f0}.tm-section:last-child{border-bottom:none}.tm-section-toggle{width:100%;padding:16px 24px;background:#fff;border:none;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background .2s;font-size:15px}.tm-section-toggle:hover{background:#f7fafc}.tm-toggle-icon{font-size:14px;color:#667eea;font-weight:700}.tm-section-name{flex:1;text-align:left;font-weight:700;color:#2d3748}.tm-form{margin-left:24px;border-left:3px solid #e2e8f0}.tm-form-toggle{width:100%;padding:14px 20px;background:#fff;border:none;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background .2s;font-size:14px}.tm-form-toggle:hover{background:#f7fafc}.tm-form-name{flex:1;text-align:left;font-weight:600;color:#4a5568}.tm-field{margin:12px 20px 12px 44px;border:2px solid #e2e8f0;border-radius:12px;background:#fff;transition:all .3s}.tm-field:hover{box-shadow:0 4px 12px #00000014}.tm-field.editing{border-color:#667eea;box-shadow:0 4px 20px #667eea33}.tm-field-header{padding:16px 20px;background:linear-gradient(135deg,#f7fafc,#edf2f7);display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #e2e8f0}.tm-field-title{display:flex;align-items:center;gap:12px}.tm-field-icon{font-size:24px}.tm-field-title strong{display:block;font-size:16px;color:#2d3748;margin-bottom:4px}.tm-field-type{display:block;font-size:12px;color:#718096;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tm-field-content{padding:20px}.tm-field-section{margin-bottom:16px}.tm-field-section:last-child{margin-bottom:0}.tm-field-section label{display:block;font-size:12px;color:#718096;font-weight:600;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.tm-options-list{display:flex;flex-wrap:wrap;gap:8px}.tm-option-tag{background:linear-gradient(135deg,#ebf4ff,#e6fffa);color:#2c5282;padding:6px 14px;border-radius:16px;font-size:13px;font-weight:600;border:1px solid #bee3f8}.tm-default-value{background:#fef5e7;padding:10px 14px;border-radius:8px;color:#744210;font-weight:600;font-size:14px}.tm-field-edit{padding:20px;background:linear-gradient(135deg,#f7fafc,#edf2f7)}.tm-edit-section{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:16px;margin-bottom:16px}.tm-edit-section-header{margin-bottom:12px}.tm-edit-section label{font-size:13px;color:#4a5568;font-weight:700;display:block}.tm-options-edit-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;min-height:40px;padding:8px;background:#f7fafc;border-radius:8px}.tm-option-edit-tag{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;padding:8px 12px;border-radius:16px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px;box-shadow:0 2px 8px #48bb784d}.tm-option-remove{background:#ffffff4d;border:none;color:#fff;width:20px;height:20px;border-radius:50%;cursor:pointer;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s}.tm-option-remove:hover{background:#ffffff80;transform:scale(1.1)}.tm-add-option{display:flex;gap:8px}.tm-add-option .tm-input{flex:1}.tm-input{width:100%;padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-family:inherit;transition:all .2s}.tm-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.tm-input.large{padding:14px 18px;font-size:16px}.tm-input.small{padding:8px 12px;font-size:13px}.tm-input::placeholder{color:#a0aec0}.tm-select{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-family:inherit;background:#fff;cursor:pointer}.tm-select.small{padding:8px 12px;font-size:13px}.tm-btn-primary,.tm-btn-secondary,.tm-btn-danger,.tm-btn-edit,.tm-btn-add,.tm-btn-cancel,.tm-btn-refresh{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.tm-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.tm-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.tm-btn-primary-large{padding:16px 40px;font-size:17px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 16px #667eea59}.tm-btn-primary-large:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px #667eea73}.tm-btn-primary-large:disabled{opacity:.5;cursor:not-allowed}.tm-btn-secondary{background:#fff;color:#4a5568;border:2px solid #e2e8f0}.tm-btn-secondary:hover{background:#f7fafc;border-color:#cbd5e0}.tm-btn-secondary-small{padding:6px 12px;font-size:12px;background:#fff;color:#4a5568;border:2px solid #e2e8f0;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.tm-btn-danger{background:linear-gradient(135deg,#f56565,#e53e3e);color:#fff;box-shadow:0 4px 12px #f565654d}.tm-btn-danger:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f5656566}.tm-btn-danger-small{padding:6px 12px;font-size:12px;background:linear-gradient(135deg,#fed7d7,#fc8181);color:#c53030;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.tm-btn-danger-small:hover{background:linear-gradient(135deg,#fc8181,#f56565);color:#fff}.tm-btn-edit{background:linear-gradient(135deg,#4299e1,#3182ce);color:#fff;box-shadow:0 2px 8px #4299e14d}.tm-btn-edit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4299e166}.tm-btn-add{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;box-shadow:0 2px 8px #48bb784d;white-space:nowrap}.tm-btn-add:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #48bb7866}.tm-btn-add:disabled{opacity:.5;cursor:not-allowed}.tm-btn-add-large{padding:14px 28px;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #48bb784d}.tm-btn-add-large:hover{transform:translateY(-2px);box-shadow:0 6px 20px #48bb7866}.tm-btn-cancel{background:#edf2f7;color:#4a5568}.tm-btn-cancel:hover{background:#e2e8f0}.tm-btn-refresh{background:linear-gradient(135deg,#4299e1,#3182ce);color:#fff;box-shadow:0 4px 12px #4299e14d}.tm-btn-refresh:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4299e166}.tm-edit-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px}.tm-create-form{max-width:1200px}.tm-create-form h2{margin:0 0 24px;font-size:24px;color:#2d3748;font-weight:700}.tm-form-group{margin-bottom:24px}.tm-form-group label{display:block;margin-bottom:8px;font-size:14px;color:#4a5568;font-weight:700}.tm-sections-builder{margin-top:32px}.tm-builder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.tm-builder-header h3{margin:0;font-size:20px;color:#2d3748;font-weight:700}.tm-builder-section{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:20px}.tm-builder-section-header{display:flex;gap:12px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.tm-builder-section-header .tm-input{flex:1;min-width:200px}.tm-builder-form{background:#fff;border:2px solid #e2e8f0;border-radius:10px;padding:16px;margin-bottom:12px;margin-left:20px}.tm-builder-form-header{display:flex;gap:10px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.tm-builder-form-header .tm-input{flex:1;min-width:150px}.tm-builder-field{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px;margin-bottom:10px;margin-left:20px}.tm-builder-field-row{display:flex;gap:8px;align-items:center;margin-bottom:8px;flex-wrap:wrap}.tm-builder-field-row .tm-input,.tm-builder-field-row .tm-select{flex:1;min-width:120px}.tm-form-actions{display:flex;gap:16px;margin-top:32px;padding-top:24px;border-top:2px solid #e2e8f0}@media (max-width: 768px){.template-manager-visual{padding:12px}.tm-header{padding:16px}.tm-content{padding:20px}.tm-tabs{flex-direction:column}.tm-tab{width:100%}.tm-field-header,.tm-builder-section-header,.tm-builder-form-header,.tm-builder-field-row{flex-direction:column;align-items:stretch}.tm-builder-form,.tm-builder-field{margin-left:0}.tm-form-actions{flex-direction:column}.tm-form-actions button{width:100%}}.tm-section-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:12px}.tm-section-toggle{flex:1}.tm-section-actions{display:flex;gap:8px}.tm-form-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:12px}.tm-form-toggle{flex:1}.tm-form-actions,.tm-field-header-actions{display:flex;gap:8px}.tm-btn-icon,.tm-btn-icon-add{background:transparent;border:none;font-size:18px;cursor:pointer;padding:6px;border-radius:6px;transition:all .2s;opacity:.7}.tm-btn-icon:hover{background:#4299e11a;opacity:1}.tm-btn-icon-add:hover{background:#48bb781a;opacity:1}.tm-btn-add-small{padding:6px 14px;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 6px #48bb784d;white-space:nowrap}.tm-btn-add-small:hover{transform:translateY(-1px);box-shadow:0 4px 12px #48bb7866}.tm-input-inline{padding:4px 8px;border:2px solid #667eea;border-radius:6px;font-size:14px;font-weight:600;font-family:inherit;background:#fff;box-shadow:0 0 0 3px #667eea1a}.tm-input-inline:focus{outline:none}.tm-add-form{margin:16px 20px 16px 44px;background:linear-gradient(135deg,#ebf8ff,#bee3f8);border:2px solid #4299e1;border-radius:12px;padding:20px;animation:slideDown .3s ease}.tm-add-form-header{margin-bottom:16px}.tm-add-form-header h4{margin:0;color:#2c5282;font-size:16px;font-weight:700}.tm-add-form-content{display:flex;flex-direction:column;gap:12px}.tm-form-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tm-form-row .tm-input,.tm-form-row .tm-select{flex:1;min-width:150px}.tm-form-row .tm-input.small,.tm-form-row .tm-select.small{flex:0 0 150px}.tm-add-form-actions{display:flex;gap:10px;justify-content:flex-start;margin-top:8px}.tm-template-actions{display:flex;align-items:center;gap:12px}@media (max-width: 768px){.tm-section-header-row,.tm-form-header-row{flex-wrap:wrap}.tm-section-actions,.tm-form-actions,.tm-field-header-actions{width:100%;justify-content:flex-start}.tm-template-actions{flex-direction:column;align-items:flex-end;width:100%}.tm-add-form{margin-left:0}.tm-form-row{flex-direction:column}.tm-form-row .tm-input,.tm-form-row .tm-select{width:100%}}.permission-center{padding:20px;min-height:100vh;background-color:#f5f7fa}.permission-header{margin-bottom:30px}.permission-header h1{font-size:28px;font-weight:600;color:#2c3e50;margin-bottom:8px}.permission-header p{font-size:14px;color:#7f8c8d;margin:0}.alert{padding:12px 20px;border-radius:6px;margin-bottom:20px;font-size:14px;animation:slideDown .3s ease}.alert-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.alert-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.permission-content{display:flex;gap:20px;height:calc(100vh - 200px)}.role-panel{width:280px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;overflow:hidden}.role-panel-header{padding:20px;border-bottom:1px solid #e1e8ed;display:flex;justify-content:space-between;align-items:center}.role-panel-header h3{font-size:18px;font-weight:600;color:#2c3e50;margin:0}.role-count{font-size:12px;color:#7f8c8d;background:#ecf0f1;padding:4px 10px;border-radius:12px}.role-list{flex:1;overflow-y:auto;padding:10px}.role-item{padding:12px 15px;margin-bottom:8px;border-radius:6px;cursor:pointer;transition:all .2s ease;background:#f8f9fa;border:1px solid transparent}.role-item:hover{background:#e9ecef;transform:translate(4px)}.role-item.active{background:#e3f2fd;border-color:#2196f3}.role-name{font-size:14px;font-weight:500;color:#2c3e50;margin-bottom:4px}.role-type{font-size:12px;color:#7f8c8d}.permission-panel{flex:1;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;overflow:hidden}.permission-panel.empty-panel{display:flex;align-items:center;justify-content:center}.permission-panel-header{padding:20px;border-bottom:1px solid #e1e8ed;display:flex;justify-content:space-between;align-items:center}.permission-panel-header h3{font-size:18px;font-weight:600;color:#2c3e50;margin:0}.btn-save{padding:10px 24px;background:#2196f3;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-save:hover:not(:disabled){background:#1976d2;transform:translateY(-1px);box-shadow:0 4px 12px #2196f34d}.btn-save:disabled{background:#bdc3c7;cursor:not-allowed}.btn-delete{padding:10px 24px;background:#e74c3c;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-delete:hover:not(:disabled){background:#c0392b;transform:translateY(-1px);box-shadow:0 4px 12px #e74c3c4d}.btn-delete:disabled{background:#bdc3c7;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:#fff;padding:30px;border-radius:12px;max-width:450px;width:90%;box-shadow:0 10px 40px #0003;animation:scaleIn .2s ease}.modal-content h3{font-size:22px;color:#2c3e50;margin:0 0 15px}.modal-content p{color:#7f8c8d;margin:10px 0;font-size:15px}.warning-text{color:#e74c3c;font-weight:500;margin-top:15px!important}.modal-actions{display:flex;gap:10px;margin-top:25px;justify-content:flex-end}.btn-cancel{padding:10px 20px;background:#ecf0f1;color:#2c3e50;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.btn-cancel:hover{background:#bdc3c7}.btn-confirm-delete{padding:10px 20px;background:#e74c3c;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.btn-confirm-delete:hover:not(:disabled){background:#c0392b}.btn-confirm-delete:disabled{background:#bdc3c7;cursor:not-allowed}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.permission-layout{display:flex;flex:1;overflow:hidden}.module-list{width:280px;border-right:1px solid #e1e8ed;display:flex;flex-direction:column}.search-box{padding:15px;border-bottom:1px solid #e1e8ed}.search-box input{width:100%;padding:10px 15px;border:1px solid #e1e8ed;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s ease}.search-box input:focus{border-color:#2196f3}.module-item{padding:12px 15px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .2s ease;border-left:3px solid transparent}.module-item:hover{background:#f8f9fa}.module-item.active{background:#e3f2fd;border-left-color:#2196f3}.module-item input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#2196f3;transition:transform .2s ease}.module-item input[type=checkbox]:hover{transform:scale(1.15)}.module-item span{font-size:14px;color:#2c3e50;font-weight:500}.feature-permissions{flex:1;display:flex;flex-direction:column;overflow:hidden}.permissions-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:15px;padding:20px;border-bottom:2px solid #e1e8ed;background:#f8f9fa;font-weight:600;font-size:14px;color:#2c3e50}.permissions-body{flex:1;overflow-y:auto;padding:10px 20px}.permission-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:15px;padding:15px 0;border-bottom:1px solid #e1e8ed;align-items:center;transition:background .2s ease}.permission-row:last-child{border-bottom:none}.feature-col{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#2c3e50}.feature-name{font-weight:500}.feature-actions{display:flex;gap:8px}.action-btn{padding:4px 10px;font-size:11px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s ease;font-weight:500}.action-btn.enable-all{color:#27ae60;border-color:#27ae60}.action-btn.enable-all:hover{background:#27ae60;color:#fff}.action-btn.disable-all{color:#e74c3c;border-color:#e74c3c}.action-btn.disable-all:hover{background:#e74c3c;color:#fff}.permission-col{text-align:center}.checkbox-label{display:flex;align-items:center;justify-content:center;cursor:pointer}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#2196f3;margin:0;transition:transform .2s ease}.checkbox-label input[type=checkbox]:hover{transform:scale(1.1)}.empty-state{text-align:center;padding:60px 20px}.empty-state h3{font-size:20px;font-weight:600;color:#2c3e50;margin-bottom:10px}.loading-state{padding:40px 20px;text-align:center;color:#7f8c8d;font-size:14px}.access-denied{background:#fff;padding:60px 40px;border-radius:8px;text-align:center;box-shadow:0 2px 8px #0000001a;max-width:500px;margin:100px auto}.access-denied h2{font-size:24px;font-weight:600;color:#e74c3c;margin-bottom:15px}.access-denied p{font-size:16px;color:#7f8c8d;margin:0}.role-list::-webkit-scrollbar,.permissions-body::-webkit-scrollbar{width:8px}.role-list::-webkit-scrollbar-track,.permissions-body::-webkit-scrollbar-track{background:#f1f1f1}.role-list::-webkit-scrollbar-thumb,.permissions-body::-webkit-scrollbar-thumb{background:#bdc3c7;border-radius:4px}.role-list::-webkit-scrollbar-thumb:hover,.permissions-body::-webkit-scrollbar-thumb:hover{background:#95a5a6}@media (max-width: 1200px){.permission-content{flex-direction:column;height:auto}.role-panel{width:100%;max-height:300px}.module-list{width:100%;border-right:none;border-bottom:1px solid #e1e8ed;max-height:300px}.permission-layout{flex-direction:column}}.permission-col{text-align:center;position:relative;z-index:1}.permission-col input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#2196f3;margin:0;position:relative;z-index:10;pointer-events:auto!important}.checkbox-label{display:inline-block;cursor:pointer;pointer-events:none}.checkbox-label input[type=checkbox]{pointer-events:auto!important;cursor:pointer}.permission-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:15px;padding:15px 0;border-bottom:1px solid #e1e8ed;align-items:center;transition:background .2s ease;pointer-events:auto}.permission-row:hover{background:#f8f9fa}.feature-col{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#2c3e50;pointer-events:auto}.action-btn{padding:4px 10px;font-size:11px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s ease;font-weight:500;pointer-events:auto;z-index:5}.permission-indicator{display:inline-block;font-size:12px;font-weight:600;padding:2px 8px;border-radius:4px;margin-right:8px}.permission-indicator.granted{color:#27ae60;background:#d4edda}.permission-indicator.denied{color:#e74c3c;background:#f8d7da}.permission-col{display:flex;align-items:center;justify-content:center;gap:8px}.permission-checkbox{flex-shrink:0}.optical-store{min-height:100vh;background:#f8f9fa;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif}.optical-store-header{background:linear-gradient(135deg,#4e73df,#5a67d8);color:#fff;padding:1.5rem 2rem;box-shadow:0 2px 10px #0000001a}.optical-store-header h1{font-size:1.5rem;font-weight:600;margin:0;display:flex;align-items:center;gap:.5rem}.tabs-navigation{background:#fff;border-bottom:1px solid #e9ecef;padding:0 2rem;box-shadow:0 1px 3px #0000000d}.tabs-container{display:flex;gap:0}.tab{background:none;border:none;padding:1rem 1.5rem;cursor:pointer;font-weight:500;color:#6c757d;border-bottom:3px solid transparent;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.tab:hover{color:#4e73df;background:#f8f9fa}.tab.active{color:#4e73df;border-bottom-color:#4e73df;background:#f8f9fa}.search-section{background:#fff;padding:1.5rem 2rem;border-bottom:1px solid #e9ecef;box-shadow:0 2px 8px #0000000d}.search-container-enhanced{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}.search-input-wrapper{position:relative;flex:1;min-width:250px}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#6c757d;z-index:1}.search-input{width:100%;padding:.75rem 1rem .75rem 2.5rem;border:2px solid #e9ecef;border-radius:8px;font-size:.95rem;background:#fff;transition:all .3s ease;outline:none}.search-input:focus{border-color:#4e73df;box-shadow:0 0 0 .2rem #4e73df40}.date-filter-group{display:flex;flex-direction:column;gap:.75rem;background:#f8f9fa;padding:1rem;border-radius:8px;border:1px solid #e9ecef}.date-input-row{display:flex;gap:.75rem}.date-input-field{display:flex;flex-direction:column;gap:.35rem;min-width:160px}.date-input-field label{font-size:.75rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.5px}.date-input{padding:.6rem .8rem;border:2px solid #e9ecef;border-radius:6px;font-size:.9rem;transition:all .2s;background:#fff;color:#2c3e50}.date-input:focus{outline:none;border-color:#4e73df;box-shadow:0 0 0 3px #4e73df1a}.quick-filter-row{display:flex;align-items:center;gap:.5rem}.quick-filter-row label{font-size:.85rem;font-weight:500;color:#495057;white-space:nowrap}.quick-filter-dropdown{padding:.6rem .8rem;border:2px solid #e9ecef;border-radius:6px;font-size:.9rem;background:#fff;color:#2c3e50;cursor:pointer;transition:all .2s;font-weight:500;min-width:160px}.quick-filter-dropdown:hover{border-color:#4e73df}.quick-filter-dropdown:focus{outline:none;border-color:#4e73df;box-shadow:0 0 0 3px #4e73df1a}.btn-refresh{background:linear-gradient(135deg,#1cc88a,#17a673);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap;box-shadow:0 2px 8px #1cc88a4d}.btn-refresh:hover{background:linear-gradient(135deg,#17a673,#13855d);transform:translateY(-1px);box-shadow:0 4px 12px #1cc88a66}.date-range-indicator-bar{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1rem;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-left:4px solid #43a047;border-radius:6px;color:#2e7d32;font-size:.9rem}.date-range-indicator-bar i{font-size:1rem}.date-range-indicator-bar strong{color:#1b5e20;font-weight:600}.search-container{display:flex;gap:1rem;max-width:600px;align-items:center}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;line-height:1}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary{background:#4e73df;color:#fff}.btn-primary:hover:not(:disabled){background:#375ad1}.btn-success{background:#1cc88a;color:#fff}.btn-success:hover{background:#17a673}.btn-danger{background:#e74a3b;color:#fff}.btn-danger:hover{background:#c9302c}.btn-secondary:hover{background:#5a6268}.btn-sm{padding:.5rem 1rem;font-size:.85rem;margin:0}.btn-info{background:#17a2b8;color:#fff}.btn-info:hover{background:#138496}.content-section{padding:2rem}.cases-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef;overflow:hidden}.cases-table{width:100%;border-collapse:collapse}.cases-table th{background:#f8f9fa;color:#495057;font-weight:600;text-align:left;padding:1rem;border-bottom:2px solid #e9ecef;font-size:.9rem}.cases-table td{padding:1rem;border-bottom:1px solid #f1f3f4;vertical-align:middle}.cases-table tr:hover{background:#f8f9fa}.case-id{font-weight:600;color:#2c3e50}.patient-id{color:#495057}.last-updated{color:#6c757d;font-size:.9rem}.status-badge{padding:.4rem .85rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.pending{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.status-badge.converted{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-badge.not-converted{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.status-badge.partial{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.status-badge.completed{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.actions{display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#6c757d}.spinner{width:40px;height:40px;border:3px solid #e9ecef;border-top:3px solid #4e73df;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.error-container{display:flex;justify-content:center;padding:3rem}.error-card{background:#fff;padding:2.5rem;border-radius:12px;text-align:center;box-shadow:0 4px 12px #00000014;border:1px solid #e9ecef;max-width:400px;width:100%}.error-card i{font-size:3rem;color:#dc3545;margin-bottom:1rem}.no-cases{text-align:center;padding:3rem;color:#6c757d}.no-cases i{font-size:4rem;margin-bottom:1rem;color:#dee2e6}.no-cases h3{margin:1rem 0 .5rem;color:#495057}.purchase-page{background:#fff;min-height:100vh}.purchase-header{background:#f8f9fa;padding:1.5rem 2rem;border-bottom:1px solid #e9ecef;display:flex;align-items:center;gap:1.5rem;justify-content:space-between;flex-wrap:wrap}.back-btn{background:#6c757d;color:#fff;border:none;padding:.75rem 1rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:.5rem;font-weight:500;transition:background .3s ease}.back-btn:hover{background:#545b62}.case-info h2{margin:0 0 .5rem;color:#2c3e50}.case-info p{margin:.25rem 0;color:#6c757d}.product-selection-section{padding:2rem}.category-filter{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.category-filter label{font-weight:500;color:#495057;white-space:nowrap}.category-select{padding:.5rem 1rem;border:2px solid #e9ecef;border-radius:6px;background:#fff;color:#495057;font-size:.9rem;min-width:150px;outline:none;transition:border-color .3s ease}.category-select:focus{border-color:#4e73df;box-shadow:0 0 0 .2rem #4e73df40}.available-products h3{margin:0 0 1.5rem;color:#2c3e50}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.product-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d;transition:all .3s ease}.product-card:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0000001a;border-color:#4e73df}.product-info h4{margin:0 0 .75rem;color:#2c3e50;font-size:1.1rem}.product-info p{margin:.5rem 0;color:#6c757d;font-size:.9rem}.batch-selection{margin-top:1rem;padding-top:1rem;border-top:1px solid #e9ecef}.batch-selection h5{margin:0 0 .75rem;color:#495057;font-size:.9rem}.batch-option{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border:1px solid #f0f0f0;border-radius:6px;margin:.5rem 0;background:#f8f9fa}.batch-info{display:flex;flex-direction:column;gap:.25rem}.batch-info span{font-size:.85rem;color:#495057}.add-batch-btn{background:#4e73df;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s}.add-batch-btn:hover:not(:disabled){background:#375ad1}.add-batch-btn:disabled{background:#ccc;cursor:not-allowed}.selected-products-section{padding:2rem;background:#f8f9fa;border-top:1px solid #e9ecef}.selected-products-section h3{margin:0 0 1.5rem;color:#2c3e50}.selected-products-table{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000000d;margin-bottom:1.5rem}.selected-products-table table{width:100%;border-collapse:collapse}.selected-products-table th{background:#f8f9fa;color:#495057;font-weight:600;text-align:left;padding:.75rem 1rem;border-bottom:2px solid #e9ecef;font-size:.85rem}.selected-products-table td{padding:.75rem 1rem;border-bottom:1px solid #f1f3f4;vertical-align:middle}.quantity-input{width:80px;padding:.4rem .6rem;border:1px solid #e9ecef;border-radius:4px;font-size:.9rem}.remove-btn{background:#e74a3b;color:#fff;border:none;padding:.4rem .6rem;border-radius:4px;cursor:pointer;transition:all .2s}.remove-btn:hover{background:#c9302c}.empty-cart{text-align:center;color:#6c757d;padding:2rem;font-style:italic;background:#fff;border-radius:8px}.billing-details-section{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000000d}.billing-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{font-weight:500;color:#495057;font-size:.9rem}.billing-input,.billing-select,.billing-textarea{padding:.6rem .8rem;border:1px solid #e9ecef;border-radius:6px;font-size:.9rem;transition:all .2s}.billing-input:focus,.billing-select:focus,.billing-textarea:focus{outline:none;border-color:#4e73df;box-shadow:0 0 0 .2rem #4e73df40}.billing-textarea{resize:vertical;font-family:inherit}.bill-summary{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #0000000d;margin-bottom:1.5rem}.summary-row{display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.75rem;font-size:.95rem}.summary-row.total{font-size:1.2rem;border-top:2px solid #e9ecef;padding-top:1rem;margin-top:.5rem}.complete-purchase-section{text-align:center}.complete-purchase-btn{background:linear-gradient(135deg,#1cc88a,#17a673);color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #1cc88a4d}.complete-purchase-btn:hover:not(:disabled){background:linear-gradient(135deg,#17a673,#13855d);transform:translateY(-2px);box-shadow:0 6px 16px #1cc88a66}.complete-purchase-btn:disabled{background:#ccc;cursor:not-allowed;transform:none}.direct-sale-page{padding:0}.direct-sale-content{display:flex;flex-direction:column;gap:0}.product-search-section{background:#fff;padding:2rem;border-bottom:1px solid #e9ecef}.product-search-section h3{margin:0 0 1.5rem;color:#2c3e50}.search-results{margin-top:1.5rem;max-height:500px;overflow-y:auto}.search-results h4{margin:0 0 1rem;color:#495057}.search-results-grid{display:grid;gap:1rem}.search-result-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1rem}.generate-bill-section{text-align:center;padding:1.5rem}.generate-bill-btn{background:linear-gradient(135deg,#1cc88a,#17a673);color:#fff;border:none;padding:1rem 2rem;font-size:1rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .3s;box-shadow:0 4px 12px #1cc88a4d}.generate-bill-btn:hover:not(:disabled){background:linear-gradient(135deg,#17a673,#13855d);transform:translateY(-2px);box-shadow:0 6px 16px #1cc88a66}.generate-bill-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 30px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e9ecef}.modal-header h2,.modal-header h3{margin:0;color:#2c3e50;font-size:1.3rem;display:flex;align-items:center;gap:.5rem}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6c757d;padding:.5rem;border-radius:50%;transition:background .3s ease}.close-btn:hover{background:#f8f9fa;color:#495057}.modal-body{padding:1.5rem}.prescription-modal{max-width:800px}.prescription-info{padding:0}.case-details{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:1.5rem}.case-details h3{margin:0 0 1rem;color:#2c3e50}.case-details p{margin:.5rem 0;color:#495057}.prescription-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.eye-prescription-detail{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem;border-left:4px solid #4e73df}.eye-prescription-detail h4{margin:0 0 1rem;color:#2c3e50;display:flex;align-items:center;gap:.5rem}.prescription-values{display:flex;flex-direction:column;gap:.75rem}.prescription-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f1f3f4}.prescription-row:last-child{border-bottom:none}.prescription-row span:first-child{font-weight:500;color:#6c757d}.prescription-row span:last-child{font-family:Courier New,monospace;font-weight:600;color:#2c3e50}.no-prescription{text-align:center;padding:2rem;color:#6c757d;font-style:italic}.customer-form-modal{max-width:600px}.customer-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.form-field{display:flex;flex-direction:column;gap:.4rem}.form-field label{font-weight:500;color:#495057;font-size:.9rem}.customer-input,.customer-select{width:100%;padding:.6rem .8rem;border:1px solid #e9ecef;border-radius:6px;font-size:.9rem;transition:all .2s}.customer-input:focus,.customer-select:focus{outline:none;border-color:#4e73df;box-shadow:0 0 0 .2rem #4e73df40}.bill-preview{background:#f8f9fa;padding:1.5rem;border-radius:8px;border:1px solid #e9ecef}.bill-preview h4{margin:0 0 1rem;color:#2c3e50}.preview-summary p{margin:.5rem 0;display:flex;justify-content:space-between;color:#495057}.payment-info{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:1.5rem}.payment-info p{margin:.5rem 0;color:#495057}.modal-footer{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid #e9ecef;background:#f8f9fa}.cancel-btn{flex:1;padding:.75rem 1.5rem;border:1px solid #6c757d;background:#6c757d;color:#fff;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .3s}.cancel-btn:hover{background:#5a6268}.confirm-btn{flex:1;padding:.75rem 1.5rem;border:none;background:linear-gradient(135deg,#1cc88a,#17a673);color:#fff;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s}.confirm-btn:hover:not(:disabled){background:linear-gradient(135deg,#17a673,#13855d);transform:translateY(-1px);box-shadow:0 4px 12px #1cc88a66}.confirm-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none}.auto-moved-indicator{font-size:12px;color:#856404;padding:2px 6px;border-radius:3px;background-color:#fff3cd;border:1px solid #ffeaa7}.auto-moved-indicator i{margin-right:3px}@media (max-width: 992px){.optical-store-header{padding:1rem}.tabs-container{flex-wrap:wrap}.tab{flex:1;min-width:120px;justify-content:center}.search-section{padding:1rem}.search-container-enhanced{flex-direction:column;align-items:stretch}.search-input-wrapper{min-width:100%}.date-filter-group{width:100%}.btn-refresh{width:100%;justify-content:center}.content-section{padding:1rem}.cases-table{font-size:.85rem}.products-grid{grid-template-columns:1fr}.actions{flex-direction:column;gap:.5rem}.btn-sm{margin:0;width:100%}.prescription-grid{grid-template-columns:1fr;gap:1.5rem}.billing-inputs{grid-template-columns:1fr}.purchase-header{flex-direction:column;align-items:stretch}}@media (max-width: 768px){.optical-store-header h1{font-size:1.2rem}.search-section{padding:1rem}.date-input-row{flex-direction:column;gap:.75rem}.date-input-field{min-width:100%}.quick-filter-row{flex-direction:column;align-items:stretch;gap:.5rem}.quick-filter-row label{font-size:.8rem}.quick-filter-dropdown{width:100%}.date-range-indicator-bar{flex-direction:column;align-items:flex-start;gap:.25rem;font-size:.85rem}.product-search-section,.selected-products-section{padding:1rem}.modal-content{width:95%;margin:1rem}.modal-footer{flex-direction:column}}@media (max-width: 480px){.optical-store-header{padding:.75rem}.optical-store-header h1{font-size:1rem}.tabs-container{flex-direction:column;gap:0}.tab{width:100%;border-radius:0;border-bottom:1px solid #e9ecef}.tab.active{border-bottom:3px solid #4e73df}.prescription-modal{width:100%;margin:.5rem}.case-details,.eye-prescription-detail{padding:1rem}.selected-products-table{overflow-x:auto}.billing-inputs{gap:.75rem}}@media print{.optical-store-header,.tabs-navigation,.search-section,.actions,.btn,.modal-overlay{display:none!important}.optical-store{background:#fff}.cases-table{font-size:.8rem}}*{margin:0;padding:0;box-sizing:border-box}.iol-management{min-height:100vh;background-color:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.error-message{background-color:#fee;border:1px solid #fcc;color:#c33;padding:15px;border-radius:4px;margin:1.5rem;position:relative}.error-close-btn{position:absolute;top:10px;right:15px;background:none;border:none;color:#c33;cursor:pointer;font-size:18px;padding:5px;line-height:1}.header{background:linear-gradient(135deg,#2c5aa0,#1e3d6f);color:#fff;padding:1.5rem 2rem;box-shadow:0 4px 20px #0000001a;position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center}.header-content{display:flex;align-items:center;gap:.75rem}.header-content h1{font-size:1.75rem;font-weight:600;margin:0}.header-icon{width:2rem;height:2rem}.add-iol-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;display:flex;align-items:center;gap:.5rem;transition:all .3s ease;box-shadow:0 2px 10px #28a7454d;min-width:120px;z-index:10;position:relative}.add-iol-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #28a74566;background:linear-gradient(135deg,#218838,#1e7e34)}.add-iol-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.add-iol-btn:active{transform:translateY(0);background:linear-gradient(135deg,#218838,#1e7e34)}.search-container{padding:2rem;background:#fff;margin:1.5rem;border-radius:12px;box-shadow:0 2px 10px #0000000d;display:flex;align-items:center;gap:1rem}.search-wrapper{position:relative;flex:1;max-width:500px}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#6c757d;width:1.25rem;height:1.25rem}.search-input{width:100%;padding:.875rem 1rem .875rem 3rem;border:2px solid #e9ecef;border-radius:8px;font-size:.95rem;transition:all .3s ease;background:#fff}.search-input:focus{outline:none;border-color:#2c5aa0;box-shadow:0 0 0 3px #2c5aa01a}.refresh-btn{padding:8px 16px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .3s ease}.refresh-btn:hover:not(:disabled){background-color:#0056b3;transform:translateY(-1px)}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.table-container{background:#fff;margin:1.5rem;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000000d}.table-wrapper{overflow-x:auto}.loading-container{text-align:center;padding:40px 20px;color:#6c757d;font-size:1.1rem}.iol-table{width:100%;border-collapse:collapse;min-width:1200px}.iol-table th{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:1rem .75rem;text-align:left;font-weight:600;color:#495057;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #dee2e6;white-space:nowrap}.iol-table td{padding:1rem .75rem;border-bottom:1px solid #f1f3f4;font-size:.9rem;color:#495057;white-space:nowrap}.iol-table tbody tr{transition:all .2s ease}.iol-table tbody tr:hover{background:linear-gradient(135deg,#f8f9fa,#e9ecef);transform:translateY(-1px)}.action-buttons{display:flex;gap:.5rem;align-items:center}.edit-btn,.assign-btn{color:#fff;border:none;padding:.5rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;min-width:32px;height:32px}.edit-btn{background:linear-gradient(135deg,#ffc107,#e0a800);box-shadow:0 2px 8px #ffc1074d}.edit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #ffc10766;background:linear-gradient(135deg,#e0a800,#d39e00)}.assign-btn{background:linear-gradient(135deg,#007bff,#0056b3);box-shadow:0 2px 8px #007bff4d}.assign-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #007bff66;background:linear-gradient(135deg,#0056b3,#004085)}.edit-btn:disabled,.assign-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.status-available{color:#28a745;font-weight:600;background:#28a7451a;padding:.25rem .5rem;border-radius:6px;font-size:.8rem}.status-assigned{color:#007bff;font-weight:600;background:#007bff1a;padding:.25rem .5rem;border-radius:6px;font-size:.8rem}.status-blocked{color:#dc3545;font-weight:600;background:#dc35451a;padding:.25rem .5rem;border-radius:6px;font-size:.8rem}.records-info{padding:1rem 1.5rem;background:#f8f9fa;color:#6c757d;font-size:.85rem;border-top:1px solid #dee2e6}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease}.modal-content{background:#fff;border-radius:16px;max-width:900px;width:95%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003;animation:slideIn .3s ease;position:relative;z-index:1001}@keyframes slideIn{0%{transform:translateY(-50px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.modal-header{background:linear-gradient(135deg,#2c5aa0,#1e3d6f);color:#fff;padding:1.5rem 2rem;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;align-items:center}.modal-header h2{font-size:1.5rem;font-weight:600;display:flex;align-items:center;gap:.75rem;margin:0}.modal-icon{width:1.5rem;height:1.5rem}.close-btn{background:none;border:none;color:#fff;cursor:pointer;padding:.5rem;border-radius:4px;transition:all .2s ease;min-width:32px;height:32px;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#ffffff1a}.modal-body{padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#495057;font-size:.9rem}.form-group input,.form-group select{width:100%;padding:.875rem;border:2px solid #e9ecef;border-radius:8px;font-size:.95rem;transition:all .3s ease;background:#fff}.form-group input:focus,.form-group select:focus{outline:none;border-color:#2c5aa0;box-shadow:0 0 0 3px #2c5aa01a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.purchase-info-section,.iol-items-section{margin-bottom:2rem}.purchase-info-section h3,.iol-items-section h3{color:#2c5aa0;font-size:1.2rem;font-weight:600;margin-bottom:1.5rem;border-bottom:2px solid #e9ecef;padding-bottom:.5rem}.purchase-item{background:#f8f9fa;padding:1.5rem;border-radius:12px;margin-bottom:1.5rem;border:2px solid #e9ecef;transition:all .3s ease}.purchase-item:hover{border-color:#2c5aa0;box-shadow:0 4px 15px #2c5aa01a}.purchase-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.purchase-item-header h3{color:#2c5aa0;font-size:1.1rem;font-weight:600;margin:0;border:none;padding:0}.remove-item-btn{background:#dc3545;color:#fff;border:none;padding:.5rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;min-width:32px;height:32px}.remove-item-btn:hover{background:#c82333;transform:scale(1.05)}.add-item-btn{background:#28a745;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;margin:1.5rem 0;transition:all .3s ease}.add-item-btn:hover{background:#218838;transform:translateY(-2px)}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:2px solid #f1f3f4}.btn-primary,.btn-secondary{padding:.875rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;display:flex;align-items:center;gap:.5rem;transition:all .3s ease;min-width:120px;justify-content:center}.btn-primary{background:linear-gradient(135deg,#2c5aa0,#1e3d6f);color:#fff;box-shadow:0 2px 10px #2c5aa04d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #2c5aa066}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#545b62;transform:translateY(-2px)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none}.assign-modal .modal-content{max-width:500px}.iol-details{background:#f8f9fa;padding:1rem;border-radius:8px;margin:1rem 0;border-left:4px solid #2c5aa0}.iol-details h3{color:#2c5aa0;font-size:1rem;margin-bottom:.75rem}.iol-details p{margin:.5rem 0;color:#495057;font-size:.9rem}@media (max-width: 768px){.header{flex-direction:column;gap:1rem;padding:1rem}.search-container{flex-direction:column;align-items:stretch;gap:1rem}.form-row{grid-template-columns:1fr;gap:1rem}.modal{padding:.5rem}.modal-content{width:98%}.modal-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.iol-planning-container{min-height:100vh;background-color:#f9fafb;padding:1.5rem}.iol-planning-wrapper{max-width:1280px;margin:0 auto}.iol-header{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb;padding:1.5rem;margin-bottom:1.5rem}.iol-header-content{display:flex;align-items:center;justify-content:space-between}.iol-header-info{display:flex;align-items:center;gap:.75rem}.iol-icon-container{background-color:#dbeafe;padding:.75rem;border-radius:.5rem}.iol-icon{width:1.5rem;height:1.5rem;color:#2563eb}.iol-title{font-size:1.5rem;font-weight:700;color:#111827;margin:0}.iol-subtitle{color:#6b7280;margin:0}.iol-refresh-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#2563eb;color:#fff;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s}.iol-refresh-btn:hover{background-color:#1d4ed8}.iol-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.iol-refresh-icon{width:1rem;height:1rem}.iol-refresh-icon.spinning{animation:spin 1s linear infinite}.iol-filters{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb;padding:1.5rem;margin-bottom:1.5rem}.iol-filters-content{display:flex;flex-direction:column;gap:1rem}.iol-search-container{display:flex;align-items:center;gap:1rem}.iol-search-wrapper{position:relative}.iol-search-icon{width:1.25rem;height:1.25rem;position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#9ca3af}.iol-search-input{padding:.5rem 1rem .5rem 2.5rem;border:1px solid #d1d5db;border-radius:.5rem;width:20rem;outline:none;transition:all .2s}.iol-search-input:focus{ring:2px solid #2563eb;border-color:transparent}.iol-filter-controls{display:flex;align-items:center;gap:1rem}.iol-filter-group{display:flex;align-items:center;gap:.5rem}.iol-filter-icon{width:1rem;height:1rem;color:#6b7280}.iol-select{border:1px solid #d1d5db;border-radius:.5rem;padding:.5rem .75rem;outline:none;transition:all .2s}.iol-select:focus{ring:2px solid #2563eb;border-color:transparent}.iol-count-text{font-size:.875rem;color:#6b7280}.iol-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:1rem;margin-bottom:1.5rem}.iol-error-header{display:flex;align-items:center;gap:.5rem}.iol-error-icon{width:1.25rem;height:1.25rem;color:#ef4444}.iol-error-title{color:#b91c1c;font-weight:500;margin:0}.iol-error-message{color:#dc2626;margin:.25rem 0 0}.iol-loading{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb;padding:2rem;margin-bottom:1.5rem}.iol-loading-content{display:flex;align-items:center;justify-content:center;gap:.75rem}.iol-loading-icon{width:1.5rem;height:1.5rem;color:#2563eb;animation:spin 1s linear infinite}.iol-loading-text{color:#6b7280}.iol-table-container{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb;overflow:hidden}.iol-table-wrapper{overflow-x:auto}.iol-table{width:100%;border-collapse:collapse}.iol-table-header{background-color:#f9fafb;border-bottom:1px solid #e5e7eb}.iol-table-header th{text-align:left;padding:1rem 1.5rem;font-weight:600;color:#374151}.iol-table-body{background-color:#fff}.iol-table-row{border-bottom:1px solid #e5e7eb;transition:background-color .2s}.iol-table-row:hover{background-color:#f9fafb}.iol-table-cell{padding:1rem 1.5rem}.iol-lens-name{font-weight:500;color:#111827}.iol-company{color:#374151}.iol-power{font-family:Courier New,monospace;color:#111827;background-color:#f3f4f6;padding:.25rem .5rem;border-radius:.25rem;font-size:.875rem;display:inline-block}.iol-status{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;border:1px solid}.iol-status.pending{background-color:#fef3c7;color:#92400e;border-color:#fcd34d}.iol-status.approved{background-color:#d1fae5;color:#065f46;border-color:#a7f3d0}.iol-status.rejected{background-color:#fee2e2;color:#991b1b;border-color:#fca5a5}.iol-status-icon{width:1rem;height:1rem}.iol-actions{display:flex;align-items:center;gap:.5rem}.iol-action-btn{font-weight:500;font-size:.875rem;text-decoration:none;border:none;background:none;cursor:pointer;transition:color .2s}.iol-action-btn.view{color:#2563eb}.iol-action-btn.view:hover{color:#1d4ed8}.iol-action-btn.edit{color:#059669}.iol-action-btn.edit:hover{color:#047857}.iol-action-separator{color:#d1d5db}.iol-empty-state{padding:2rem 1.5rem;text-align:center;color:#6b7280}.iol-summary{display:grid;grid-template-columns:repeat(1,1fr);gap:1.5rem;margin-top:1.5rem}.iol-summary-card{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb;padding:1.5rem}.iol-summary-content{display:flex;align-items:center;justify-content:space-between}.iol-summary-text h3{font-size:.875rem;font-weight:500;color:#6b7280;margin:0 0 .25rem}.iol-summary-text p{font-size:1.5rem;font-weight:700;margin:0}.iol-summary-text .total{color:#111827}.iol-summary-text .pending{color:#d97706}.iol-summary-text .approved{color:#059669}.iol-summary-text .companies{color:#111827}.iol-summary-icon-container{padding:.75rem;border-radius:.5rem}.iol-summary-icon-container.total{background-color:#dbeafe}.iol-summary-icon-container.pending{background-color:#fef3c7}.iol-summary-icon-container.approved{background-color:#d1fae5}.iol-summary-icon-container.companies{background-color:#f3f4f6}.iol-summary-icon{width:1.5rem;height:1.5rem}.iol-summary-icon.total{color:#2563eb}.iol-summary-icon.pending{color:#d97706}.iol-summary-icon.approved{color:#059669}.iol-summary-icon.companies{color:#6b7280}@media (min-width: 768px){.iol-filters-content{flex-direction:row;align-items:center;justify-content:space-between}.iol-summary{grid-template-columns:repeat(4,1fr)}}@media (max-width: 767px){.iol-planning-container{padding:1rem}.iol-header-content{flex-direction:column;gap:1rem;align-items:flex-start}.iol-search-input{width:100%}.iol-table-cell{padding:.75rem 1rem}.iol-actions{flex-direction:column;align-items:flex-start;gap:.25rem}.iol-action-separator{display:none}}.iol-refresh-btn:focus,.iol-search-input:focus,.iol-select:focus,.iol-action-btn:focus{outline:2px solid #2563eb;outline-offset:2px}@media print{.iol-refresh-btn,.iol-filters,.iol-modal-overlay{display:none}.iol-planning-container{background-color:#fff;padding:0}.iol-table-row:hover{background-color:transparent}}.iol-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.iol-modal{background-color:#fff;border-radius:.5rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.iol-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb}.iol-modal-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.iol-modal-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.iol-modal-close:hover{color:#374151}.iol-modal-content{padding:1.5rem}.iol-modal-item-info{background-color:#f9fafb;border-radius:.5rem;padding:1rem;margin-bottom:1.5rem}.iol-modal-item-info p{margin:0 0 .5rem;color:#374151}.iol-modal-item-info p:last-child{margin-bottom:0}.iol-modal-item-info strong{color:#111827;font-weight:600}.iol-modal-status-buttons h4{font-size:1rem;font-weight:600;color:#111827;margin:0 0 1rem}.iol-status-button-group{display:flex;flex-direction:column;gap:.75rem}.iol-status-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border:2px solid;border-radius:.5rem;background-color:transparent;cursor:pointer;transition:all .2s;font-weight:500}.iol-status-button:disabled{opacity:.5;cursor:not-allowed}.iol-status-button.pending{border-color:#fcd34d;color:#92400e}.iol-status-button.pending:hover:not(:disabled){background-color:#fef3c7}.iol-status-button.approved{border-color:#a7f3d0;color:#065f46}.iol-status-button.approved:hover:not(:disabled){background-color:#d1fae5}.iol-status-button.rejected{border-color:#fca5a5;color:#991b1b}.iol-status-button.rejected:hover:not(:disabled){background-color:#fee2e2}.iol-modal-footer{padding:1rem 1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.iol-modal-cancel{padding:.5rem 1rem;background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;font-weight:500;transition:all .2s}.iol-modal-cancel:hover:not(:disabled){background-color:#e5e7eb}.iol-modal-cancel:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.iol-modal{margin:1rem;max-width:calc(100% - 2rem)}.iol-status-button-group{gap:.5rem}.iol-status-button{padding:.625rem .75rem;font-size:.875rem}}.abha-management{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:20px}.abha-container{max-width:1200px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001a;padding:30px}.abha-container h2{color:#2c3e50;margin-bottom:30px;font-size:2rem;font-weight:600}.quick-links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:25px;margin-top:20px}.quick-link-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px;border-radius:15px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #0000001a}.quick-link-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0003}.card-icon{font-size:2.5rem;margin-bottom:15px}.quick-link-card h3{margin:0 0 15px;font-size:1.5rem;font-weight:600}.quick-link-card p{margin:0;line-height:1.6;opacity:.9;font-size:.95rem}.create-abha-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #eee}.back-button{background:none;border:none;font-size:1.1rem;color:#667eea;cursor:pointer;font-weight:500}.back-button:hover{color:#5a67d8}.language-selector select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;background:#fff;font-size:.9rem}.create-abha-form h2{text-align:center;color:#2c3e50;margin-bottom:30px;font-size:1.8rem}.aadhaar-input-container{position:relative;margin-bottom:30px;max-width:400px;margin-left:auto;margin-right:auto}.aadhaar-input{width:100%;padding:15px 50px 15px 15px;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.aadhaar-input:focus{outline:none;border-color:#667eea}.toggle-visibility{position:absolute;right:15px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1.2rem}.consent-section{margin:30px 0}.consent-section>p{text-align:center;font-weight:600;color:#2c3e50;margin-bottom:20px;font-size:1.1rem}.consent-checkboxes{max-height:400px;overflow-y:auto;padding:20px;background:#f8f9fa;border-radius:8px;margin-bottom:20px}.consent-item{display:flex;align-items:flex-start;margin-bottom:15px;cursor:pointer}.consent-item input[type=checkbox]{margin-right:12px;margin-top:4px;transform:scale(1.2)}.consent-item span{font-size:.9rem;line-height:1.5;color:#555}.consent-confirmation{background:#fff3cd;padding:15px;border-radius:6px;border-left:4px solid #ffc107;margin:20px 0}.consent-text{color:#856404;font-weight:500;display:block;margin-bottom:10px}.consent-name-section{display:flex;align-items:center;flex-wrap:wrap;color:#856404}.consent-name-input{border:none;border-bottom:2px solid #856404;background:transparent;padding:2px 8px;margin:0 5px;min-width:120px;font-size:.9rem}.consent-name-input:focus{outline:none;border-bottom-color:#667eea}.recaptcha-section{display:flex;justify-content:center;margin:30px 0}.recaptcha-box{display:flex;align-items:center;padding:15px;border:1px solid #ddd;border-radius:4px;background:#f9f9f9;gap:10px}.recaptcha-logo{margin-left:auto;font-size:.8rem;color:#666;font-weight:500}.generate-otp-btn{display:block;width:200px;margin:0 auto;padding:15px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.generate-otp-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.generate-otp-btn:disabled{opacity:.6;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.otp-modal,.address-modal{background:#fff;border-radius:12px;padding:0;max-width:500px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;display:flex;justify-content:space-between;align-items:center;border-radius:12px 12px 0 0}.modal-header h3{margin:0;font-size:1.3rem;font-weight:600}.close-modal{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .3s ease}.close-modal:hover{background:#fff3}.otp-content,.address-content{padding:25px}.otp-content p{text-align:center;margin-bottom:15px;color:#555}.otp-input-section,.mobile-input-section{margin:20px 0}.otp-input-section label,.mobile-input-section label{display:block;margin-bottom:8px;font-weight:500;color:#333}.otp-input,.mobile-input{width:100%;padding:12px;border:2px solid #e1e5e9;border-radius:6px;font-size:1rem;transition:border-color .3s ease}.otp-input:focus,.mobile-input:focus{outline:none;border-color:#667eea}.otp-actions{display:flex;gap:15px;justify-content:center;margin:25px 0}.submit-btn{background:#28a745;color:#fff;border:none;padding:12px 25px;border-radius:6px;font-weight:600;cursor:pointer;transition:background .3s ease}.submit-btn:hover{background:#218838}.resend-btn{background:#6c757d;color:#fff;border:none;padding:12px 25px;border-radius:6px;font-weight:600;cursor:pointer;transition:background .3s ease}.resend-btn:hover:not(:disabled){background:#5a6268}.resend-btn:disabled{opacity:.6;cursor:not-allowed}.otp-timer{text-align:center;font-size:.9rem;color:#666;margin-top:15px}.address-content{text-align:center}.address-content p{margin-bottom:25px;font-size:1.1rem;color:#333}.address-options{display:flex;flex-direction:column;gap:15px}.create-custom-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 25px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.create-custom-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.use-existing-btn{background:#f8f9fa;color:#495057;border:2px solid #dee2e6;padding:15px 25px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.use-existing-btn:hover{background:#e9ecef;border-color:#adb5bd}@media (max-width: 768px){.abha-container{padding:20px;margin:10px}.quick-links-grid{grid-template-columns:1fr;gap:20px}.quick-link-card{padding:25px}.create-abha-header{flex-direction:column;gap:15px;align-items:flex-start}.consent-name-section{flex-direction:column;align-items:flex-start;gap:5px}.consent-name-input{width:100%;margin:5px 0}.otp-actions{flex-direction:column}.address-options{gap:12px}}@media (max-width: 480px){.abha-management{padding:10px}.abha-container{padding:15px}.quick-link-card{padding:20px}.card-icon{font-size:2rem}.quick-link-card h3{font-size:1.3rem}.otp-modal,.address-modal{width:95%;margin:10px}}.address-creation-form{max-width:600px;margin:0 auto;text-align:center}.address-creation-form h2{color:#2c3e50;margin-bottom:40px;font-size:1.8rem}.address-input-container{position:relative;margin-bottom:30px}.address-input-wrapper{display:flex;align-items:center;background:#fff;border:2px solid #e1e5e9;border-radius:8px;padding:0;max-width:400px;margin:0 auto;overflow:hidden}.address-input{flex:1;padding:15px;border:none;font-size:1rem;outline:none}.address-domain{background:#f8f9fa;padding:15px;color:#6c757d;font-weight:500;border-left:1px solid #e1e5e9}.address-suggestions{position:absolute;top:100%;left:50%;transform:translate(-50%);background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #0000001a;z-index:10;max-width:400px;width:100%;max-height:200px;overflow-y:auto}.suggestion-item{padding:12px 15px;cursor:pointer;border-bottom:1px solid #f1f1f1;transition:background .2s ease}.suggestion-item:hover{background:#f8f9fa}.suggestion-item:last-child{border-bottom:none}.address-validation-rules{display:grid;gap:8px;margin-bottom:30px;text-align:left;max-width:400px;margin-left:auto;margin-right:auto}.validation-item{display:flex;align-items:center;gap:8px;font-size:.9rem}.validation-item.valid{color:#28a745}.validation-item.invalid{color:#dc3545}.create-address-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 40px;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.create-address-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.create-address-btn:disabled{opacity:.6;cursor:not-allowed}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #eee}.register-patient-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 24px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease}.register-patient-btn:hover{transform:translateY(-1px);box-shadow:0 4px 15px #667eea66}.profile-content{display:grid;grid-template-columns:1fr 1fr;gap:30px}.profile-info-card,.abha-info-card,.communication-card,.matching-patients-card,.patient-summary-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:25px;margin-bottom:25px;box-shadow:0 2px 10px #0000000d}.profile-info-card h3,.abha-info-card h3,.communication-card h3,.matching-patients-card h3{color:#2c3e50;margin-bottom:20px;font-size:1.3rem;font-weight:600}.profile-basic-info{display:flex;gap:20px;align-items:flex-start}.profile-image-container{flex-shrink:0}.profile-image{width:120px;height:120px;border-radius:12px;object-fit:cover;border:3px solid #f8f9fa}.profile-details{flex:1}.profile-field,.abha-field,.comm-field,.summary-field{margin-bottom:15px}.profile-row,.comm-row,.summary-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:15px}.field-label{display:block;font-weight:500;color:#6c757d;font-size:.9rem;margin-bottom:5px}.field-value{display:block;color:#2c3e50;font-weight:600}.abha-info-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.abha-actions{display:flex;align-items:center;gap:10px}.action-btn{background:none;border:none;padding:8px;cursor:pointer;border-radius:6px;transition:background .2s ease}.action-btn:hover{background:#f8f9fa}.toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.3s;border-radius:24px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.slider{background-color:#667eea}input:checked+.slider:before{transform:translate(26px)}.comm-contact{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.contact-field{display:flex;flex-direction:column;position:relative}.edit-btn{position:absolute;right:0;top:20px;background:none;border:none;cursor:pointer;color:#667eea;font-size:1rem}.patient-match{background:#f8f9fa;border-radius:8px;padding:20px;margin-top:15px}.match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.match-header h4{margin:0;color:#2c3e50}.update-patient-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:.9rem;cursor:pointer}.match-field{margin-bottom:8px}.match-field .field-label{display:inline;margin-right:5px;font-size:.85rem}.match-field .field-value{display:inline;font-size:.85rem}.abha-highlight{color:#28a745!important;font-weight:700!important}.phone-highlight{color:#17a2b8!important;font-weight:600!important}.match-gender-date{display:flex;gap:15px;align-items:center;margin-top:10px}.gender-tag{background:#e3f2fd;color:#1976d2;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600}.date-value{color:#6c757d;font-size:.9rem}.patient-summary-card h3{color:#2c3e50;margin-bottom:5px}.patient-id{color:#6c757d;font-size:.9rem;margin-bottom:25px}.summary-section{margin-bottom:25px}.summary-section h4{color:#495057;font-size:1rem;margin-bottom:15px;padding-bottom:8px;border-bottom:1px solid #e9ecef}.register-modal{background:#fff;border-radius:12px;padding:0;max-width:500px;width:90%;box-shadow:0 20px 60px #0000004d}.register-content{padding:25px;text-align:center}.register-content p{margin-bottom:25px;font-size:1.1rem;color:#333}.register-options{display:flex;gap:15px;justify-content:center}.new-address-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 25px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.existing-address-btn{background:#f8f9fa;color:#495057;border:2px solid #dee2e6;padding:15px 25px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.new-address-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.existing-address-btn:hover{background:#e9ecef;border-color:#adb5bd}@media (max-width: 1024px){.profile-content{grid-template-columns:1fr}}@media (max-width: 768px){.profile-basic-info{flex-direction:column;text-align:center}.profile-row,.comm-row,.summary-row,.comm-contact{grid-template-columns:1fr}.match-header{flex-direction:column;gap:10px;align-items:stretch}.register-options{flex-direction:column}}.verification-form{max-width:600px;margin:0 auto;text-align:center}.verification-form h2{color:#2c3e50;margin-bottom:30px;font-size:1.8rem}.verification-options{display:flex;justify-content:center;gap:30px;margin-bottom:30px;flex-wrap:wrap}.verification-option{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:1rem;color:#495057}.verification-option input[type=radio]{transform:scale(1.2)}.verification-input-section{margin-bottom:30px}.verification-input-section label{display:block;margin-bottom:10px;font-weight:600;color:#495057;text-align:left}.verification-input{width:100%;padding:15px;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;margin-bottom:20px}.verification-input:focus{outline:none;border-color:#667eea}.otp-option-section{margin-top:20px}.otp-select{width:100%;padding:12px;border:2px solid #e1e5e9;border-radius:6px;font-size:1rem;background:#fff}.verification-actions{display:flex;gap:15px;justify-content:center}.search-btn{background:#6c757d;color:#fff;border:none;padding:12px 30px;border-radius:6px;font-weight:600;cursor:pointer;transition:background .3s ease}.search-btn:hover:not(:disabled){background:#5a6268}.search-btn:disabled{opacity:.6;cursor:not-allowed}.clear-btn{background:#f8f9fa;color:#495057;border:2px solid #dee2e6;padding:12px 30px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease}.clear-btn:hover{background:#e9ecef;border-color:#adb5bd}.verification-otp-modal{background:#fff;border-radius:12px;padding:0;max-width:450px;width:90%;box-shadow:0 20px 60px #0000004d}.verification-otp-input{width:100%;padding:15px;border:2px solid #e1e5e9;border-radius:6px;font-size:1.2rem;text-align:center;font-weight:600;letter-spacing:2px;margin:20px 0}.hmis-success-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:25px;margin-bottom:25px;box-shadow:0 2px 10px #0000000d}.hmis-success-card h3{color:#2c3e50;margin-bottom:20px;font-size:1.3rem;font-weight:600}.success-message{display:flex;align-items:center;gap:10px;background:#d4edda;color:#155724;padding:15px;border-radius:8px;margin-bottom:25px;border:1px solid #c3e6cb}.success-icon{background:#28a745;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.success-text{font-weight:600}.patient-info-section{margin-top:20px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:8px;border-bottom:1px solid #e9ecef}.section-header h4{color:#495057;font-size:1rem;margin:0;font-weight:600}.registered-badge{background:#28a745;color:#fff;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600}.info-grid{margin-bottom:20px}.info-item{margin-bottom:12px}.info-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}.info-label{display:block;font-size:.85rem;color:#6c757d;margin-bottom:3px;font-weight:500}.info-value{display:block;font-size:.9rem;color:#2c3e50;font-weight:600}.download-info{background:#f8f9fa;padding:15px;border-radius:8px;margin-top:15px;border:1px solid #e9ecef}.download-text{font-size:.9rem;color:#495057;margin-bottom:5px;font-weight:500}.download-filename{font-size:.85rem;color:#6c757d;font-family:monospace}.action-btn.download{background:#28a745;color:#fff;border-radius:6px;transition:all .3s ease}.action-btn.download:hover{background:#218838;transform:translateY(-1px)}@media (max-width: 768px){.verification-options{flex-direction:column;align-items:center;gap:15px}.verification-actions{flex-direction:column}.info-row{grid-template-columns:1fr}.section-header{flex-direction:column;gap:10px;align-items:flex-start}}.appointment-report{max-width:1400px;margin:0 auto;padding:20px;background-color:#f8f9fa;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.report-header{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:20px 30px;border-radius:12px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px}.report-header h1{margin:0;color:#2c3e50;font-size:28px;font-weight:700}.header-actions{display:flex;gap:15px}.filter-toggle-btn,.refresh-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.filter-toggle-btn{background-color:#3498db;color:#fff}.filter-toggle-btn:hover{background-color:#2980b9;transform:translateY(-2px)}.refresh-btn{background-color:#27ae60;color:#fff}.refresh-btn:hover{background-color:#219a52;transform:translateY(-2px)}.filters-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px;overflow:hidden}.filters-container{padding:30px;display:grid;grid-template-columns:1fr 2fr auto;gap:30px;align-items:end}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{font-weight:600;color:#2c3e50;font-size:14px}.filter-input{padding:12px 16px;border:2px solid #e1e8ed;border-radius:8px;font-size:14px;transition:all .3s ease;background-color:#fafbfc}.filter-input:focus{outline:none;border-color:#3498db;background-color:#fff;box-shadow:0 0 0 3px #3498db1a}.clear-filters-btn{padding:12px 24px;background-color:#e74c3c;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;height:fit-content}.clear-filters-btn:hover{background-color:#c0392b;transform:translateY(-2px)}.results-summary{background:#fff;padding:15px 25px;border-radius:8px;margin-bottom:15px;box-shadow:0 1px 5px #0000001a}.results-summary p{margin:0;color:#555;font-size:14px}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.error-message{color:#e74c3c;font-size:16px;margin-bottom:15px}.retry-btn{padding:10px 20px;background-color:#3498db;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.retry-btn:hover{background-color:#2980b9}.table-container{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;overflow:hidden;margin-bottom:20px}.appointments-table{width:100%;border-collapse:collapse;font-size:14px}.appointments-table th{background-color:#34495e;color:#fff;padding:18px 15px;text-align:left;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.appointments-table td{padding:18px 15px;border-bottom:1px solid #ecf0f1;vertical-align:middle}.appointment-row:hover{background-color:#f8f9fa}.case-id{font-family:Courier New,monospace;color:#2c3e50;font-weight:700}.patient-details{display:flex;flex-direction:column;gap:4px}.patient-name{font-weight:600;color:#2c3e50}.patient-id{font-size:12px;color:#7f8c8d;font-family:Courier New,monospace}.staff-info{display:flex;flex-direction:column;gap:4px}.staff-name{font-weight:600;color:#2c3e50}.staff-role{font-size:12px;color:#7f8c8d;font-style:italic}.status-badge{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-completed{background-color:#d5f4e6;color:#27ae60;border:1px solid #27ae60}.status-pending{background-color:#fef9e7;color:#f39c12;border:1px solid #f39c12}.status-cancelled{background-color:#fadbd8;color:#e74c3c;border:1px solid #e74c3c}.status-active{background-color:#ebf3fd;color:#3498db;border:1px solid #3498db}.status-unknown{background-color:#f8f9fa;color:#6c757d;border:1px solid #6c757d}.action-btn{padding:8px 12px;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;transition:all .2s ease}.view-btn{background-color:#3498db;color:#fff}.view-btn:hover{background-color:#2980b9}.edit-btn{background-color:#f39c12;color:#fff}.edit-btn:hover{background-color:#d68910}.no-appointments{text-align:center;padding:60px 20px;color:#7f8c8d}.no-appointments p:first-child{font-size:18px;font-weight:600;margin-bottom:10px}.no-appointments p:last-child{font-size:14px}.pagination{display:flex;justify-content:center;gap:8px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 1px 5px #0000001a}.page-btn{padding:10px 15px;border:2px solid #e1e8ed;background-color:#fff;color:#2c3e50;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s ease}.page-btn:hover:not(:disabled){border-color:#3498db;color:#3498db}.page-btn.active{background-color:#3498db;border-color:#3498db;color:#fff}.page-btn:disabled{background-color:#f8f9fa;border-color:#e1e8ed;color:#bdc3c7;cursor:not-allowed}@media (max-width: 1200px){.filters-container{grid-template-columns:1fr;gap:20px}.filter-actions{text-align:center}}@media (max-width: 768px){.appointment-report{padding:10px}.report-header{flex-direction:column;gap:15px;padding:20px}.header-actions{width:100%;justify-content:center}.table-container{overflow-x:auto}.appointments-table{min-width:800px}.appointments-table th,.appointments-table td{padding:12px 8px;font-size:12px}.pagination{flex-wrap:wrap;gap:5px}.page-btn{padding:8px 12px;font-size:12px}}.billing-report{padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#f8f9fa;min-height:100vh}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;color:#fff;box-shadow:0 4px 6px #0000001a}.report-header h1{margin:0;font-size:28px;font-weight:600}.header-actions button{padding:10px 16px;border:none;background-color:#fff3;color:#fff;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-actions button:hover{background-color:#ffffff4d;transform:translateY(-2px)}.filters-section{margin-bottom:20px;background:#fff;border:1px solid #e3e6f0;padding:20px;border-radius:10px;box-shadow:0 2px 4px #0000000d}.filters-container{display:flex;gap:20px;flex-wrap:wrap;align-items:end}.filter-group{display:flex;flex-direction:column;flex:1;min-width:200px}.filter-group label{margin-bottom:8px;font-weight:600;color:#374151;font-size:14px}.filter-input{padding:10px 12px;font-size:14px;border:2px solid #e5e7eb;border-radius:6px;transition:border-color .3s ease}.filter-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.filter-actions{display:flex;align-items:flex-end}.clear-filters-btn{padding:10px 18px;background-color:#6c757d;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease}.clear-filters-btn:hover{background-color:#5a6268;transform:translateY(-1px)}.error-container{background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca;padding:15px 20px;border-radius:8px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.error-message{margin:0;font-weight:500}.retry-btn{padding:8px 16px;background-color:#dc2626;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.results-summary{margin-bottom:15px;font-weight:600;color:#374151;background:#fff;padding:15px 20px;border-radius:8px;border:1px solid #e5e7eb}.table-container{overflow-x:auto;background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000000d}.bills-table{width:100%;border-collapse:collapse}.bills-table th,.bills-table td{padding:12px 15px;text-align:left;border-bottom:1px solid #e5e7eb;font-size:14px}.bills-table th{background:linear-gradient(135deg,#f8fafc,#e2e8f0);font-weight:600;color:#374151;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.bill-row:hover{background-color:#f8fafc;transition:background-color .2s ease}.bill-id{font-weight:600;color:#1f2937}.patient-info{min-width:200px}.patient-name{font-weight:600;color:#2563eb;margin-bottom:4px}.patient-id,.patient-phone,.patient-email{font-size:12px;color:#6b7280;margin-bottom:2px}.amount{font-weight:600;color:#059669}.payment-mode{padding:4px 8px;background-color:#e0f2fe;color:#0277bd;border-radius:4px;font-size:12px;font-weight:500}.status-badge{padding:6px 12px;border-radius:20px;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.status-paid{background-color:#d1fae5;color:#065f46}.status-pending{background-color:#fef3c7;color:#92400e}.status-cancelled{background-color:#fee2e2;color:#b91c1c}.status-active{background-color:#dbeafe;color:#1d4ed8}.status-unknown{background-color:#f3f4f6;color:#6b7280}.actions{display:flex;gap:8px}.action-btn{padding:6px 10px;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease}.view-btn{background-color:#eff6ff;color:#1d4ed8}.view-btn:hover{background-color:#dbeafe}.edit-btn{background-color:#f0fdf4;color:#16a34a}.edit-btn:hover{background-color:#dcfce7}.pagination{margin-top:20px;display:flex;justify-content:center;gap:8px;padding:20px}.page-btn{padding:8px 12px;border:2px solid #e5e7eb;background:#fff;color:#374151;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.page-btn:hover:not(:disabled){border-color:#667eea;color:#667eea}.page-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:#6b7280}.loading-spinner{border:4px solid #f3f4f6;border-top:4px solid #667eea;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin-bottom:15px}.no-bills{text-align:center;padding:60px 20px;color:#6b7280;font-style:italic}.no-bills p{margin:10px 0;font-size:16px}@media (max-width: 768px){.billing-report{padding:15px}.report-header{flex-direction:column;gap:15px;text-align:center}.filters-container{flex-direction:column}.filter-group{min-width:100%}.bills-table{font-size:12px}.bills-table th,.bills-table td{padding:8px 10px}.pagination{flex-wrap:wrap;gap:5px}.page-btn{padding:6px 10px;font-size:12px}}.filters-section{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.filters-container{max-width:100%}.filter-row{display:flex;gap:20px;margin-bottom:15px;align-items:end;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;min-width:180px;flex:1}.filter-group label{font-weight:600;color:#495057;margin-bottom:5px;font-size:14px}.filter-select,.filter-input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;background-color:#fff;transition:border-color .15s ease-in-out}.filter-select:focus,.filter-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40}.filter-actions{display:flex;gap:10px;align-items:end;margin-top:20px}.search-btn,.clear-filters-btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .15s ease-in-out}.search-btn{background-color:#007bff;color:#fff}.clear-filters-btn{background-color:#6c757d;color:#fff}.clear-filters-btn:hover{background-color:#5a6268}@media (max-width: 768px){.filter-row{flex-direction:column;gap:15px}.filter-group{min-width:100%}}.ipd-balance-report{padding:20px;background-color:#f8f9fa;min-height:100vh}.report-header h2{color:#495057;margin-bottom:20px;font-weight:600}.filters-section{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.filter-row{display:flex;gap:15px;margin-bottom:15px;flex-wrap:wrap}.filter-row:last-child{margin-bottom:0}.filter-group{display:flex;flex-direction:column;min-width:150px;flex:1}.filter-group label{font-weight:500;margin-bottom:5px;color:#495057;font-size:14px}.filter-group select,.filter-group input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;background-color:#fff}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.search-btn{background-color:#007bff;color:#fff;border:none;padding:8px 20px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;margin-top:22px;height:fit-content}.search-btn:hover{background-color:#0056b3}.search-btn:disabled{background-color:#6c757d;cursor:not-allowed}.search-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;background:#fff;padding:15px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.search-input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;width:300px;font-size:14px}.search-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.records-info{font-size:14px;color:#6c757d}.error-message{background-color:#f8d7da;color:#721c24;padding:15px;border-radius:6px;margin-bottom:20px;border:1px solid #f5c6cb;font-size:14px}.loading-message{text-align:center;padding:20px;font-size:16px;color:#6c757d;background:#fff;border-radius:8px;margin-bottom:20px}.table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.balance-table{width:100%;border-collapse:collapse;font-size:14px}.balance-table th{background-color:#495057;color:#fff;padding:12px 8px;text-align:left;font-weight:600;border-right:1px solid #6c757d}.balance-table th:last-child{border-right:none}.balance-table td{padding:10px 8px;border-bottom:1px solid #dee2e6;border-right:1px solid #dee2e6}.balance-table td:last-child{border-right:none}.balance-table tbody tr:hover{background-color:#f8f9fa}.amount-cell{text-align:right;font-weight:500}.balance-due{color:#dc3545}.balance-paid{color:#28a745}.no-data{text-align:center;padding:40px;color:#6c757d;font-style:italic}.total-row{background-color:#e9ecef;font-weight:700}.total-row td{border-top:2px solid #495057;padding:12px 8px}@media (max-width: 768px){.filter-row{flex-direction:column}.search-section{flex-direction:column;gap:10px}.search-input{width:100%}.table-container{overflow-x:auto}.balance-table{min-width:1200px}}@media (max-width: 480px){.ipd-balance-report{padding:10px}.filters-section{padding:15px}.balance-table th,.balance-table td{padding:8px 4px;font-size:12px}}.checkup-report-container{padding:20px;background:#f5f5f5;min-height:100vh}.checkup-report-title{color:#e91e63;font-size:24px;margin:0 0 20px;font-weight:700}.checkup-filters-row{display:flex;gap:15px;margin-bottom:15px;flex-wrap:wrap}.checkup-filter-select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff}.checkup-filter-select:focus{outline:none;border-color:#e91e63}.checkup-search-btn{background:#1976d2;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-weight:700;margin-top:20px}.checkup-controls-row{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.checkup-search-input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.checkup-results-info{background:#e3f2fd;padding:8px 16px;border-radius:4px;font-weight:700;color:#1976d2;border:1px solid #bbdefb}.checkup-export-btn{background:#4caf50;color:#fff;border:none;padding:8px 12px;border-radius:4px;cursor:pointer;font-size:16px}.checkup-export-btn:hover{background:#43a047}.checkup-table{width:100%;border-collapse:collapse;font-size:14px}.checkup-table th{background:#f8f9fa;padding:12px 8px;text-align:left;font-weight:700;border-bottom:2px solid #dee2e6;color:#495057;white-space:nowrap}.checkup-table td{padding:10px 8px;border-bottom:1px solid #dee2e6;color:#495057}.checkup-link{color:#1976d2;cursor:pointer;text-decoration:underline}.checkup-finding{max-width:200px;word-wrap:break-word;font-size:12px}@media (max-width: 768px){.checkup-filters-row{flex-direction:column}.checkup-filter-group{min-width:100%}.checkup-controls-row{flex-direction:column;align-items:stretch}.checkup-search-group{max-width:100%}.checkup-table-container{overflow-x:scroll}}.checkup-report-container{padding:20px;background:#f5f5f5;min-height:100vh;font-family:Arial,sans-serif}.checkup-report-header{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.checkup-report-title{color:#e91e63;font-size:24px;margin:0 0 20px;font-weight:700;text-align:center}.checkup-filters-row{display:flex;gap:15px;margin-bottom:15px;flex-wrap:wrap;align-items:end}.checkup-filter-group{display:flex;flex-direction:column;min-width:150px}.checkup-filter-group label{font-weight:700;margin-bottom:5px;color:#333;font-size:14px}.checkup-filter-select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff;height:38px}.checkup-filter-select:focus{outline:none;border-color:#e91e63;box-shadow:0 0 0 2px #e91e6333}.checkup-search-btn{background:#1976d2;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-weight:700;height:38px;display:flex;align-items:center;gap:5px}.checkup-search-btn:hover{background:#1565c0}.checkup-controls-row{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-top:15px;padding-top:15px;border-top:1px solid #eee}.checkup-search-group{flex:1;max-width:300px}.checkup-search-input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.checkup-search-input:focus{outline:none;border-color:#e91e63;box-shadow:0 0 0 2px #e91e6333}.checkup-results-info{background:#e3f2fd;padding:10px 16px;border-radius:4px;font-weight:700;color:#1976d2;border:1px solid #bbdefb;min-width:40px;text-align:center}.checkup-export-buttons{display:flex;gap:5px}.checkup-export-btn{background:#4caf50;color:#fff;border:none;padding:10px 12px;border-radius:4px;cursor:pointer;font-size:16px;min-width:40px;display:flex;align-items:center;justify-content:center}.checkup-export-btn:hover{background:#43a047;transform:translateY(-1px)}.checkup-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}.checkup-table{width:100%;border-collapse:collapse;font-size:14px;min-width:1200px}.checkup-table th{background:#f8f9fa;padding:12px 8px;text-align:left;font-weight:700;border-bottom:2px solid #dee2e6;color:#495057;white-space:nowrap;position:sticky;top:0;z-index:10}.checkup-table td{padding:10px 8px;border-bottom:1px solid #dee2e6;color:#495057;vertical-align:top}.checkup-table-row{transition:background-color .2s ease}.checkup-table-row:hover{background:#f8f9fa}.checkup-table-row:nth-child(2n){background:#fdfdfd}.checkup-table-row:nth-child(2n):hover{background:#f0f0f0}.checkup-link{color:#1976d2;cursor:pointer;text-decoration:underline;font-weight:500}.checkup-link:hover{color:#1565c0}.checkup-finding{max-width:250px;word-wrap:break-word;font-size:12px;line-height:1.4}.checkup-loading,.checkup-no-data{text-align:center;padding:40px;color:#666;font-style:italic}.checkup-loading{color:#1976d2}@media (max-width: 768px){.checkup-report-container{padding:10px}.checkup-filters-row{flex-direction:column}.checkup-filter-group{min-width:100%}.checkup-controls-row{flex-direction:column;align-items:stretch}.checkup-search-group{max-width:100%}.checkup-export-buttons{justify-content:center}}@media print{.checkup-report-header{box-shadow:none;border:1px solid #ccc}.checkup-export-buttons,.checkup-search-input{display:none}}.ipd-report-container{padding:20px;background-color:#f8f9fa;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.ipd-report-header{background-color:#fff;padding:24px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.ipd-report-title{font-size:28px;font-weight:600;color:#2c3e50;margin:0 0 24px;border-bottom:3px solid #3498db;padding-bottom:12px}.ipd-filters-row{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap;align-items:end}.ipd-filter-group{display:flex;flex-direction:column;min-width:140px}.ipd-filter-group label{font-weight:500;color:#34495e;margin-bottom:4px;font-size:14px}.ipd-filter-select{padding:8px 12px;border:1px solid #bdc3c7;border-radius:4px;font-size:14px;background-color:#fff;color:#2c3e50;transition:border-color .3s ease}.ipd-filter-select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.ipd-search-btn{padding:8px 16px;background-color:#3498db;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .3s ease;height:fit-content}.ipd-search-btn:hover{background-color:#2980b9}.ipd-controls-row{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:16px;flex-wrap:wrap}.ipd-search-group{flex:1;max-width:300px}.ipd-search-input{width:100%;padding:10px 16px;border:1px solid #bdc3c7;border-radius:4px;font-size:14px;transition:border-color .3s ease}.ipd-search-input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.ipd-results-info{font-weight:600;color:#2c3e50;background-color:#ecf0f1;padding:8px 16px;border-radius:20px;font-size:14px;min-width:60px;text-align:center}.ipd-export-buttons{display:flex;gap:8px}.ipd-export-btn{width:36px;height:36px;border:1px solid #bdc3c7;background-color:#fff;border-radius:4px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.ipd-export-btn:hover{background-color:#ecf0f1;border-color:#95a5a6;transform:translateY(-1px)}.ipd-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;overflow-x:auto}.ipd-table{width:100%;border-collapse:collapse;font-size:14px;min-width:1200px}.ipd-table thead{background-color:#34495e;color:#fff}.ipd-table thead th{padding:16px 12px;text-align:left;font-weight:600;border-right:1px solid #2c3e50;position:relative;cursor:pointer;transition:background-color .3s ease}.ipd-table thead th:last-child{border-right:none}.ipd-table thead th:hover{background-color:#2c3e50}.ipd-table tbody tr{border-bottom:1px solid #ecf0f1;transition:background-color .3s ease}.ipd-table tbody tr:hover{background-color:#f8f9fa}.ipd-table tbody tr:last-child{border-bottom:none}.ipd-table-row td{padding:12px;color:#2c3e50;border-right:1px solid #ecf0f1}.ipd-table-row td:last-child{border-right:none}.ipd-link{color:#3498db!important;font-weight:500;cursor:pointer;text-decoration:underline}.ipd-link:hover{color:#2980b9!important}.ipd-status{padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500;text-transform:capitalize}.ipd-status.discharged{background-color:#d5f4e6;color:#27ae60}.ipd-status.admitted,.ipd-status.active{background-color:#fef9e7;color:#f39c12}.ipd-status.transferred{background-color:#ebf3fd;color:#3498db}.ipd-finding{max-width:200px;word-wrap:break-word;line-height:1.4}.ipd-loading,.ipd-no-data{text-align:center;padding:40px 20px;color:#7f8c8d;font-style:italic;font-size:16px}.ipd-loading{background-color:#f8f9fa}.ipd-no-data{background-color:#fff3cd;color:#856404}@media (max-width: 1200px){.ipd-filters-row{flex-direction:column;align-items:stretch}.ipd-filter-group{min-width:auto;margin-bottom:8px}.ipd-controls-row{flex-direction:column;align-items:stretch;gap:12px}.ipd-search-group{max-width:none}.ipd-export-buttons{justify-content:center}}@media (max-width: 768px){.ipd-report-container{padding:12px}.ipd-report-header{padding:16px}.ipd-report-title{font-size:24px}.ipd-table-container{border-radius:4px}.ipd-table{font-size:12px}.ipd-table thead th,.ipd-table-row td{padding:8px}.ipd-results-info{font-size:12px;padding:6px 12px}}@media (max-width: 480px){.ipd-filters-row{gap:8px}.ipd-search-btn{width:100%;justify-content:center}.ipd-export-buttons{flex-wrap:wrap}.ipd-export-btn{width:32px;height:32px;font-size:14px}}@media print{.ipd-report-container{background-color:#fff;padding:0}.ipd-report-header{box-shadow:none;border-bottom:2px solid #34495e;page-break-inside:avoid}.ipd-controls-row,.ipd-filters-row{display:none}.ipd-table-container{box-shadow:none}.ipd-table{border:1px solid #34495e}.ipd-table thead th{background-color:#34495e!important;color:#fff!important}.ipd-table tbody tr:hover{background-color:transparent}}.ipd-table-container::-webkit-scrollbar{height:8px}.ipd-table-container::-webkit-scrollbar-track{background:#f1f1f1}.ipd-table-container::-webkit-scrollbar-thumb{background:#bdc3c7;border-radius:4px}.ipd-table-container::-webkit-scrollbar-thumb:hover{background:#95a5a6}.ipd-loading{background:linear-gradient(to right,#f6f7f8,#edeef1 20%,#f6f7f8 40% 100%);background-size:800px 104px;animation:shimmer 1.5s linear infinite}.ipd-table tbody tr:focus{outline:2px solid #3498db;outline-offset:-2px}.ipd-export-btn:focus,.ipd-search-btn:focus{outline:2px solid #3498db;outline-offset:2px}.ipd-discharged-container{padding:20px;background-color:#f8f9fa;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.ipd-discharged-header{background-color:#fff;padding:24px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.ipd-discharged-title{font-size:28px;font-weight:600;color:#2c3e50;margin:0 0 24px;border-bottom:3px solid #e74c3c;padding-bottom:12px}.ipd-discharged-filters-row{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap;align-items:end}.ipd-discharged-filter-group{display:flex;flex-direction:column;min-width:140px}.ipd-discharged-filter-group label{font-weight:500;color:#34495e;margin-bottom:4px;font-size:14px}.ipd-discharged-filter-select{padding:8px 12px;border:1px solid #bdc3c7;border-radius:4px;font-size:14px;background-color:#fff;color:#2c3e50;transition:border-color .3s ease}.ipd-discharged-filter-select:focus{outline:none;border-color:#e74c3c;box-shadow:0 0 0 2px #e74c3c33}.ipd-discharged-search-btn{padding:8px 16px;background-color:#e74c3c;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .3s ease;height:fit-content}.ipd-discharged-search-btn:hover{background-color:#c0392b}.ipd-discharged-controls-row{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:16px;flex-wrap:wrap}.ipd-discharged-search-group{flex:1;max-width:300px}.ipd-discharged-search-input{width:100%;padding:10px 16px;border:1px solid #bdc3c7;border-radius:4px;font-size:14px;transition:border-color .3s ease}.ipd-discharged-search-input:focus{outline:none;border-color:#e74c3c;box-shadow:0 0 0 2px #e74c3c33}.ipd-discharged-results-info{font-weight:600;color:#2c3e50;background-color:#ecf0f1;padding:8px 16px;border-radius:20px;font-size:14px;min-width:60px;text-align:center}.ipd-discharged-export-buttons{display:flex;gap:8px}.ipd-discharged-export-btn{width:36px;height:36px;border:1px solid #bdc3c7;background-color:#fff;border-radius:4px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.ipd-discharged-export-btn:hover{background-color:#ecf0f1;border-color:#95a5a6;transform:translateY(-1px)}.ipd-discharged-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;overflow-x:auto}.ipd-discharged-table{width:100%;border-collapse:collapse;font-size:14px;min-width:1400px}.ipd-discharged-table thead{background-color:#34495e;color:#fff}.ipd-discharged-table thead th{padding:16px 12px;text-align:left;font-weight:600;border-right:1px solid #2c3e50;position:relative;cursor:pointer;transition:background-color .3s ease}.ipd-discharged-table thead th:last-child{border-right:none}.ipd-discharged-table thead th:hover{background-color:#2c3e50}.ipd-discharged-table tbody tr{border-bottom:1px solid #ecf0f1;transition:background-color .3s ease}.ipd-discharged-table tbody tr:hover{background-color:#f8f9fa}.ipd-discharged-table tbody tr:last-child{border-bottom:none}.ipd-discharged-table-row td{padding:12px;color:#2c3e50;border-right:1px solid #ecf0f1}.ipd-discharged-table-row td:last-child{border-right:none}.ipd-discharged-link{color:#e74c3c!important;font-weight:500;cursor:pointer;text-decoration:underline}.ipd-discharged-link:hover{color:#c0392b!important}.ipd-discharged-status{padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500;text-transform:capitalize}.ipd-discharged-status.normal{background-color:#d5f4e6;color:#27ae60}.ipd-discharged-status.stable{background-color:#d1ecf1;color:#17a2b8}.ipd-discharged-status.vital-stable{background-color:#fef9e7;color:#f39c12}.ipd-discharged-status.critical{background-color:#fadbd8;color:#e74c3c}.ipd-discharged-days{font-weight:600;color:#2c3e50;text-align:center}.ipd-discharged-loading,.ipd-discharged-no-data{text-align:center;padding:40px 20px;color:#7f8c8d;font-style:italic;font-size:16px}.ipd-discharged-loading{background-color:#f8f9fa}.ipd-discharged-no-data{background-color:#fff3cd;color:#856404}@media (max-width: 1200px){.ipd-discharged-filters-row{flex-direction:column;align-items:stretch}.ipd-discharged-filter-group{min-width:auto;margin-bottom:8px}.ipd-discharged-controls-row{flex-direction:column;align-items:stretch;gap:12px}.ipd-discharged-search-group{max-width:none}.ipd-discharged-export-buttons{justify-content:center}}@media (max-width: 768px){.ipd-discharged-container{padding:12px}.ipd-discharged-header{padding:16px}.ipd-discharged-title{font-size:24px}.ipd-discharged-table-container{border-radius:4px}.ipd-discharged-table{font-size:12px}.ipd-discharged-table thead th,.ipd-discharged-table-row td{padding:8px}.ipd-discharged-results-info{font-size:12px;padding:6px 12px}}@media (max-width: 480px){.ipd-discharged-filters-row{gap:8px}.ipd-discharged-search-btn{width:100%;justify-content:center}.ipd-discharged-export-buttons{flex-wrap:wrap}.ipd-discharged-export-btn{width:32px;height:32px;font-size:14px}}@media print{.ipd-discharged-container{background-color:#fff;padding:0}.ipd-discharged-header{box-shadow:none;border-bottom:2px solid #34495e;page-break-inside:avoid}.ipd-discharged-controls-row,.ipd-discharged-filters-row{display:none}.ipd-discharged-table-container{box-shadow:none}.ipd-discharged-table{border:1px solid #34495e}.ipd-discharged-table thead th{background-color:#34495e!important;color:#fff!important}.ipd-discharged-table tbody tr:hover{background-color:transparent}}.ipd-discharged-table-container::-webkit-scrollbar{height:8px}.ipd-discharged-table-container::-webkit-scrollbar-track{background:#f1f1f1}.ipd-discharged-table-container::-webkit-scrollbar-thumb{background:#bdc3c7;border-radius:4px}.ipd-discharged-table-container::-webkit-scrollbar-thumb:hover{background:#95a5a6}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.ipd-discharged-loading{background:linear-gradient(to right,#f6f7f8,#edeef1 20%,#f6f7f8 40% 100%);background-size:800px 104px;animation:shimmer 1.5s linear infinite}.ipd-discharged-table tbody tr:focus{outline:2px solid #e74c3c;outline-offset:-2px}.ipd-discharged-export-btn:focus,.ipd-discharged-search-btn:focus{outline:2px solid #e74c3c;outline-offset:2px}.content-card{background:#fcfcfc;border-radius:10px;box-shadow:0 1px 4px #00000014;padding:25px 20px 15px;margin:16px auto}.card-header{padding-bottom:8px;border-bottom:1px solid #eee;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.table-container{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;background:#fff}.data-table th,.data-table td{border:1px solid #e5e5e5;text-align:left;padding:9px 12px;font-size:15px}.data-table th{background:#f7f7f7;font-weight:600}.data-table tr:nth-child(2n){background:#fafafa}.no-data{text-align:center;color:#cc5050;font-style:italic;padding:24px 0}.loading{display:flex;align-items:center;justify-content:center;min-height:120px}.spinner,.spinner:before,.spinner:after{border-radius:50%}.spinner{width:36px;height:36px;background:transparent;display:inline-block;position:relative;border-top:4px solid #019676;border-right:4px solid transparent;animation:spin .7s linear infinite;margin-right:12px}.error{color:#c1272d;text-align:center;margin:16px 0}.btn.btn-primary{padding:7px 20px;color:#fff;background:#40b89c;border:none;border-radius:5px;font-weight:600;cursor:pointer;transition:background .18s}.btn.btn-primary:hover{background:#279781}.content-card{background:#fefefe;border-radius:8px;padding:20px 18px;margin:20px auto;box-shadow:0 1px 8px #0000001a}.card-header{border-bottom:1px solid #ddd;padding-bottom:12px;margin-bottom:15px;font-size:22px;font-weight:600;color:#284d4d}.table-container{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;background-color:#fff;font-size:14px}.data-table th,.data-table td{border:1px solid #ccc;padding:9px 10px;text-align:left}.data-table th{background-color:#e0f2f1;font-weight:700;color:#00514d}.data-table tbody tr:nth-child(2n){background-color:#f9fcfc}.loading{display:flex;align-items:center;justify-content:center;padding:30px;font-size:16px;color:#266564}.spinner{border:4px solid rgba(0,0,0,.1);border-left-color:#20a090;border-radius:50%;width:28px;height:28px;animation:spin 1s linear infinite;margin-right:12px}.error{color:#c1272d;padding:18px 0;font-weight:600;font-size:16px;text-align:center}.no-data{padding:30px 0;text-align:center;font-style:italic;font-size:15px;color:#757575}.content-card{background:#fefefe;border-radius:10px;box-shadow:0 1px 6px #00000024;padding:26px 24px 20px;margin:16px auto 30px}.card-header{font-size:22px;font-weight:700;color:#29615e;padding-bottom:12px;border-bottom:2px solid #d2e8e2;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.table-container{overflow-x:auto;max-width:100%;border-radius:8px;box-shadow:inset 0 0 30px #eef5f5;padding:10px;background-color:#f9fefc}.data-table{width:100%;border-collapse:separate;border-spacing:0 8px;background-color:#fff;font-size:14px;box-shadow:0 3px 8px #0000001f}.data-table th,.data-table td{padding:10px 14px;text-align:left;vertical-align:middle;border-bottom:1px solid #e1e6e5;color:#204040}.data-table th{background-color:#299186;font-weight:600;text-transform:uppercase;font-size:13px;letter-spacing:.05em;white-space:nowrap}.data-table tbody tr:hover{background-color:#e6f2f1;cursor:default}.data-table tbody tr td:nth-child(2n){background-color:#f5faf9}.loading{display:flex;align-items:center;justify-content:center;min-height:120px;font-weight:600;color:#277a70;font-size:16px}.spinner{border:4px solid #c6dfdc;border-top:4px solid #299186;border-radius:50%;width:28px;height:28px;animation:spin 1.1s linear infinite;margin-right:14px}.error{text-align:center;color:#c2201f;font-weight:700;padding:15px 0;font-size:16px}.no-data{font-style:italic;color:#276254;font-size:15px;padding:32px 0;text-align:center}@media (max-width: 1200px){.content-card{max-width:100%;padding:16px 12px}.data-table th,.data-table td{font-size:12px;padding:8px 10px}}@media (max-width: 768px){.data-table{font-size:11px}.data-table th,.data-table td{padding:6px 8px}}.inventory-report{padding:20px;background-color:#f5f7fa;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #667eea4d}.report-header h1{color:#fff;margin:0;font-size:28px;font-weight:600}.header-actions{display:flex;gap:10px}.refresh-btn{background-color:#fff3;color:#fff;border:2px solid white;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;transition:all .3s ease}.refresh-btn:hover{background-color:#fff;color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.filters-section{background-color:#fff;border-radius:12px;padding:25px;margin-bottom:20px;box-shadow:0 2px 10px #00000014}.filters-container{display:flex;flex-direction:column;gap:20px;align-items:flex-start}.filter-row{display:flex;gap:15px;flex-wrap:wrap;align-items:flex-end;justify-content:flex-start}.filter-group{display:flex;flex-direction:column;gap:8px;flex:1;min-width:200px}.filter-group label{font-size:14px;font-weight:600;color:#333;display:flex;align-items:center;gap:5px}.filter-select,.filter-input{padding:10px 15px;border:2px solid #e1e8ed;border-radius:8px;font-size:14px;background-color:#f9fafb;transition:all .3s ease;outline:none}.filter-select:focus,.filter-input:focus{border-color:#667eea;background-color:#fff;box-shadow:0 0 0 3px #667eea1a}.filter-actions{display:flex;gap:10px;align-items:flex-end;margin-left:0}.search-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 25px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease}.search-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.clear-filters-btn{background-color:#f44336;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease}.clear-filters-btn:hover{background-color:#d32f2f;transform:translateY(-2px);box-shadow:0 4px 12px #f4433666}.results-summary{background-color:#fff;padding:15px 20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #0000000f}.results-summary p{margin:0;color:#555;font-size:15px}.results-summary strong{color:#667eea;font-weight:600}.total-quantity{color:#28a745;font-weight:600}.error-container{background-color:#ffebee;border:2px solid #f44336;border-radius:8px;padding:20px;margin-bottom:20px;display:flex;flex-direction:column;align-items:center;gap:15px}.error-message{color:#c62828;font-size:16px;font-weight:500;margin:0}.retry-btn{background-color:#f44336;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease}.retry-btn:hover{background-color:#d32f2f;transform:translateY(-2px)}.table-container{background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #00000014}.issues-table{width:100%;border-collapse:collapse}.issues-table thead{background:linear-gradient(135deg,#667eea,#764ba2)}.issues-table thead th{padding:15px 12px;text-align:left;font-size:13px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px}.issues-table tbody tr{border-bottom:1px solid #f0f0f0;transition:all .2s ease}.issues-table tbody tr:hover{background-color:#f8f9ff;transform:translate(3px);box-shadow:0 2px 8px #667eea1a}.issues-table tbody td{padding:15px 12px;font-size:14px;color:#333}.issue-id{color:#667eea;font-weight:600}.issue-to-info{display:flex;flex-direction:column;gap:5px}.issue-to-name{font-weight:500;color:#333}.user-type-badge{display:inline-block;padding:3px 8px;background-color:#e3f2fd;color:#1976d2;border-radius:4px;font-size:11px;font-weight:500;text-transform:uppercase;width:fit-content}.category-badge{display:inline-block;padding:6px 12px;background-color:#f0f4ff;color:#667eea;border-radius:6px;font-size:12px;font-weight:500}.item-name{font-weight:500;color:#444}.batch-no{color:#666;font-family:Courier New,monospace;font-size:13px}.quantity{color:#28a745;font-size:15px}.status-badge{display:inline-block;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-issued{background-color:#fff3cd;color:#856404;border:1px solid #ffeaa7}.status-pending{background-color:#fff3cd;color:#ff9800;border:1px solid #ffe082}.status-returned{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-unknown{background-color:#e0e0e0;color:#666;border:1px solid #ccc}.no-issues{padding:60px 20px;text-align:center}.no-issues p{color:#666;font-size:16px;margin:10px 0}.no-issues p:first-child{font-size:20px;font-weight:600;color:#333}.pagination{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:25px;padding:20px}.page-btn{padding:10px 15px;border:2px solid #e1e8ed;background-color:#fff;color:#667eea;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease}.page-btn:hover:not(:disabled){background-color:#667eea;color:#fff;border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.page-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea;box-shadow:0 4px 12px #667eea66}.page-btn:disabled{opacity:.5;cursor:not-allowed}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.loading-spinner{width:50px;height:50px;border:5px solid #f3f3f3;border-top:5px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.loading-container p{color:#666;font-size:16px;font-weight:500}@media (max-width: 1200px){.filter-group{min-width:180px}.issues-table{font-size:13px}}@media (max-width: 768px){.inventory-report{padding:15px}.report-header{flex-direction:column;gap:15px;text-align:center}.report-header h1{font-size:22px}.filter-row{flex-direction:column}.filter-group{min-width:100%}.table-container{overflow-x:auto}.issues-table{min-width:1000px}.pagination{flex-wrap:wrap}}@media (max-width: 480px){.report-header h1{font-size:20px}.filter-select,.filter-input,.results-summary p{font-size:13px}}.return-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all .3s ease;white-space:nowrap}.return-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #28a74566}.return-btn:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background-color:#fff;border-radius:12px;width:90%;max-width:500px;box-shadow:0 10px 40px #0000004d;animation:slideUp .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:2px solid #f0f0f0;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0}.modal-header h2{margin:0;color:#fff;font-size:22px;font-weight:600}.modal-close{background:none;border:none;color:#fff;font-size:28px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.modal-close:hover{background-color:#fff3;transform:rotate(90deg)}.modal-body{padding:25px;max-height:60vh;overflow-y:auto}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:14px}.modal-input{width:100%;padding:12px 15px;border:2px solid #e1e8ed;border-radius:8px;font-size:14px;background-color:#f9fafb;transition:all .3s ease;outline:none;box-sizing:border-box}.modal-input:focus{border-color:#667eea;background-color:#fff;box-shadow:0 0 0 3px #667eea1a}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 25px;border-top:2px solid #f0f0f0}.modal-cancel-btn,.modal-submit-btn{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.modal-cancel-btn{background-color:#f0f0f0;color:#666}.modal-cancel-btn:hover{background-color:#e0e0e0;transform:translateY(-2px)}.modal-submit-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.modal-submit-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #28a74566}.modal-submit-btn:disabled,.modal-cancel-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.issues-table th:last-child{text-align:center}.issues-table td:last-child{text-align:center}.required{color:#f44336;margin-left:3px;font-weight:700}.modal-input:required:invalid{border-color:#ffcdd2}.modal-input:required:valid{border-color:#c8e6c9}.billing-search-container{padding:20px;background-color:#f5f7fa;min-height:100vh}.search-section{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px}.search-header{text-align:center;margin-bottom:30px}.search-header h2{margin:0 0 10px;color:#2c3e50;font-size:28px}.search-description{color:#7f8c8d;font-size:14px;margin:0}.search-box{display:flex;gap:15px;max-width:700px;margin:0 auto}.search-input-wrapper{position:relative;flex:1}.search-input{width:100%;padding:15px 45px 15px 15px;font-size:16px;border:2px solid #e0e0e0;border-radius:8px;outline:none;transition:all .3s ease}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.clear-input-btn{position:absolute;right:15px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;color:#95a5a6;cursor:pointer;padding:5px;transition:color .2s ease}.clear-input-btn:hover{color:#e74c3c}.search-btn{padding:15px 30px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;white-space:nowrap;display:flex;align-items:center;gap:8px}.search-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.search-btn:disabled{background:linear-gradient(135deg,#95a5a6,#7f8c8d);cursor:not-allowed;transform:none}.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}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:15px 20px;border-radius:8px;margin-top:20px;display:flex;align-items:center;gap:10px}.alert-error{background-color:#fff5f5;color:#c53030;border-left:4px solid #c53030}.alert-icon{font-size:20px}.results-section{animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.results-header{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.results-title{display:flex;align-items:center;gap:20px}.results-title h3{margin:0;color:#2c3e50;font-size:22px}.case-info{display:flex;align-items:center;gap:10px}.case-id-label{color:#7f8c8d;font-weight:500}.case-id-value{color:#2c3e50;font-weight:600;font-size:16px;background:#e8f5e9;padding:5px 15px;border-radius:5px}.results-actions{display:flex;gap:10px}.btn{padding:10px 20px;font-size:14px;font-weight:600;border-radius:6px;cursor:pointer;transition:all .3s ease;border:none}.btn-primary{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-outline{color:#667eea;background:#fff;border:2px solid #667eea}.btn-outline:hover{background:#667eea;color:#fff}.billing-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.summary-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;align-items:center;gap:15px;transition:transform .3s ease}.summary-card:hover{transform:translateY(-5px);box-shadow:0 4px 12px #00000026}.summary-icon{font-size:32px}.summary-content{flex:1}.summary-label{color:#7f8c8d;font-size:14px;margin-bottom:5px}.summary-value{color:#2c3e50;font-size:24px;font-weight:600}.bills-list{display:flex;flex-direction:column;gap:15px}.bill-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;transition:box-shadow .3s ease;position:relative;page-break-inside:avoid}.bill-card:hover{box-shadow:0 4px 12px #00000026}.print-single-bill-btn{position:absolute;top:10px;right:10px;z-index:10;padding:8px 15px;font-size:12px;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;cursor:pointer;transition:all .3s ease}.print-single-bill-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.bill-header{padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:opacity .2s ease}.bill-header:hover{opacity:.95}.bill-header-left{flex:1}.bill-id-section{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.bill-id{font-size:18px;font-weight:700}.module-badge{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600}.badge-opd{background:#4caf50;color:#fff}.badge-ipd{background:#2196f3;color:#fff}.badge-optical{background:#ff9800;color:#fff}.badge-pharmacy{background:#9c27b0;color:#fff}.badge-investigation{background:#e91e63;color:#fff}.badge-default{background:#757575;color:#fff}.status-badge{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600}.status-completed{background:#00c853;color:#fff}.status-pending{background:#ffd600;color:#000}.bill-meta{display:flex;gap:20px;font-size:13px;opacity:.95}.bill-header-right{display:flex;align-items:center;gap:20px}.bill-amount-section{text-align:right}.amount-label{font-size:12px;opacity:.9;display:block;margin-bottom:3px}.bill-amount{font-size:24px;font-weight:700}.expand-icon{font-size:16px;transition:transform .3s ease}.expand-icon.expanded{transform:rotate(0)}.bill-content{padding:20px;border-top:2px solid #f0f0f0;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:2000px}}.bill-info-section,.bill-details-section,.common-details-section{margin-bottom:20px}.bill-info-section h4,.bill-details-section h4,.common-details-section h4{color:#2c3e50;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #e8f5e9;font-size:16px}.info-grid,.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.info-item,.detail-item{display:flex;flex-direction:column;gap:5px;padding:10px;background:#f8f9fa;border-radius:5px}.info-label,.detail-label{color:#7f8c8d;font-size:12px;font-weight:500}.info-value,.detail-value{color:#2c3e50;font-size:14px;font-weight:600}.products-table-container{overflow-x:auto;margin-top:10px}.products-table{width:100%;border-collapse:collapse;background:#fff}.products-table thead{background:#f8f9fa}.products-table th{padding:12px;text-align:left;font-size:13px;color:#2c3e50;font-weight:600;border-bottom:2px solid #dee2e6}.products-table td{padding:12px;font-size:13px;color:#495057;border-bottom:1px solid #dee2e6}.products-table tbody tr:hover{background:#f8f9fa}.investigation-summary{display:flex;gap:20px;margin-top:15px;padding:15px;background:#f8f9fa;border-radius:5px}.summary-info{display:flex;align-items:center;gap:8px}.info-icon{font-size:18px}.info-text{font-size:14px;color:#495057}.test-type-badge{padding:3px 8px;border-radius:8px;font-size:10px;font-weight:600;background:#e3f2fd;color:#1976d2}.no-details{padding:20px;text-align:center;color:#7f8c8d;font-style:italic}.payment-summary{background:#f8f9fa;padding:15px;border-radius:5px}.summary-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px;color:#495057}.summary-row-label{font-weight:500}.summary-row-value{font-weight:600}.total-row{border-top:2px solid #dee2e6;margin-top:10px;padding-top:10px;font-weight:600;font-size:16px;color:#2c3e50}.summary-note{margin-top:15px;padding:10px;background:#fff3cd;border-left:4px solid #ffc107;border-radius:4px;font-size:13px}.no-results{background:#fff;padding:60px 40px;border-radius:12px;text-align:center;box-shadow:0 2px 8px #0000001a}.no-results-icon{font-size:64px;margin-bottom:20px}.no-results h3{color:#2c3e50;margin-bottom:10px}.no-results p{color:#7f8c8d;margin-bottom:30px}@media print{.search-section,.results-header,.billing-summary,.no-print,.print-single-bill-btn,.expand-icon{display:none!important}body{background:#fff}.billing-search-container{padding:0;background:#fff}.results-section{animation:none}.bill-card{box-shadow:none;border:1px solid #dee2e6;margin-bottom:20px;page-break-inside:avoid}.bill-card.hide-for-print{display:none!important}.bill-header{background:#667eea!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;cursor:default;page-break-after:avoid}.bill-content{display:block!important;animation:none;page-break-before:avoid}.module-badge,.status-badge{-webkit-print-color-adjust:exact;print-color-adjust:exact}.products-table{page-break-inside:avoid}.products-table thead{display:table-header-group}.products-table tr{page-break-inside:avoid}.investigation-summary,.payment-summary,.info-item,.detail-item{-webkit-print-color-adjust:exact;print-color-adjust:exact}.bill-card{page-break-after:always}.bill-card:last-child{page-break-after:auto}}@media (max-width: 768px){.billing-search-container{padding:15px}.search-section{padding:20px}.search-header h2{font-size:22px}.search-box{flex-direction:column}.search-btn{width:100%;justify-content:center}.results-header{flex-direction:column;align-items:flex-start;gap:15px}.results-title{flex-direction:column;align-items:flex-start;gap:10px}.results-actions{width:100%;flex-direction:column}.results-actions .btn{width:100%}.billing-summary{grid-template-columns:repeat(2,1fr)}.bill-header{flex-direction:column;align-items:flex-start;gap:15px}.bill-header-right{width:100%;justify-content:space-between}.print-single-bill-btn{position:static;width:100%;margin-bottom:10px}.info-grid,.details-grid{grid-template-columns:1fr}.products-table{font-size:12px}.products-table th,.products-table td{padding:8px}.investigation-summary{flex-direction:column;gap:10px}}.client-management{padding:24px;background:#f5f6fa;min-height:100vh;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.notification{position:fixed;top:20px;right:20px;display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:10000;animation:slideIn .3s ease-out;min-width:300px}@keyframes slideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.notification.success{border-left:4px solid #4caf50}.notification.error{border-left:4px solid #f44336}.notification svg:first-child{font-size:24px;flex-shrink:0}.notification.success svg:first-child{color:#4caf50}.notification.error svg:first-child{color:#f44336}.notification span{flex:1;font-size:14px;color:#333}.notification button{background:none;border:none;padding:4px;cursor:pointer;color:#999;display:flex;align-items:center}.notification button:hover{color:#333}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #00000014}.header-left h1{display:flex;align-items:center;gap:12px;font-size:28px;font-weight:600;color:#2c3e50;margin:0 0 8px}.page-icon{color:#3498db;font-size:32px}.page-subtitle{font-size:14px;color:#7f8c8d;margin:0}.header-actions{display:flex;gap:12px}.btn-refresh{background:#ecf0f1;color:#34495e;border:none;padding:10px 16px;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;transition:all .2s}.btn-refresh:hover:not(:disabled){background:#bdc3c7}.btn-refresh:disabled{opacity:.6;cursor:not-allowed}.btn-refresh svg.spinning{animation:spin 1s linear infinite}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;transition:all .3s;box-shadow:0 4px 12px #667eea4d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary svg{font-size:18px}.stats-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.stat-card{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;align-items:center;gap:16px;transition:transform .2s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001f}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff}.stat-icon.total{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-icon.active{background:linear-gradient(135deg,#4caf50,#45a049)}.stat-icon.inactive{background:linear-gradient(135deg,#f44336,#e53935)}.stat-content h3{font-size:32px;font-weight:700;color:#2c3e50;margin:0 0 4px}.stat-content p{font-size:14px;color:#7f8c8d;margin:0}.clients-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.loading-state{padding:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.loading-state p{color:#7f8c8d;font-size:14px}.empty-state{padding:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.empty-icon{font-size:64px;color:#bdc3c7}.empty-state h3{font-size:20px;color:#2c3e50;margin:0}.empty-state p{font-size:14px;color:#7f8c8d;margin:0}.clients-table{width:100%;border-collapse:collapse}.clients-table thead{background:#f8f9fa;border-bottom:2px solid #e9ecef}.clients-table th{padding:16px;text-align:left;font-weight:600;font-size:13px;color:#495057;text-transform:uppercase;letter-spacing:.5px}.clients-table td{padding:16px;border-bottom:1px solid #f0f0f0;color:#2c3e50;font-size:14px}.clients-table tbody tr{transition:background-color .2s}.clients-table tbody tr:hover{background-color:#f8f9fa}.clients-table tbody tr.inactive-row{opacity:.6}.client-name{display:flex;align-items:center;gap:8px;font-weight:500}.client-name svg{color:#3498db;font-size:18px}.client-code{background:#f0f3ff;color:#667eea;padding:4px 8px;border-radius:4px;font-family:Courier New,monospace;font-size:13px;font-weight:600}.email-cell{display:flex;align-items:center;gap:6px;color:#7f8c8d}.email-cell svg{color:#95a5a6}.clients-table td a{color:#3498db;text-decoration:none;display:inline-flex;align-items:center;gap:4px;transition:color .2s}.clients-table td a:hover{color:#2980b9;text-decoration:underline}.status-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.action-buttons{display:flex;gap:8px}.btn-action{background:none;border:none;padding:8px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all .2s}.btn-action:hover:not(:disabled){transform:scale(1.1)}.btn-action:disabled{opacity:.4;cursor:not-allowed}.btn-edit{color:#ff9800;background:#fff3e0}.btn-edit:hover:not(:disabled){background:#ffe0b2}.btn-activate{color:#4caf50;background:#e8f5e9}.btn-activate:hover:not(:disabled){background:#c8e6c9}.btn-deactivate{color:#f44336;background:#ffebee}.btn-deactivate:hover:not(:disabled){background:#ffcdd2}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:fadeIn .2s ease-out}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e9ecef;background:#f8f9fa}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:#2c3e50;display:flex;align-items:center;gap:10px}.modal-header svg{color:#667eea;font-size:24px}.modal-close{background:none;border:none;padding:8px;cursor:pointer;color:#7f8c8d;display:flex;align-items:center;border-radius:50%;transition:all .2s}.modal-close:hover{background:#e9ecef;color:#2c3e50}.modal-close svg{font-size:24px}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e9ecef;background:#f8f9fa}.form-group{margin-bottom:20px}.form-group.required label:after{content:" *";color:#f44336}.form-group label{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-weight:500;font-size:14px;color:#495057}.form-group label svg{color:#667eea;font-size:16px}.form-group input,.form-group textarea{width:100%;padding:12px;border:2px solid #e9ecef;border-radius:8px;font-size:14px;color:#2c3e50;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group textarea{resize:vertical;min-height:80px}.form-group small{display:block;margin-top:6px;font-size:12px;color:#7f8c8d}.btn-secondary{background:#e9ecef;color:#495057;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.btn-secondary:hover:not(:disabled){background:#dee2e6}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 992px){.client-management{padding:16px}.page-header{flex-direction:column;gap:16px}.header-actions{width:100%;flex-direction:column}.btn-primary,.btn-refresh{width:100%;justify-content:center}.stats-container{grid-template-columns:1fr}.clients-table-container{overflow-x:auto}.clients-table{min-width:900px}.modal-content{max-width:95%}}@media (max-width: 768px){.page-header h1{font-size:22px}.notification{right:10px;left:10px;min-width:auto}.modal-header h2{font-size:18px}.modal-body,.modal-header,.modal-footer{padding:16px}}.app-container{min-height:100vh;width:100%}.loading-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#f1f5f9;color:#333;font-family:Inter,sans-serif}.loading-spinner{text-align:center}.spinner{border:4px solid rgba(0,0,0,.1);border-left-color:#3b82f6;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 10px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner p{font-size:16px;color:#64748b}
