@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.dark-theme .doctor-dashboard-modern,.dark-theme .doctor-appointments-modern,.dark-theme .doctor-wallet-modern,.dark-theme .notifications-modern,.dark-theme .live-meeting-modern{background:radial-gradient(circle at 0% 0%,var(--background) 0%,var(--surface) 100%);color:var(--text-primary)}.dark-theme .dashboard-bg,.dark-theme .notifications-bg,.dark-theme .live-meeting-bg{background:radial-gradient(circle at 20% 50%,rgba(59,130,246,.12) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(139,92,246,.1) 0%,transparent 50%),radial-gradient(circle at 40% 20%,rgba(16,185,129,.08) 0%,transparent 50%)}.dark-theme .dashboard-loader,.dark-theme .loader-content p{background:var(--background);color:var(--text-secondary)}.dark-theme .greeting-title{background:linear-gradient(135deg,#f1f5f9,#cbd5e1,#94a3b8);-webkit-background-clip:text;background-clip:text;color:transparent}.dark-theme .greeting-subtitle,.dark-theme .stat-title,.dark-theme .section-subtitle,.dark-theme .card-meta,.dark-theme .appointment-meta,.dark-theme .filter-label,.dark-theme .empty-state p,.dark-theme .empty-state span{color:var(--text-secondary)}.dark-theme .stat-card-modern,.dark-theme .glass-card,.dark-theme .chart-card,.dark-theme .appointments-card,.dark-theme .notifications-card,.dark-theme .quick-action-card-modern,.dark-theme .transaction-item,.dark-theme .appointment-card-modern,.dark-theme .notification-item-modern,.dark-theme .filter-bar,.dark-theme .search-bar-modern,.dark-theme .tab-button,.dark-theme .current-time-card,.dark-theme .stats-card-modern,.dark-theme .earnings-card,.dark-theme .live-tab,.dark-theme .meeting-card,.dark-theme .history-card,.dark-theme .recent-appointments-card,.dark-theme .appointment-item-modern,.dark-theme .action-card-modern,.dark-theme .call-card,.dark-theme .notification-card-modern,.dark-theme .stat-card-mini,.dark-theme .filters-bar,.dark-theme .bulk-actions-bar,.dark-theme .earnings-chart-section,.dark-theme .transactions-section,.dark-theme .appointments-header,.dark-theme .filters-section,.dark-theme .search-box,.dark-theme .empty-state,.dark-theme .empty-calls,.dark-theme .empty-notifications,.dark-theme .empty-transactions,.dark-theme .history-table,.dark-theme .history-table th,.dark-theme .history-table td,.dark-theme .period-btn,.dark-theme .stat-chip,.dark-theme .wallet-mini-stat-card,.dark-theme .dashboard-toolbar-card,.dark-theme .doctor-panel-toolbar,.dark-theme .live-toolbar-card,.dark-theme .notifications-toolbar-card,.dark-theme .panel-stat-chip,.dark-theme .tab-btn{background:color-mix(in srgb,var(--surface) 92%,transparent)!important;border-color:var(--border)!important;color:var(--text-primary)}.dark-theme .meeting-header-modern,.dark-theme .notifications-header-modern{background:transparent!important;border:none!important}.dark-theme .wallet-balance-card{background:linear-gradient(135deg,#0f766e,#0d9488 45%,#0891b2)!important;border-color:#ffffff1f!important;color:#fff}.dark-theme .wallet-balance-card .balance-label,.dark-theme .wallet-balance-card .balance-subtitle{color:#ffffffc7!important}.dark-theme .wallet-balance-card .balance-value{color:#fff!important}.dark-theme .wallet-balance-card .balance-icon{color:#fffffff2!important}.dark-theme .wallet-stat-value{color:var(--text-primary)!important}.dark-theme .wallet-header h1,.dark-theme .wallet-header p,.dark-theme .section-header h3,.dark-theme .transaction-title{color:var(--text-primary)}.dark-theme .transaction-date,.dark-theme .export-btn{color:var(--text-secondary)}.dark-theme .export-btn{background:color-mix(in srgb,var(--surface) 88%,transparent)}.dark-theme .transaction-item{background:color-mix(in srgb,var(--surface) 85%,transparent)!important}.dark-theme .transaction-icon{background:color-mix(in srgb,var(--surface) 92%,transparent)}.dark-theme .dashboard-toolbar-card .current-time-card{background:color-mix(in srgb,var(--surface) 88%,transparent)!important}.dark-theme .doctor-panel-toolbar .current-time-card,.dark-theme .live-toolbar-card .panel-stat-chip,.dark-theme .notifications-toolbar-card .action-icon-btn{background:color-mix(in srgb,var(--surface) 88%,transparent)!important;border-color:var(--border)!important}.dark-theme .panel-stat-number,.dark-theme .stat-card-mini .notif-stat-value{color:var(--text-primary)!important}.dark-theme .panel-stat-label,.dark-theme .stat-card-mini .notif-stat-label,.dark-theme .toolbar-text p{color:var(--text-secondary)!important}.dark-theme .toolbar-text h1{background:linear-gradient(135deg,#f1f5f9,#cbd5e1);-webkit-background-clip:text;background-clip:text;color:transparent!important}.dark-theme .live-meeting-modern h1,.dark-theme .notifications-modern h1{background:linear-gradient(135deg,#f1f5f9,#cbd5e1);-webkit-background-clip:text;background-clip:text;color:transparent}.dark-theme .meeting-tabs{background:color-mix(in srgb,var(--surface) 92%,transparent)!important;border-color:var(--border)!important}.dark-theme .tab-btn.active{background:var(--primary-color, #0d9488)!important;color:#fff!important;border-color:transparent!important}.dark-theme .tab-btn:hover:not(.active){background:color-mix(in srgb,var(--surface) 80%,transparent);color:var(--text-primary)}.dark-theme .stat-card-mini.active{background:color-mix(in srgb,var(--primary-color, #0d9488) 15%,var(--surface))!important;border-color:color-mix(in srgb,var(--primary-color, #0d9488) 40%,var(--border))!important}.dark-theme .stat-card-mini.active .notif-stat-value,.dark-theme .stat-card-mini.active .notif-stat-label{color:var(--text-primary)!important}.dark-theme .stat-card-mini .stat-icon.total{background:color-mix(in srgb,#3b82f6 18%,transparent);color:#93c5fd}.dark-theme .stat-card-mini .stat-icon.unread{background:color-mix(in srgb,#ef4444 18%,transparent);color:#fca5a5}.dark-theme .stat-card-mini .stat-icon.read{background:color-mix(in srgb,#10b981 18%,transparent);color:#6ee7b7}.dark-theme .btn-mark-all{background:var(--primary-color, #0d9488)!important;color:#fff!important}.dark-theme .action-icon-btn{background:color-mix(in srgb,var(--surface) 88%,transparent)!important;border-color:var(--border)!important;color:var(--text-secondary)!important}.dark-theme .action-icon-btn:hover{color:var(--primary-light, #5eead4)!important}.dark-theme .call-card-body{background:color-mix(in srgb,var(--surface) 85%,transparent)}.dark-theme .start-call-btn{background:linear-gradient(135deg,#059669,#047857)!important;color:#fff!important}.dark-theme .notification-message,.dark-theme .notification-time,.dark-theme .call-info h3,.dark-theme .reason{color:var(--text-secondary)}.dark-theme .notification-title,.dark-theme .call-info h3{color:var(--text-primary)}.dark-theme .dashboard-toolbar-card .time{color:var(--text-primary)!important}.dark-theme .dashboard-toolbar-card .date{color:var(--text-secondary)!important}.dark-theme .stat-value,.dark-theme .section-title,.dark-theme .card-title,.dark-theme .appointment-patient,.dark-theme .notification-title,.dark-theme .wallet-amount,.dark-theme .greeting-title+*,.dark-theme .doctor-dashboard-modern h1,.dark-theme .doctor-dashboard-modern h2,.dark-theme .doctor-dashboard-modern h3,.dark-theme .doctor-dashboard-modern h4,.dark-theme .doctor-appointments-modern h1,.dark-theme .doctor-appointments-modern h2,.dark-theme .doctor-appointments-modern h3,.dark-theme .notifications-modern h2,.dark-theme .live-meeting-modern h2{color:var(--text-primary)}.dark-theme .toolbar-actions--bottom{border-top-color:var(--border)!important}.dark-theme .stat-card-inner,.dark-theme .appointment-details-modern,.dark-theme .notification-content-modern{color:#cbd5e1}.dark-theme .refresh-btn,.dark-theme .filter-btn,.dark-theme .action-btn-secondary{background:#1e293b;border-color:#334155;color:#e2e8f0}.dark-theme .refresh-btn:hover,.dark-theme .filter-btn:hover{background:#334155;border-color:#475569}.dark-theme .search-bar-modern input,.dark-theme .filter-select,.dark-theme .mobile-search input,.dark-theme .search-box input{background:#1e293b;border-color:#334155;color:#f1f5f9}.dark-theme .search-bar-modern input::placeholder,.dark-theme .mobile-search input::placeholder{color:#64748b}.dark-theme .tab-button.active,.dark-theme .live-tab.active,.dark-theme .filter-tab.active,.dark-theme .period-btn.active,.dark-theme .type-filter-btn.active{background:color-mix(in srgb,var(--primary-color) 20%,transparent);color:var(--primary-light);border-color:color-mix(in srgb,var(--primary-color) 40%,transparent)}.dark-theme .status-badge,.dark-theme .appointment-status{background:#334155;color:#e2e8f0}.dark-theme .pie-chart-card .recharts-text,.dark-theme .recharts-cartesian-axis-tick-value{fill:#94a3b8}.dark-theme .recharts-default-tooltip{background:#1e293b!important;border-color:#334155!important;color:#f1f5f9!important}.dark-theme .mobile-menu{background:#1e293b;border-color:#334155}.dark-theme .mobile-menu .menu-items button{color:#e2e8f0}.dark-theme .mobile-menu .menu-items button:hover{background:#334155}.dark-theme .settings-modern--doctor{background:transparent}.dark-theme .settings-modern--doctor .settings-content,.dark-theme .settings-modern--doctor .settings-sidebar,.dark-theme .settings-modern--doctor .profile-section-card{background:#1e293b;border-color:#334155}.dark-theme .settings-modern--doctor .sidebar-tab{color:#94a3b8}.dark-theme .settings-modern--doctor .sidebar-tab.active{color:#fff}.dark-theme .settings-modern--doctor .form-group input,.dark-theme .settings-modern--doctor .form-group select,.dark-theme .settings-modern--doctor .form-group textarea{background:#0f172a;border-color:#334155;color:#f1f5f9}.high-contrast .stat-card-modern,.high-contrast .glass-card{border-width:2px}.reduced-motion .stat-card-modern,.reduced-motion .quick-action-card-modern{transition:none}.reduced-motion .sparkle-icon{animation:none}.dark-theme .doctor-appt-table-wrap{background:#1e293b;border-color:#334155}.dark-theme .doctor-appt-table thead{background:linear-gradient(180deg,#1e293b,#0f172a);border-bottom-color:#334155}.dark-theme .doctor-appt-table th{color:#94a3b8}.dark-theme .doctor-appt-table tbody tr{border-bottom-color:#334155}.dark-theme .doctor-appt-table tbody tr:hover{background:#0f172a}.dark-theme .doctor-appt-table td{color:#cbd5e1}.dark-theme .doctor-appt-patient-name{color:#f1f5f9}.dark-theme .doctor-appt-patient-meta{color:#94a3b8}.dark-theme .doctor-appt-reason{color:#cbd5e1}.dark-theme .doctor-appt-queue{background:linear-gradient(135deg,#1e3a8a,#312e81);color:#bfdbfe}.dark-theme .doctor-appt-table-footer{background:#0f172a;border-top-color:#334155;color:#94a3b8}.dark-theme .doctor-appt-table-footer strong{color:#f1f5f9}.dark-theme .doctor-appt-btn-outline{background:#0f172a;border-color:#475569;color:#e2e8f0}.dark-theme .doctor-appt-btn-outline:hover:not(:disabled){background:#1e293b;border-color:#64748b}.dark-theme .doctor-appt-btn-danger{background:#0f172a;border-color:#7f1d1d;color:#fca5a5}.doctor-dashboard-modern,.doctor-appointments-modern,.doctor-wallet-modern,.notifications-modern,.live-meeting-modern{min-height:auto;padding:.75rem .75rem 1rem;width:100%;max-width:100%;overflow-x:hidden}.dashboard-bg,.notifications-bg,.live-meeting-bg{position:absolute;inset:0;z-index:0}.doctor-dashboard-modern,.doctor-appointments-modern,.doctor-wallet-modern,.notifications-modern,.live-meeting-modern{position:relative}.dashboard-header-modern{margin-bottom:1rem}.dashboard-toolbar-card{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:nowrap}.dashboard-toolbar-card--stacked{flex-direction:column;align-items:stretch;gap:.625rem}.toolbar-greeting--top{width:100%}.toolbar-actions--bottom{width:100%;justify-content:flex-start;padding-top:.5rem;border-top:1px solid #e2e8f0}.toolbar-actions{display:flex;flex-direction:row;align-items:center;gap:.375rem;flex-shrink:0}.dashboard-header-modern .header-greeting{display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:.5rem .75rem}.greeting-title{font-size:1rem;line-height:1.25;flex-wrap:wrap;white-space:normal}.greeting-title .sparkle-icon{width:1.125rem;height:1.125rem}.greeting-subtitle{font-size:.6875rem;margin-top:.2rem}.header-stats{width:auto;justify-content:flex-end}.current-time-card{flex:0 1 auto;min-width:0;padding:.45rem .625rem;border-radius:.75rem}.time-info .date{display:block;font-size:.5625rem}.refresh-btn{width:36px;height:36px;border-radius:.75rem}.wallet-balance-card{grid-column:1 / -1;padding:1rem;border-radius:1rem}.wallet-mini-stat-card{padding:.75rem}.wallet-stat-value{font-size:.8125rem}.balance-value{font-size:1.35rem}.wallet-header h1{font-size:1.125rem}.wallet-header p{font-size:.8125rem}.earnings-chart-section,.transactions-section{padding:1rem;border-radius:1rem;margin-bottom:1rem}.transaction-item{flex-wrap:wrap;gap:.5rem;padding:.75rem}.transaction-details{flex:1 1 calc(100% - 3.5rem);min-width:0}.transaction-amount{font-size:.875rem}.transaction-status{font-size:.6875rem}.stats-grid-modern{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem;margin-bottom:1rem}@media(max-width:767px){.doctor-dashboard-modern .stats-grid-modern,.doctor-dashboard-modern .actions-grid-modern{grid-template-columns:repeat(2,minmax(0,1fr))}}.stat-card-modern{padding:.875rem;border-radius:1rem}.stat-card-inner{flex-direction:column;align-items:flex-start;gap:.375rem;min-height:6.5rem}.stat-card-inner .stat-title,.stat-card-inner .stat-value-wrapper{width:100%;margin-bottom:0}.stat-card-inner .stat-icon-wrapper--bottom{margin-top:auto;align-self:flex-end}.stat-icon-wrapper{width:2.5rem;height:2.5rem;border-radius:.75rem}.stat-icon{width:1.25rem;height:1.25rem}.stat-title{font-size:.625rem;margin-bottom:.25rem;line-height:1.3}.stat-value{font-size:1.125rem;word-break:break-word}.stat-card-modern:hover{transform:none}.charts-section{grid-template-columns:1fr;gap:.875rem;margin-bottom:1rem}.chart-card{padding:1rem;border-radius:1rem}.chart-header{flex-direction:column;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.chart-title h3{font-size:.9375rem}.period-selector{display:flex;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:.35rem;padding-bottom:2px}.period-btn{flex-shrink:0;padding:.35rem .75rem;font-size:.75rem}.chart-card .recharts-responsive-container{min-height:200px!important}.quick-actions-modern{margin-bottom:1rem}.quick-actions-modern .section-title{font-size:.9375rem;margin-bottom:.625rem}.actions-grid-modern{grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}.action-card-modern{padding:.875rem;border-radius:1rem;min-height:5.5rem}.action-card-modern span{font-size:.75rem;text-align:center;line-height:1.3}.action-icon{width:2.5rem;height:2.5rem}.bottom-section{grid-template-columns:1fr;gap:.875rem}.recent-appointments-card,.notifications-card{padding:1rem;border-radius:1rem}.card-header{margin-bottom:.875rem}.card-header h3{font-size:.9375rem}.appointment-item-modern{flex-wrap:wrap;align-items:flex-start;gap:.625rem;padding:.625rem}.apt-details{flex:1 1 calc(100% - 3.5rem);min-width:0}.apt-patient-name{font-size:.8125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.apt-status-badge{font-size:.625rem;order:3}.apt-action-btn{width:100%;order:4;margin-top:.25rem;padding:.5rem;font-size:.75rem;border-radius:.5rem;border:1px solid #e2e8f0;background:#fff;color:#2563eb;font-weight:600;cursor:pointer}.notification-item-modern{padding:.625rem}.notif-message{font-size:.8125rem;line-height:1.4}.appointments-header{flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:1rem}.appointments-header .header-stats{flex-wrap:wrap;justify-content:flex-start}.filters-section{margin-bottom:1rem}.filter-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;gap:.35rem;padding-bottom:.25rem}.filter-tab{flex-shrink:0;font-size:.75rem;padding:.4rem .75rem}.wallet-balance-card{padding:1rem;border-radius:1rem}.balance-value{font-size:1.5rem}.transactions-section{padding:1rem;border-radius:1rem}.doctor-panel-toolbar,.live-toolbar-card,.notifications-toolbar-card{flex-wrap:nowrap;margin-bottom:.875rem}.toolbar-text h1{font-size:clamp(.875rem,3.5vw,1.125rem)}.toolbar-text p{font-size:.625rem}.panel-stat-chip{min-width:2.75rem;padding:.3rem .4rem}.panel-stat-number{font-size:.875rem}.panel-stat-label{font-size:.5rem;max-width:3.75rem}.notifications-toolbar-card .toolbar-actions{gap:.25rem}.notifications-toolbar-card .action-icon-btn{width:34px;height:34px;padding:.35rem}.notifications-toolbar-card .btn-mark-all{padding:.4rem .5rem;font-size:0}.notifications-toolbar-card .btn-mark-all svg{margin:0}.notification-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:.875rem}.stat-card-mini{padding:.625rem .5rem;gap:.5rem;flex-direction:row;align-items:center}.stat-card-mini .mini-stat-icon,.stat-card-mini .stat-icon{width:2rem;height:2rem;flex-shrink:0}.stat-card-mini .notif-stat-value{font-size:1rem}.stat-card-mini .notif-stat-label{font-size:.5625rem}.meeting-tabs{margin-bottom:.875rem}.upcoming-calls-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}.call-card{padding:.875rem;border-radius:1rem}.call-card-header{flex-wrap:wrap;gap:.5rem}.start-call-btn{font-size:.6875rem;padding:.5rem}.call-history-list{padding:1rem;border-radius:1rem}@media(min-width:480px){.notifications-toolbar-card .btn-mark-all{font-size:.625rem;padding:.4rem .625rem}.notifications-toolbar-card .btn-mark-all-text{display:inline}}.doctor-main{padding:.75rem}.doctor-header{padding:.625rem .75rem}.header-title{font-size:1.0625rem}.mobile-search{display:none}@media(max-width:360px){.actions-grid-modern{grid-template-columns:1fr}}@media(min-width:640px){.doctor-dashboard-modern,.doctor-appointments-modern,.doctor-wallet-modern,.notifications-modern,.live-meeting-modern{padding:1rem 1.25rem 1.5rem}.greeting-title{font-size:1.65rem}.time-info .date{display:block}.stat-card-inner--stacked,.stat-card-inner{flex-direction:column;align-items:flex-start}.stat-card-inner .stat-icon-wrapper--bottom{align-self:flex-end;margin-top:auto}.stat-value{font-size:1.5rem}.appointment-item-modern{flex-wrap:nowrap;align-items:center}.apt-action-btn{width:auto;order:unset;margin-top:0;border:none;background:transparent;padding:.35rem .5rem}.chart-card .recharts-responsive-container{min-height:260px!important}}@media(min-width:768px){.notifications-header-modern,.meeting-header-modern,.live-toolbar-card,.notifications-toolbar-card{display:flex;flex-direction:row;align-items:center;justify-content:space-between}.notifications-header-modern .header-left,.meeting-header-modern .header-left{grid-column:unset}.notifications-header-modern .header-actions,.meeting-header-modern .header-stats,.live-toolbar-stats{grid-column:unset;gap:.75rem}.notifications-header-modern .btn-mark-all{font-size:.75rem;padding:.5rem 1rem}.notifications-toolbar-card .btn-mark-all-text{display:inline}.toolbar-text h1{font-size:1.25rem}.panel-stat-chip{min-width:4rem;padding:.5rem .625rem}.panel-stat-number{font-size:1.125rem}.doctor-main{padding:1.25rem 1.5rem}.dashboard-header-modern .header-greeting{display:flex;flex-direction:row;align-items:center;justify-content:space-between}.dashboard-header-modern .header-greeting-text,.dashboard-header-modern .header-stats{grid-column:unset;grid-row:unset}.dashboard-toolbar-card{padding:1rem 1.25rem}.greeting-title{font-size:1.5rem}.wallet-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wallet-balance-card{grid-column:1 / -1}.stats-grid-modern{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.charts-section{grid-template-columns:1.2fr 1fr}.bottom-section{grid-template-columns:1fr 1fr}.actions-grid-modern{grid-template-columns:repeat(4,minmax(0,1fr))}.chart-header,.appointments-header{flex-direction:row;align-items:center;justify-content:space-between}.mobile-search{display:flex}}@media(min-width:768px){.dashboard-toolbar-card{padding:1rem 1.25rem;border-radius:1.5rem}.greeting-title{font-size:1.5rem}.greeting-subtitle{font-size:.8125rem}.current-time-card{padding:.625rem 1rem}.refresh-btn{width:44px;height:44px}}@media(min-width:1024px){.greeting-title{font-size:1.75rem}.wallet-summary-grid{grid-template-columns:2fr 1fr 1fr;gap:1rem}.wallet-balance-card{grid-column:auto;padding:1.5rem}.balance-value{font-size:2rem}.stats-grid-modern{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}.stat-card-modern .stat-value{font-size:1.875rem}.chart-card .recharts-responsive-container{min-height:300px!important}}.dark-theme .apt-action-btn{background:#1e293b;border-color:#334155;color:#93c5fd}@media(min-width:640px){.dark-theme .apt-action-btn{background:transparent;border:none}}.patient-header .header-content,.doctor-header .header-content{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.5rem;width:100%;min-height:2.75rem}.patient-header .header-left,.doctor-header .header-left{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.5rem;flex:1 1 auto;min-width:0;overflow:hidden}.patient-header .header-right,.doctor-header .header-right{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:.25rem;flex:0 0 auto;margin-left:.25rem}.patient-header .header-title,.doctor-header .header-title{margin:0;font-size:clamp(.9375rem,3.5vw,1.25rem);font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1 1 auto}.patient-header .menu-btn,.doctor-header .menu-btn,.patient-header .header-action-btn,.doctor-header .header-action-btn{flex-shrink:0}.patient-header .mobile-search,.doctor-header .mobile-search{width:100%;margin-top:.625rem}@media(min-width:768px){.patient-header .header-content,.doctor-header .header-content{min-height:3rem}}.doctor-layout{--doctor-header-height: 56px;--doctor-bottom-nav-height: 72px}.doctor-layout{min-height:100vh;display:flex;flex-direction:column;background:var(--doctor-bg);font-family:var(--font-sans);padding-bottom:var(--doctor-bottom-nav-height)}.doctor-header{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--doctor-border);padding:.75rem 1rem;position:sticky;top:0;z-index:100}.doctor-header .header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.doctor-header .header-left{display:flex;align-items:center;gap:.75rem}.doctor-header .header-right{display:flex;align-items:center;gap:.5rem}.doctor-header .header-title{font-size:1.25rem;font-weight:700;color:var(--doctor-primary);margin:0;background:linear-gradient(135deg,var(--doctor-primary),var(--doctor-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.menu-btn{background:var(--doctor-surface);border:1px solid var(--doctor-border);padding:.5rem;border-radius:var(--doctor-radius-sm);cursor:pointer;color:var(--doctor-text);transition:all .2s;display:flex;align-items:center;justify-content:center}.menu-btn:hover{background:var(--doctor-surface-hover);border-color:var(--doctor-primary)}.header-action-btn{background:none;border:none;padding:.5rem;border-radius:var(--doctor-radius-full);cursor:pointer;color:var(--doctor-text-secondary);transition:all .2s;display:flex;align-items:center;justify-content:center;position:relative}.header-action-btn:hover{background:var(--doctor-surface-hover);color:var(--doctor-primary)}.notification-badge{position:absolute;top:0;right:0;background:var(--doctor-error);color:#fff;font-size:.625rem;font-weight:600;min-width:16px;height:16px;border-radius:var(--doctor-radius-full);display:flex;align-items:center;justify-content:center;padding:0 4px}.doctor-avatar-sm{width:32px;height:32px;border-radius:var(--doctor-radius-full);background:linear-gradient(135deg,var(--doctor-primary),var(--doctor-secondary));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;overflow:hidden}.doctor-avatar-sm img{width:100%;height:100%;object-fit:cover}.mobile-search{display:flex;align-items:center;gap:.5rem;background:var(--doctor-surface);border:1px solid var(--doctor-border);border-radius:var(--doctor-radius-full);padding:.5rem 1rem;margin-top:.75rem;color:var(--doctor-text-muted)}.mobile-search input{flex:1;border:none;background:transparent;font-size:.875rem;color:var(--doctor-text);outline:none}.mobile-search input::placeholder{color:var(--doctor-text-muted)}.mobile-menu{position:absolute;right:0;top:0;bottom:0;width:280px;background:var(--doctor-surface);transform:translate(100%);transition:transform .3s ease;display:flex;flex-direction:column}.menu-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--doctor-border)}.menu-header h3{margin:0;font-size:1.125rem;color:var(--doctor-text)}.menu-header button{background:none;border:none;font-size:1.25rem;cursor:pointer;color:var(--doctor-text-secondary);padding:.25rem}.menu-items{display:flex;flex-direction:column;padding:.5rem;gap:.25rem}.menu-items button{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:none;background:none;border-radius:var(--doctor-radius-sm);cursor:pointer;color:var(--doctor-text);font-size:.9375rem;transition:all .2s;text-align:left}.menu-items button:hover{background:var(--doctor-surface-hover);color:var(--doctor-primary)}.menu-items button svg{color:var(--doctor-text-secondary)}.doctor-main{flex:1;padding:1rem;max-width:1200px;margin:0 auto;width:100%;overflow-y:auto}.doctor-bottom-nav{background:var(--doctor-surface);border-top:1px solid var(--doctor-border);display:flex;justify-content:space-around;padding:.5rem 0;position:fixed;bottom:0;left:0;right:0;z-index:100;padding-bottom:max(.5rem,env(safe-area-inset-bottom))}.nav-item{display:flex;flex-direction:column;align-items:center;padding:.5rem .75rem;border:none;background:none;cursor:pointer;transition:all .2s;color:var(--doctor-text-muted);font-size:.6875rem;gap:.25rem;position:relative;min-width:56px}.nav-item:hover{background:var(--doctor-surface-hover)}.nav-item.active,.nav-item.active .nav-icon-wrapper{color:var(--doctor-primary)}.nav-icon-wrapper{display:flex;align-items:center;justify-content:center;color:var(--doctor-text-secondary);position:relative}.nav-label{white-space:nowrap;font-weight:500}.nav-badge{position:absolute;top:-4px;right:-8px;background:var(--doctor-error);color:#fff;font-size:.5625rem;font-weight:600;min-width:14px;height:14px;border-radius:var(--doctor-radius-full);display:flex;align-items:center;justify-content:center;padding:0 3px}@media(min-width:768px){.doctor-layout{padding-bottom:0}.doctor-header{padding:1rem 1.5rem}.doctor-header .header-content{padding:0}.mobile-search{display:none}.doctor-main{padding:1.5rem}.doctor-bottom-nav{position:fixed;top:0;left:0;bottom:0;width:80px;flex-direction:column;justify-content:flex-start;padding:5rem .5rem 1rem;gap:.5rem;border-right:1px solid var(--doctor-border);border-top:none;background:var(--doctor-surface);z-index:90}.nav-item{flex-direction:column;padding:.75rem;gap:.375rem;border-radius:var(--doctor-radius)}.nav-label{font-size:.625rem}.doctor-layout{padding-left:80px}}@media(min-width:1024px){.doctor-bottom-nav{width:100px}.doctor-layout{padding-left:100px}.nav-item{padding:1rem .75rem}.nav-label{font-size:.6875rem}}@media(min-width:1280px){.doctor-bottom-nav{width:120px}.doctor-layout{padding-left:120px}}.doctor-main::-webkit-scrollbar{width:6px}.doctor-main::-webkit-scrollbar-track{background:transparent}.doctor-main::-webkit-scrollbar-thumb{background:var(--doctor-border);border-radius:10px}.doctor-main::-webkit-scrollbar-thumb:hover{background:var(--doctor-text-muted)}.doctor-main>*{animation:none}@supports (padding-bottom: env(safe-area-inset-bottom)){.doctor-bottom-nav{padding-bottom:max(.5rem,env(safe-area-inset-bottom))}}.patient-layout{--patient-bottom-nav-height: 72px}.patient-layout{min-height:100vh;display:flex;flex-direction:column;background:var(--patient-bg);font-family:var(--font-sans);padding-bottom:var(--patient-bottom-nav-height)}.patient-header{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--patient-border);padding:.75rem 1rem;position:sticky;top:0;z-index:100}.patient-header .header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.patient-header .header-left{display:flex;align-items:center;gap:.75rem}.patient-header .header-right{display:flex;align-items:center;gap:.5rem}.patient-header .header-title{font-size:1.25rem;font-weight:700;color:var(--patient-primary);margin:0;background:linear-gradient(135deg,var(--patient-primary),var(--patient-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.menu-btn{background:var(--patient-surface);border:1px solid var(--patient-border);padding:.5rem;border-radius:var(--patient-radius-sm);cursor:pointer;color:var(--patient-text);transition:all .2s;display:flex;align-items:center;justify-content:center}.menu-btn:hover{background:var(--patient-surface-hover);border-color:var(--patient-primary)}.header-action-btn{background:none;border:none;padding:.5rem;border-radius:var(--patient-radius-full);cursor:pointer;color:var(--patient-text-secondary);transition:all .2s;display:flex;align-items:center;justify-content:center;position:relative}.header-action-btn:hover{background:var(--patient-surface-hover);color:var(--patient-primary)}.notification-badge{position:absolute;top:0;right:0;background:var(--patient-error);color:#fff;font-size:.625rem;font-weight:600;min-width:16px;height:16px;border-radius:var(--patient-radius-full);display:flex;align-items:center;justify-content:center;padding:0 4px}.user-avatar-sm{width:32px;height:32px;border-radius:var(--patient-radius-full);background:linear-gradient(135deg,var(--patient-primary),var(--patient-secondary));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;text-transform:uppercase;overflow:hidden}.user-avatar-sm img{width:100%;height:100%;object-fit:cover}.mobile-search{display:flex;align-items:center;gap:.5rem;background:var(--patient-surface);border:1px solid var(--patient-border);border-radius:var(--patient-radius-full);padding:.5rem 1rem;margin-top:.75rem;color:var(--patient-text-muted)}.mobile-search input{flex:1;border:none;background:transparent;font-size:.875rem;color:var(--patient-text);outline:none}.mobile-search input::placeholder{color:var(--patient-text-muted)}.mobile-menu-overlay{position:fixed;inset:0;background:#00000080;z-index:200;opacity:0;visibility:hidden;transition:all .3s}.mobile-menu-overlay.open{opacity:1;visibility:visible}.mobile-menu{position:absolute;right:0;top:0;bottom:0;width:280px;background:var(--patient-surface);transform:translate(100%);transition:transform .3s ease;display:flex;flex-direction:column}.mobile-menu.open{transform:translate(0)}.menu-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--patient-border)}.menu-header h3{margin:0;font-size:1.125rem;color:var(--patient-text)}.menu-header button{background:none;border:none;cursor:pointer;color:var(--patient-text-secondary);padding:.25rem;display:flex;align-items:center;justify-content:center}.menu-items{display:flex;flex-direction:column;padding:.5rem;gap:.25rem;flex:1}.menu-items button{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:none;background:none;border-radius:var(--patient-radius-sm);cursor:pointer;color:var(--patient-text);font-size:.9375rem;transition:all .2s;text-align:left;width:100%}.menu-items button:hover{background:var(--patient-surface-hover);color:var(--patient-primary)}.menu-items button svg{color:var(--patient-text-secondary);flex-shrink:0}.menu-items button.logout-btn{color:var(--patient-error)}.menu-items button.logout-btn svg{color:var(--patient-error)}.menu-divider{height:1px;background:var(--patient-border);margin:.5rem 0}.patient-main{flex:1;padding:.75rem .625rem calc(var(--patient-bottom-nav-height) + 1rem);max-width:920px;margin:0 auto;width:100%;overflow-x:hidden;overflow-y:visible}.patient-bottom-nav{background:var(--patient-surface);border-top:1px solid var(--patient-border);display:flex;justify-content:space-around;padding:.5rem 0;position:fixed;bottom:0;left:0;right:0;z-index:100;padding-bottom:max(.5rem,env(safe-area-inset-bottom));box-shadow:0 -2px 10px #0000000d}.patient-bottom-nav .nav-item{display:flex;flex-direction:column;align-items:center;padding:.5rem .75rem;border:none;background:none;cursor:pointer;transition:all .2s;color:var(--patient-text-muted);font-size:.625rem;gap:.25rem;position:relative;min-width:56px;flex:1}.patient-bottom-nav .nav-item:hover{background:var(--patient-surface-hover)}.patient-bottom-nav .nav-item.active,.patient-bottom-nav .nav-item.active .nav-icon-wrapper{color:var(--patient-primary)}.patient-bottom-nav .nav-icon-wrapper{display:flex;align-items:center;justify-content:center;color:var(--patient-text-secondary);position:relative}.patient-bottom-nav .nav-label{white-space:nowrap;font-weight:500}.patient-bottom-nav .nav-badge{position:absolute;top:-4px;right:-8px;background:var(--patient-error);color:#fff;font-size:.5625rem;font-weight:600;min-width:14px;height:14px;border-radius:var(--patient-radius-full);display:flex;align-items:center;justify-content:center;padding:0 3px}@media(min-width:768px){.patient-layout{padding-bottom:0}.patient-header{padding:1rem 1.5rem}.patient-header .header-content{padding:0}.mobile-search{display:none}.patient-main{padding:1.5rem;padding-bottom:calc(var(--patient-bottom-nav-height) + 1.5rem)}.patient-bottom-nav{position:fixed;top:0;left:0;bottom:0;width:80px;flex-direction:column;justify-content:flex-start;padding:5rem .5rem 1rem;gap:.5rem;border-right:1px solid var(--patient-border);border-top:none;background:var(--patient-surface);z-index:90}.patient-bottom-nav .nav-item{flex-direction:column;padding:.75rem;gap:.375rem;border-radius:var(--patient-radius)}.patient-bottom-nav .nav-label{font-size:.625rem}.patient-layout{padding-left:80px}}@media(min-width:1024px){.patient-bottom-nav{width:100px}.patient-layout{padding-left:100px}.patient-bottom-nav .nav-item{padding:1rem .75rem}.patient-bottom-nav .nav-label{font-size:.6875rem}}@media(min-width:1280px){.patient-bottom-nav{width:120px}.patient-layout{padding-left:120px}}.patient-main::-webkit-scrollbar{width:6px}.patient-main::-webkit-scrollbar-track{background:transparent}.patient-main::-webkit-scrollbar-thumb{background:var(--patient-border);border-radius:10px}.patient-main::-webkit-scrollbar-thumb:hover{background:var(--patient-text-muted)}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.mobile-menu.open{animation:slideInRight .3s ease-out}@media(prefers-reduced-motion:no-preference){.patient-main>.page-enter{animation:fadeIn .25s ease-out}}@supports (padding-bottom: env(safe-area-inset-bottom)){.patient-bottom-nav{padding-bottom:max(.5rem,env(safe-area-inset-bottom))}}@media(max-width:380px){.patient-header .header-title{display:block;max-width:8.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-bottom-nav .nav-label{font-size:.55rem}.patient-bottom-nav .nav-item{min-width:48px;padding:.4rem .5rem}}.patient-card{background:var(--patient-surface);border:1px solid var(--patient-border);border-radius:var(--patient-radius);padding:1rem;margin-bottom:1rem;box-shadow:var(--patient-shadow)}.patient-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.patient-card-title{font-size:1rem;font-weight:600;color:var(--patient-text);margin:0}.patient-card-action{color:var(--patient-primary);font-size:.875rem;font-weight:500;cursor:pointer}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;padding:1rem 0}.quick-action-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem .5rem;background:var(--patient-surface);border:1px solid var(--patient-border);border-radius:var(--patient-radius);cursor:pointer;transition:all .2s}.quick-action-item:hover{border-color:var(--patient-primary);background:var(--patient-surface-hover)}.quick-action-icon{width:40px;height:40px;border-radius:var(--patient-radius-full);background:linear-gradient(135deg,var(--patient-primary),var(--patient-primary-light));color:#fff;display:flex;align-items:center;justify-content:center}.quick-action-label{font-size:.75rem;color:var(--patient-text-secondary);text-align:center;font-weight:500}@media(max-width:480px){.quick-actions{grid-template-columns:repeat(2,1fr)}}.patient-main{padding:.625rem .75rem calc(var(--patient-bottom-nav-height) + .75rem)}.patient-dashboard .pd-hero{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.625rem;padding:1.125rem 1rem;border-radius:1rem}.patient-dashboard .pd-hero__content{min-width:0}.patient-dashboard .pd-hero__title{font-size:clamp(1.125rem,4.5vw,1.5rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-dashboard .pd-hero__cta{grid-column:2;grid-row:1 / span 2;align-self:center;padding:.5rem .75rem}.patient-dashboard .pd-hero__cta span{display:none}@media(min-width:400px){.patient-dashboard .pd-hero__cta span{display:inline}}.patient-dashboard .pd-grid-2{gap:.5rem}.patient-dashboard .pd-stat-card{border-radius:.875rem;padding:.75rem}.patient-dashboard .pd-stat-card__value{font-size:1.125rem}.patient-dashboard .pd-stat-card__label{font-size:.6875rem}.patient-dashboard .pd-block__title{font-size:.9375rem;margin-bottom:.5rem}.patient-dashboard .pd-visit-card{border-radius:1rem}.patient-dashboard .pd-quick-tile{border-radius:.875rem;min-height:5.25rem}.patient-main .wallet-page,.patient-main .patient-appointments,.patient-main .book-appointment-page,.patient-main .book-doctor-page,.patient-main .hospitals-page{width:100%;box-sizing:border-box}.patient-main .hospitals-page .hospital-card.list{grid-template-columns:1fr}.patient-main .hospitals-page .hospital-card.list .hospital-image{height:10rem}.patient-main .hospitals-page .hospital-header{flex-direction:column;align-items:flex-start;gap:.375rem}.patient-main .hospitals-page .hospital-footer{flex-direction:column;align-items:flex-start;gap:.625rem}.patient-main .hospitals-page .hospital-meta{flex-direction:column;gap:.375rem}@media(min-width:640px){.patient-main .hospitals-page .hospital-header{flex-direction:row;align-items:flex-start;justify-content:space-between}.patient-main .hospitals-page .hospital-footer{flex-direction:row;align-items:center;justify-content:space-between}.patient-main .hospitals-page .hospital-meta{flex-direction:row;gap:1rem}.patient-main .hospitals-page .hospital-card.list{grid-template-columns:12rem 1fr}.patient-main .hospitals-page .hospital-card.list .hospital-image{height:100%;min-height:10rem}}.patient-main .book-appointment-page .container,.patient-main .book-doctor-container{overflow-x:hidden}@media(min-width:640px){.patient-dashboard .pd-hero__cta span{display:inline}.patient-dashboard .pd-grid-2{gap:.75rem}}@media(min-width:768px){.patient-main{padding:1rem 1.25rem calc(var(--patient-bottom-nav-height) + 1rem)}.patient-dashboard .pd-hero{padding:1.25rem 1.5rem}}.loading-container{display:flex;justify-content:center;align-items:center;min-height:240px}.loading-spinner{width:40px;height:40px;border:4px solid #e2e8f0;border-top-color:#0d9488;border-radius:50%;animation:loading-spin .8s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.loading-spinner{animation:none;border-top-color:#0d9488}}.home-page{--home-primary: #0D9488;--home-primary-light: #14B8A6;--home-primary-dark: #0F766E;--home-primary-bg: #F0FDFA;--home-secondary: #3B82F6;--home-bg: #F8FAFC;--home-surface: rgba(255, 255, 255, .85);--home-text: #0F172A;--home-text-muted: #64748B;--home-radius-lg: 28px;--home-transition: all .4s cubic-bezier(.16, 1, .3, 1);position:relative;isolation:isolate;overflow-x:hidden;min-height:100vh;background-color:var(--home-bg);background-image:radial-gradient(ellipse 80% 60% at 0% 0%,rgba(13,148,136,.2) 0%,transparent 55%),radial-gradient(ellipse 70% 50% at 100% 15%,rgba(59,130,246,.16) 0%,transparent 50%),radial-gradient(ellipse 90% 70% at 40% 100%,rgba(20,184,166,.14) 0%,transparent 55%);font-family:Plus Jakarta Sans,Inter,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--home-text)}.home-page>section,.home-page>.scroll-top-btn{position:relative;z-index:1}.home-page .bg-mesh{position:absolute;border-radius:50%;filter:blur(80px);z-index:0;opacity:.75;pointer-events:none;animation:home-float-blob 15s infinite alternate ease-in-out}.home-page .bg-mesh-1{top:-10%;left:-10%;width:50vw;height:50vw;background:radial-gradient(circle,#0D9488 0%,transparent 70%)}.home-page .bg-mesh-2{top:20%;right:-10%;width:40vw;height:40vw;background:radial-gradient(circle,#3B82F6 0%,transparent 70%);animation-delay:-5s}.home-page .bg-mesh-3{bottom:10%;left:20%;width:60vw;height:60vw;background:radial-gradient(circle,#14B8A6 0%,transparent 70%);animation-delay:-10s}.home-page .container{max-width:1280px;margin:0 auto;padding:0 24px;position:relative}.home-page .section-spacing{padding:100px 0}.home-page .text-center{text-align:center}.home-page .text-gradient{background:linear-gradient(135deg,#0d9488,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-page .glass-widget{background:var(--home-surface);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.5);box-shadow:0 20px 40px #0f172a0f;border-radius:var(--home-radius-lg)}.home-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:99px;font-weight:700;font-size:1rem;cursor:pointer;transition:var(--home-transition);text-decoration:none;border:none}.home-page .btn-gradient{background:linear-gradient(135deg,#0d9488,#3b82f6);color:#fff;box-shadow:0 10px 20px #0d948840}.home-page .btn-gradient:hover{transform:translateY(-2px);box-shadow:0 15px 25px #0d948859}.home-page .btn-ghost{background:transparent;color:var(--home-text)}.home-page .btn-ghost:hover{background:#0f172a0d}.home-page .btn-outline{border:2px solid #e2e8f0;color:var(--home-text);background:transparent}.home-page .btn-outline:hover{border-color:var(--home-primary);color:var(--home-primary)}.home-page .btn-full{width:100%}.home-page .btn-white{background:#fff;color:var(--home-primary)}.home-page .btn-outline-white{border:2px solid rgba(255,255,255,.5);color:#fff}.home-page .btn-outline-white:hover{background:#fff;color:var(--home-primary)}.home-page .hero-section{padding:32px 0 100px;min-height:100vh;display:flex;flex-direction:column;background:transparent;color:var(--home-text);text-align:initial;margin-bottom:0}.home-page .hero-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:60px}.home-page .hero-logo{display:flex;align-items:center;gap:12px;font-size:1.4rem;font-weight:800;color:#0f172a;text-decoration:none}.home-page .logo-image{height:48px}.home-page .hero-content{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;flex:1;color:var(--home-text);text-align:left;max-width:none;margin:0}.home-page .hero-badge-glow{display:inline-block;padding:2px;border-radius:99px;background:linear-gradient(90deg,#14b8a6,#3b82f6,#14b8a6);background-size:200% 100%;animation:home-shine 3s linear infinite;margin-bottom:24px}.home-page .hero-badge{display:block;background:var(--home-bg);padding:8px 16px;border-radius:99px;font-weight:700;font-size:.9rem;color:var(--home-text)}.home-page .hero-title{font-size:clamp(3rem,5vw,4.5rem);line-height:1.05;letter-spacing:-.04em;color:var(--home-text);margin-bottom:24px;font-weight:800;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-shadow:none;background:none;-webkit-text-fill-color:currentColor}.home-page .hero-subtitle{font-size:1.15rem;line-height:1.6;color:var(--home-text-muted);max-width:540px;margin-bottom:40px;font-weight:500;opacity:1}.home-page .search-widget{padding:12px;border-radius:99px;display:flex;flex-direction:column;gap:12px;margin-bottom:40px}.search-tabs{display:flex;gap:8px;padding:0 16px}.search-tab{background:transparent;border:none;font-weight:600;color:#64748b;padding:8px 16px;border-radius:99px;cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1)}.search-tab.active{background:#0d94881a;color:#0d9488}.search-input-group{display:flex;align-items:center;background:#fff;border-radius:99px;padding:6px 6px 6px 20px;box-shadow:inset 0 2px 4px #00000005}.search-icon{width:20px;height:20px;color:#64748b}.home-page .search-input{flex:1;border:none;background:transparent;padding:0 16px;font-size:1rem;outline:none;color:var(--home-text);background-image:none;box-shadow:none}.search-btn{padding:12px 32px}.highlights-row{display:flex;gap:16px;flex-wrap:wrap}.highlight-pill{display:flex;align-items:center;gap:12px;background:#fff;padding:12px 20px;border-radius:16px;box-shadow:0 4px 12px #0f172a0a;border:1px solid #f1f5f9}.highlight-icon{font-size:1.5rem}.highlight-data{display:flex;flex-direction:column}.highlight-data strong{font-size:1.1rem;color:#0f172a;font-weight:700}.highlight-data span{font-size:.85rem;color:#64748b}.hero-visual{position:relative;display:flex;justify-content:center;perspective:1000px}.phone-mockup-wrapper{position:relative;width:100%;max-width:320px}.phone-mockup{aspect-ratio:9/19;border-radius:40px;background:#0f172a;border:12px solid #fff;box-shadow:0 30px 60px #0f172a26;overflow:hidden;position:relative;z-index:2}.mockup-video{width:100%;height:100%;object-fit:cover}.glass-panel{position:absolute;display:flex;align-items:center;gap:12px;background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:12px 20px;border-radius:20px;box-shadow:0 20px 40px #0f172a0f;z-index:3;white-space:nowrap}.panel-left{top:60px;left:-80px}.panel-right{bottom:100px;right:-80px}.panel-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff}.panel-icon.success{background:#22c55e}.panel-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.panel-text{display:flex;flex-direction:column}.panel-text strong{font-size:.95rem;color:#0f172a}.panel-text span{font-size:.8rem;color:#64748b}.home-page .floating-anim{animation:home-float-slow 6s ease-in-out infinite}.home-page .floating-anim-reverse{animation:home-float-slow-reverse 7s ease-in-out infinite}.home-page .floating-anim-delayed{animation:home-float-slow 8s ease-in-out infinite 2s}.section-title{font-size:clamp(2rem,4vw,3rem);font-weight:800;margin-bottom:16px;color:#0f172a;text-rendering:optimizeLegibility}.section-description{font-size:1.1rem;color:#475569;max-width:600px;margin:0 auto 48px;line-height:1.6}.bento-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(200px,auto);gap:24px}.bento-card{padding:32px;display:flex;flex-direction:column}.bento-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.bento-header h3{font-size:1.4rem;color:#0f172a;font-weight:700}.bento-link{display:flex;align-items:center;gap:4px;color:#0d9488;font-weight:600;text-decoration:none}.bento-link:hover{text-decoration:underline;color:#0f766e}.bento-large{grid-column:span 8;grid-row:span 2}.bento-tall{grid-column:span 4;grid-row:span 2}.bento-wide{grid-column:span 12}.hospital-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.image-card{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:16/10;cursor:pointer}.image-card .bg-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.image-card:hover .bg-image{transform:scale(1.05)}.card-overlay{position:absolute;bottom:0;left:0;right:0;padding:24px 16px 16px;background:linear-gradient(transparent,#0f172ae6);color:#fff;display:flex;justify-content:space-between;align-items:flex-end}.card-overlay h4{margin:0;font-size:1.1rem}.card-overlay .rating{background:#fff3;padding:4px 8px;border-radius:8px;font-size:.85rem}.doctor-list{display:flex;flex-direction:column;gap:16px;margin-bottom:24px;flex:1}.avatar-card{display:flex;align-items:center;gap:16px;padding:12px;border-radius:16px;background:#fff;border:1px solid #f1f5f9;transition:all .4s cubic-bezier(.16,1,.3,1)}.avatar-card:hover{transform:translate(8px);border-color:#14b8a6}.avatar-img{width:56px;height:56px;border-radius:50%;object-fit:cover}.avatar-info{flex:1}.avatar-info h4{margin:0 0 4px;font-size:1.05rem;color:#0f172a}.avatar-info span{font-size:.85rem;color:#64748b}.avatar-rating{font-size:.9rem;font-weight:600;color:#f59e0b}.service-tags{display:flex;flex-wrap:wrap;gap:12px}.service-tag{display:flex;align-items:center;gap:8px;padding:12px 20px;border-radius:16px;background:#fff;border:1px solid #f1f5f9;cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1)}.service-tag:hover{border-color:#0d9488;background:#f0fdfa}.tag-icon{color:#0d9488;width:20px;height:20px}.service-tag span{font-weight:600;color:#0f172a}.service-tag small{color:#64748b;background:#f8fafc;padding:2px 8px;border-radius:99px}.service-tag.more{background:transparent;border:1px dashed #cbd5e1}.interactive-steps-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.steps-list{display:flex;flex-direction:column;gap:16px}.interactive-step-card{position:relative;padding:32px 40px;border-radius:24px;cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1);border:1px solid transparent}.interactive-step-card:hover{background:#fff6}.interactive-step-card.active{background:#fff;box-shadow:0 20px 40px #0f172a0f;transform:translate(10px)}.step-progress-bar{position:absolute;left:0;top:32px;bottom:32px;width:4px;background:#e2e8f0;border-radius:4px}.interactive-step-card.active .progress-fill{height:100%;background:#0d9488;border-radius:4px;transition:height .6s ease}.interactive-step-card h3{font-size:1.3rem;margin-bottom:12px;display:flex;align-items:center;gap:12px}.step-num{font-size:1.1rem;color:#0d9488;background:#e6f7f5;padding:4px 12px;border-radius:12px}.interactive-step-card p{color:#64748b;line-height:1.6;margin:0;opacity:.6;transition:opacity .3s ease}.interactive-step-card.active p{opacity:1}.step-visual-display{display:flex;justify-content:center;padding:40px}.mockup-frame{width:100%;max-width:300px;aspect-ratio:9/19;background:#0f172a;border-radius:40px;border:8px solid #fff;box-shadow:0 30px 60px #0000001a;overflow:hidden}.step-video{width:100%;height:100%;object-fit:cover}.home-page .masonry-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;align-items:start}.home-page .testimonial-box{padding:40px;border-radius:var(--home-radius-lg);position:relative}.home-page .testimonial-box p{font-size:1.15rem;line-height:1.7;margin-bottom:24px;position:relative;z-index:1;color:var(--home-text)}.home-page .quote-mark{font-size:4rem;font-family:serif;color:var(--home-primary);opacity:.2;position:absolute;top:20px;left:40px;line-height:1}.home-page .testimonial-author{display:flex;align-items:center;gap:16px}.home-page .testimonial-author img{width:50px;height:50px;border-radius:50%;object-fit:cover}.home-page .testimonial-author div{display:flex;flex-direction:column}.home-page .testimonial-author strong{font-size:1.05rem;color:var(--home-text)}.home-page .testimonial-author span{font-size:.85rem;color:var(--home-text-muted)}.home-page .testimonial-box.highlight-box{background:linear-gradient(135deg,#0f766e,#0d9488 45%,#2563eb);border:none;box-shadow:0 24px 48px #0d948840;color:#fff}.home-page .highlight-box p{color:#ffffffeb}.home-page .highlight-box .testimonial-author strong{color:#fff}.home-page .highlight-box .testimonial-author span{color:#ffffffc7}.home-page .highlight-box .quote-mark{color:#ffffff38}.home-page .cta-section{padding-bottom:120px}.home-page .cta-advanced-card{position:relative;padding:80px 40px;border-radius:40px;background:linear-gradient(135deg,#0d9488,#0f766e 35%,#2563eb);color:#fff;text-align:center;overflow:hidden;box-shadow:0 40px 80px #0d948847;border:1px solid rgba(255,255,255,.12)}.home-page .cta-bg-elements{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.18) 0%,transparent 42%),radial-gradient(circle at 10% 90%,rgba(255,255,255,.08) 0%,transparent 40%);pointer-events:none}.home-page .cta-advanced-card h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:20px;position:relative;z-index:1;color:#fff;font-weight:800}.home-page .cta-advanced-card p{font-size:1.1rem;max-width:600px;margin:0 auto 40px;position:relative;z-index:1;color:#ffffffeb;opacity:1}.home-page .cta-actions{display:flex;justify-content:center;gap:16px;position:relative;z-index:1;flex-wrap:wrap}.home-page .cta-advanced-card .btn-white{background:#fff;color:var(--home-primary-dark);font-weight:700;box-shadow:0 8px 20px #0f172a1f}.home-page .cta-advanced-card .btn-white:hover{background:#f0fdfa;color:var(--home-primary-dark);transform:translateY(-2px)}.home-page .cta-advanced-card .btn-outline-white{border:2px solid rgba(255,255,255,.85);color:#fff;background:#ffffff14;font-weight:700;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.home-page .cta-advanced-card .btn-outline-white:hover{background:#fff;color:var(--home-primary-dark);border-color:#fff}.home-page .scroll-top-btn{position:fixed;right:24px;bottom:24px;width:50px;height:50px;border-radius:50%;border:none;background:var(--home-text);color:#fff;font-size:1.2rem;cursor:pointer;box-shadow:0 10px 20px #0000001a;z-index:99;transition:transform .3s ease}.home-page .scroll-top-btn:hover{transform:translateY(-5px)}.home-page .reveal{opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.16,1,.3,1);will-change:opacity,transform;-webkit-font-smoothing:antialiased;backface-visibility:hidden}.home-page .reveal.revealed{opacity:1;transform:translateY(0)}.home-page .reveal-delay-1{transition-delay:.1s}.home-page .reveal-delay-2{transition-delay:.2s}.home-page .reveal-delay-3{transition-delay:.3s}@keyframes home-shine{to{background-position:200% center}}@keyframes home-float-slow{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes home-float-slow-reverse{0%,to{transform:translateY(0)}50%{transform:translateY(15px)}}@keyframes home-float-blob{0%,to{transform:translate(0) scale(1)}50%{transform:translate(20px,-20px) scale(1.05)}}@keyframes home-fadeIn{0%{opacity:0}to{opacity:1}}.home-page .hero-badge-glow{animation-name:home-shine}.home-page .floating-anim{animation-name:home-float-slow}.home-page .floating-anim-reverse{animation-name:home-float-slow-reverse}.home-page .floating-anim-delayed{animation-name:home-float-slow}.home-page .fade-in{animation:home-fadeIn .5s ease-in-out}.home-page .hero-title,.home-page .hero-subtitle,.home-page .section-title{color:var(--home-text)}.home-page .hero-subtitle,.home-page .section-description{color:var(--home-text-muted)}.dark-theme .home-page{--home-bg: #0F172A;--home-surface: rgba(30, 41, 59, .88);--home-text: #F8FAFC;--home-text-muted: #94A3B8;--home-primary-bg: #134E4A;background-image:radial-gradient(ellipse 80% 60% at 0% 0%,rgba(13,148,136,.28) 0%,transparent 55%),radial-gradient(ellipse 70% 50% at 100% 15%,rgba(59,130,246,.22) 0%,transparent 50%),radial-gradient(ellipse 90% 70% at 40% 100%,rgba(20,184,166,.2) 0%,transparent 55%)}.dark-theme .home-page .hero-logo,.dark-theme .home-page .hero-title,.dark-theme .home-page .hero-badge,.dark-theme .home-page .section-title,.dark-theme .home-page .bento-header h3,.dark-theme .home-page .avatar-info h4,.dark-theme .home-page .service-tag span,.dark-theme .home-page .highlight-data strong,.dark-theme .home-page .panel-text strong,.dark-theme .home-page .testimonial-box:not(.highlight-box) .testimonial-author strong{color:var(--home-text)}.dark-theme .home-page .hero-subtitle,.dark-theme .home-page .section-description,.dark-theme .home-page .interactive-step-card p,.dark-theme .home-page .avatar-info span,.dark-theme .home-page .highlight-data span,.dark-theme .home-page .panel-text span,.dark-theme .home-page .testimonial-box:not(.highlight-box) .testimonial-author span{color:var(--home-text-muted)}.dark-theme .home-page .hero-badge{background:#0f172ad9}.dark-theme .home-page .search-input-group,.dark-theme .home-page .highlight-pill,.dark-theme .home-page .avatar-card,.dark-theme .home-page .service-tag,.dark-theme .home-page .interactive-step-card.active{background:#1e293be6;border-color:#334155cc}.dark-theme .home-page .search-input,.dark-theme .home-page .btn-ghost{color:var(--home-text)}.dark-theme .home-page .btn-ghost:hover{background:#ffffff14}.dark-theme .home-page .glass-widget:not(.highlight-box),.dark-theme .home-page .glass-panel{background:var(--home-surface);border-color:#33415599}.dark-theme .home-page .testimonial-box.highlight-box{background:linear-gradient(135deg,#115e59,#0d9488 40%,#1d4ed8);box-shadow:0 24px 48px #00000059}.dark-theme .home-page .cta-advanced-card{background:linear-gradient(135deg,#0f766e,#134e4a 30%,#1e40af);box-shadow:0 40px 80px #0006;border-color:#ffffff1a}.dark-theme .home-page .cta-advanced-card h2,.dark-theme .home-page .cta-advanced-card p{color:#fff}.dark-theme .home-page .cta-advanced-card p{color:#ffffffe6}.dark-theme .home-page .cta-advanced-card .btn-white{background:#fff;color:#0f766e}.dark-theme .home-page .cta-advanced-card .btn-outline-white{color:#fff;border-color:#ffffffbf;background:#ffffff0f}.dark-theme .home-page .cta-advanced-card .btn-outline-white:hover{background:#fff;color:#0f766e}@media(max-width:1024px){.home-page .hero-content{grid-template-columns:1fr;text-align:center;gap:40px}.home-page .hero-subtitle{margin:0 auto 40px}.home-page .search-widget{max-width:600px;margin:0 auto 40px;border-radius:32px}.home-page .search-input-group{border-radius:24px}.home-page .highlights-row{justify-content:center}.home-page .glass-panel{display:none}.home-page .bento-grid{display:flex;flex-direction:column}.home-page .interactive-steps-layout{grid-template-columns:1fr}.home-page .step-visual-display{order:-1;padding:0}.home-page .interactive-step-card.active{transform:translate(0)}}@media(max-width:768px){.home-page .section-spacing{padding:60px 0}.home-page .hero-header{flex-direction:column;gap:20px;align-items:stretch;margin-bottom:40px}.home-page .hero-actions{display:grid;grid-template-columns:1fr 1fr}.home-page .search-input-group{flex-direction:column;padding:8px;border-radius:24px}.home-page .search-icon{display:none}.home-page .search-input{width:100%;padding:12px;text-align:center}.home-page .search-btn{width:100%}.home-page .hospital-list,.home-page .masonry-grid{grid-template-columns:1fr}.home-page .cta-advanced-card{padding:56px 24px;border-radius:28px}.home-page .cta-actions{flex-direction:column}.home-page .cta-advanced-card .btn-white,.home-page .cta-advanced-card .btn-outline-white{width:100%}}@media(prefers-reduced-motion:reduce){.home-page .reveal,.home-page .bg-mesh,.home-page .floating-anim,.home-page .floating-anim-reverse,.home-page .floating-anim-delayed{animation:none!important;transition:none!important;transform:none!important}.home-page .reveal{opacity:1!important}}.patient-dashboard{--pd-bg: var(--background, #f1f5f9);--pd-surface: var(--surface, #ffffff);--pd-border: var(--border, #e2e8f0);--pd-text: var(--text-primary, #0f172a);--pd-muted: var(--text-secondary, #64748b);--pd-teal: var(--primary-color, #0d9488);--pd-teal-dark: var(--primary-dark, #0f766e);--pd-radius: 14px;--pd-radius-sm: 10px;--pd-gap: .625rem;--pd-shadow: 0 1px 3px rgba(15, 23, 42, .06), 0 4px 14px rgba(15, 23, 42, .04);width:100%;max-width:920px;margin:0 auto;padding:0 0 1rem;display:flex;flex-direction:column;gap:.875rem}.dark-theme .patient-dashboard{--pd-bg: var(--background, #0f172a);--pd-surface: var(--surface, #1e293b);--pd-border: var(--border, #334155);--pd-shadow: 0 2px 8px rgba(0, 0, 0, .25)}.pd-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--pd-gap);width:100%}.pd-grid-2--stretch{align-items:stretch}.pd-hero{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.625rem;padding:1rem 1.125rem;border-radius:var(--pd-radius);background:var(--brand-gradient);color:#fff;box-shadow:var(--brand-gradient-shadow)}.pd-hero__content{min-width:0}.pd-hero__cta{grid-column:2;grid-row:1 / span 2;align-self:center;flex-shrink:0;display:inline-flex;align-items:center;gap:.35rem;padding:.55rem .85rem;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:#ffffff2e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:.75rem;font-weight:700;cursor:pointer;white-space:nowrap}.pd-hero__date{display:block;font-size:.75rem;opacity:.85;font-weight:500;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.2rem}.pd-hero__title{font-size:clamp(1.125rem,4.5vw,1.25rem);font-weight:800;margin:0;line-height:1.2;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-hero__error{margin:.35rem 0 0;font-size:.75rem;color:#fecaca}.pd-hero__cta:active{transform:scale(.97)}.pd-wallet-banner{display:flex;align-items:center;gap:.75rem;width:100%;padding:.875rem 1rem;border:1px solid var(--pd-border);border-radius:var(--pd-radius);background:var(--pd-surface);box-shadow:var(--pd-shadow);cursor:pointer;text-align:left;color:inherit}.pd-wallet-banner:active{transform:scale(.99)}.pd-wallet-banner__icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f0fdfa,#ccfbf1);color:var(--pd-teal);flex-shrink:0}.dark-theme .pd-wallet-banner__icon{background:#0d948833}.pd-wallet-banner__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.pd-wallet-banner__text span{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--pd-muted)}.pd-wallet-banner__text strong{font-size:1.125rem;font-weight:800;color:var(--pd-text);letter-spacing:-.02em}.pd-wallet-banner__chev{color:var(--pd-muted);flex-shrink:0}.pd-alert{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem .875rem;border-radius:var(--pd-radius-sm);border:1px solid rgba(239,68,68,.2);background:#fee2e299;color:#b91c1c;font-size:.8125rem;font-weight:600;cursor:pointer}.dark-theme .pd-alert{background:#7f1d1d40;color:#fca5a5}.pd-alert span{flex:1;text-align:left}.pd-block{display:flex;flex-direction:column;gap:.625rem}.pd-block__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.pd-block__title{font-size:.9375rem;font-weight:800;color:var(--pd-text);margin:0;letter-spacing:-.01em}.pd-link{display:inline-flex;align-items:center;gap:.1rem;border:none;background:none;color:var(--pd-teal);font-size:.8125rem;font-weight:600;cursor:pointer;padding:0}.pd-panel{background:var(--pd-surface);border:1px solid var(--pd-border);border-radius:var(--pd-radius);padding:.875rem;box-shadow:var(--pd-shadow);min-height:0}.pd-panel__empty{font-size:.8125rem;color:var(--pd-muted);margin:0;line-height:1.45}.pd-stat-card{display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:.75rem;min-height:118px;border:1px solid var(--pd-border);border-radius:var(--pd-radius);background:var(--pd-surface);box-shadow:var(--pd-shadow);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;position:relative;overflow:hidden}.pd-stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--pd-radius) var(--pd-radius) 0 0}.pd-stat-card--blue:before{background:#3b82f6}.pd-stat-card--purple:before{background:#9333ea}.pd-stat-card--rose:before{background:#e11d48}.pd-stat-card--teal:before{background:#0d9488}.pd-stat-card:active{transform:scale(.97)}.pd-stat-card__top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:.5rem}.pd-stat-card__icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center}.pd-stat-card--blue .pd-stat-card__icon{background:#eff6ff;color:#2563eb}.pd-stat-card--purple .pd-stat-card__icon{background:#faf5ff;color:#9333ea}.pd-stat-card--rose .pd-stat-card__icon{background:#fff1f2;color:#e11d48}.pd-stat-card--teal .pd-stat-card__icon{background:#f0fdfa;color:#0d9488}.dark-theme .pd-stat-card--blue .pd-stat-card__icon{background:#3b82f626}.dark-theme .pd-stat-card--purple .pd-stat-card__icon{background:#9333ea26}.dark-theme .pd-stat-card--rose .pd-stat-card__icon{background:#e11d4826}.dark-theme .pd-stat-card--teal .pd-stat-card__icon{background:#0d948833}.pd-stat-card__chev{color:var(--pd-muted);opacity:.5}.pd-stat-card__label{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--pd-muted)}.pd-stat-card__value{display:block;font-size:1.375rem;font-weight:800;color:var(--pd-text);line-height:1.15;margin:.15rem 0;letter-spacing:-.02em}.pd-stat-card__hint{font-size:.625rem;color:var(--pd-muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pd-visit-card{background:var(--pd-surface);border:1px solid var(--pd-border);border-radius:var(--pd-radius);padding:1rem;box-shadow:var(--pd-shadow);border-left:4px solid var(--pd-teal)}.pd-visit-card__header{display:flex;gap:.75rem;align-items:center;margin-bottom:.75rem}.pd-visit-card__avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--pd-teal),#2563eb);color:#fff;font-weight:800;font-size:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pd-visit-card__meta h3{margin:.15rem 0 0;font-size:1rem;font-weight:700;color:var(--pd-text)}.pd-visit-card__meta p{margin:.1rem 0 0;font-size:.75rem;color:var(--pd-muted)}.pd-visit-card__badge{display:inline-block;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .45rem;border-radius:999px;background:#0d94881f;color:var(--pd-teal)}.pd-visit-card__details{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.875rem;padding:.625rem .75rem;border-radius:var(--pd-radius-sm);background:var(--pd-bg)}.pd-visit-card__row{display:flex;align-items:center;gap:.4rem;font-size:.8125rem;color:var(--pd-muted)}.pd-visit-card__row svg{color:var(--pd-teal);flex-shrink:0}.pd-visit-card__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--pd-gap)}.pd-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.625rem .75rem;border-radius:var(--pd-radius-sm);font-size:.8125rem;font-weight:700;cursor:pointer;border:none;width:100%}.pd-btn--primary{background:var(--pd-teal);color:#fff}.pd-btn--outline{background:transparent;border:1px solid var(--pd-border);color:var(--pd-text)}.pd-visit-card__actions .pd-btn--primary{grid-column:span 2}.pd-visit-card__actions .pd-btn--outline:only-child,.pd-visit-card__actions .pd-btn--outline:last-child:nth-child(2){grid-column:span 1}.pd-visit-card__actions:has(.pd-btn--outline:only-child){grid-template-columns:1fr}.pd-visit-card__actions:has(.pd-btn--outline:only-child) .pd-btn--outline{grid-column:span 1}.pd-record-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.pd-record-item{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:.5rem .625rem;border:none;border-radius:8px;background:var(--pd-bg);cursor:pointer;text-align:left;color:inherit}.pd-record-item:active{background:var(--pd-border)}.pd-record-item__title{font-size:.75rem;font-weight:600;color:var(--pd-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.pd-record-item__meta{font-size:.6875rem;color:var(--pd-muted);margin-top:.1rem}.pd-health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--pd-gap)}.pd-health-tile{padding:.625rem;border-radius:var(--pd-radius-sm);background:var(--pd-bg);border:1px solid transparent;min-height:72px}.pd-health-tile:nth-child(3){grid-column:span 2}.pd-health-tile--empty{opacity:.75}.pd-health-tile__icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--pd-surface);color:var(--pd-teal);margin-bottom:.35rem}.pd-health-tile__label{display:block;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--pd-muted)}.pd-health-tile__value{margin:.2rem 0 0;font-size:.75rem;font-weight:600;color:var(--pd-text);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pd-health-tile--empty .pd-health-tile__value{font-style:italic;color:var(--pd-muted);font-weight:500}.pd-quick-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;min-height:88px;padding:.75rem .5rem;border:1px solid var(--pd-border);border-radius:var(--pd-radius);background:var(--pd-surface);box-shadow:var(--pd-shadow);cursor:pointer;font-size:.75rem;font-weight:700;color:var(--pd-text);text-align:center;line-height:1.2}.pd-quick-tile:active{transform:scale(.97)}.pd-quick-tile__icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center}.pd-quick-tile--teal .pd-quick-tile__icon{background:#f0fdfa;color:#0d9488}.pd-quick-tile--blue .pd-quick-tile__icon{background:#eff6ff;color:#2563eb}.pd-quick-tile--purple .pd-quick-tile__icon{background:#faf5ff;color:#9333ea}.pd-quick-tile--rose .pd-quick-tile__icon{background:#fff1f2;color:#e11d48}.pd-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 1rem;border:1px dashed var(--pd-border);border-radius:var(--pd-radius);background:var(--pd-surface);color:var(--pd-muted);text-align:center}.pd-empty p{margin:0;font-size:.875rem}.pd-empty .pd-btn{width:auto;margin-top:.25rem;padding-left:1.25rem;padding-right:1.25rem}@media(min-width:640px){.patient-dashboard{gap:1rem;padding-bottom:1.5rem}.pd-hero__title{font-size:1.5rem}.pd-stat-card{min-height:130px;padding:.875rem}.pd-stat-card__value{font-size:1.5rem}.pd-grid-2--stretch{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-health-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pd-health-tile:nth-child(3){grid-column:span 1}}@media(min-width:768px){.pd-grid-2:not(.pd-grid-2--stretch){grid-template-columns:repeat(4,minmax(0,1fr))}.pd-visit-card__actions{display:flex;flex-wrap:wrap}.pd-visit-card__actions .pd-btn{width:auto;flex:0 0 auto}.pd-visit-card__actions .pd-btn--primary{grid-column:auto}}@media(max-width:360px){.pd-hero__cta span{display:none}.pd-stat-card__value{font-size:1.2rem}.pd-gap-tight{gap:.5rem}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--brand-gradient-soft);position:relative;overflow:hidden;padding:var(--space-4)}.auth-background{position:absolute;inset:0;overflow:hidden}.bg-shape{position:absolute;border-radius:50%;opacity:.1}.bg-shape-1{width:600px;height:600px;background:var(--white);top:-200px;right:-100px;animation:float 20s ease-in-out infinite}.bg-shape-2{width:400px;height:400px;background:var(--white);bottom:-100px;left:-100px;animation:float 15s ease-in-out infinite reverse}.bg-shape-3{width:200px;height:200px;background:var(--white);top:50%;left:50%;transform:translate(-50%,-50%);animation:pulse 10s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-30px) rotate(5deg)}}.auth-container{position:relative;z-index:10;width:100%;max-width:440px}.auth-card{background:var(--white);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:0 25px 50px -12px #00000040;animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-logo{width:72px;height:72px;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-5);color:var(--white);box-shadow:0 10px 25px -5px #0d948866}.auth-header h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-2)}.auth-header p{color:var(--text-secondary);margin:0;font-size:.9375rem}.auth-form{margin-bottom:var(--space-6)}.auth-error{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:#fee2e2;color:#991b1b;border-radius:var(--radius);margin-bottom:var(--space-5);font-size:.875rem;animation:shake .5s ease-in-out}.auth-toast{position:fixed;top:24px;right:24px;z-index:2000;min-width:280px;max-width:420px;display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:12px;color:#fff;font-weight:600;box-shadow:0 16px 30px #0003;animation:toastIn .25s ease-out}.auth-toast-icon{width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#fff3;font-size:12px;font-weight:700}.auth-toast-success{background:linear-gradient(135deg,#16a34a,#15803d)}.auth-toast-warning{background:linear-gradient(135deg,#d97706,#b45309)}.auth-toast-error{background:linear-gradient(135deg,#dc2626,#b91c1c)}@keyframes toastIn{0%{opacity:0;transform:translateY(-10px) translate(6px)}to{opacity:1;transform:translateY(0) translate(0)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.input-wrapper{position:relative}.input-icon{position:absolute;left:var(--space-4);top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.form-input.with-icon{padding-left:48px}.password-toggle{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);background:none;border:none;padding:var(--space-2);cursor:pointer;color:var(--text-muted);border-radius:var(--radius);transition:var(--transition)}.password-toggle:hover{color:var(--text-primary);background:var(--background)}.form-options{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.checkbox-label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;color:var(--text-secondary);font-size:.875rem}.checkbox-label input{width:16px;height:16px;accent-color:var(--primary-color)}.forgot-link{color:var(--primary-color);font-size:.875rem;font-weight:500}.forgot-link:hover{text-decoration:underline}.auth-footer{text-align:center;margin-bottom:var(--space-5)}.auth-footer p{color:var(--text-secondary);font-size:.875rem;margin:0}.auth-footer a{color:var(--primary-color);font-weight:600}.auth-footer a:hover{text-decoration:underline}.auth-divider{position:relative;text-align:center;margin-bottom:var(--space-5)}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border)}.auth-divider span{position:relative;background:var(--white);padding:0 var(--space-4);color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.social-login{display:flex;gap:var(--space-3)}.social-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--white);border:2px solid var(--border);border-radius:var(--radius);font-size:.875rem;font-weight:500;color:var(--text-primary);cursor:pointer;transition:var(--transition)}.social-btn:hover{background:var(--background);border-color:var(--text-light)}.auth-copyright{text-align:center;color:#fff9;font-size:.75rem;margin-top:var(--space-5)}.loading-spinner.small{width:18px;height:18px;border-width:2px}@media(max-width:480px){.auth-card{padding:var(--space-6)}.auth-header h1{font-size:1.5rem}.social-login{flex-direction:column}.auth-toast{top:12px;right:12px;left:12px;min-width:auto;max-width:none}}.auth-card.register-card{max-width:520px}.register-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.terms-label{font-size:.8125rem;color:var(--text-secondary);line-height:1.5}.terms-label a{color:var(--primary-color)}.role-selector-card{width:100%;padding:clamp(40px,8vw,64px);max-width:1600px}.role-card{padding:clamp(28px,6vw,40px);min-height:clamp(280px,50vh,380px)}.role-cards{display:flex;flex-direction:column;gap:24px}.role-card{display:flex;flex-direction:column;padding:clamp(20px,5vw,28px);border-radius:var(--radius-lg);text-decoration:none;transition:all .3s ease;border:2px solid var(--border-light);background:var(--white);box-shadow:var(--shadow);height:fit-content;max-height:clamp(260px,45vh,320px);overflow:hidden;position:relative}.role-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.role-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color))}.role-icon{font-size:clamp(2.5rem,8vw,3.5rem);margin-bottom:clamp(12px,3vw,16px);text-align:center}.role-icon svg{width:clamp(48px,12vw,64px);height:clamp(48px,12vw,64px)}.role-card h3{font-size:clamp(1.125rem,3.5vw,1.375rem);font-weight:700;margin-bottom:clamp(8px,2vw,12px);line-height:1.3;color:var(--text-primary)}.role-card p{color:var(--text-secondary);line-height:1.4;font-size:clamp(.8rem,2.2vw,.925rem);flex-grow:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:clamp(8px,2vw,12px)}.role-fee,.role-badge{font-size:clamp(1rem,2.8vw,1.125rem);font-weight:700;color:var(--primary-color);margin-top:auto;margin-bottom:clamp(4px,1.5vw,8px)}.role-steps{font-size:clamp(.8125rem,2vw,.875rem);color:var(--text-muted);margin-bottom:clamp(8px,2vw,12px)}.role-arrow{align-self:flex-end;font-size:clamp(1.125rem,3vw,1.375rem);color:var(--primary-color)}.customer-card:before{background:linear-gradient(90deg,var(--success),#059669)}.doctor-card:before{background:linear-gradient(90deg,var(--warning),#D97706)}.hospital-card:before{background:linear-gradient(90deg,var(--secondary-color),#4F46E5)}@media(min-width:640px){.role-cards{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}}@media(min-width:1024px){.role-selector-card{max-width:1200px;padding:40px}.role-cards{grid-template-columns:repeat(3,1fr);gap:32px}.role-card{padding:32px}}.hospitals-page{--hp-primary: #0d9488;--hp-primary-dark: #0f766e;--hp-primary-light: #14b8a6;--hp-secondary: #2563eb;--hp-surface: var(--patient-surface, #ffffff);--hp-border: var(--patient-border, #e2e8f0);--hp-text: var(--patient-text, #0f172a);--hp-muted: var(--patient-text-muted, #64748b);--hp-shadow: 0 1px 3px rgba(15, 23, 42, .06), 0 4px 14px rgba(15, 23, 42, .04);--hp-transition: all .25s ease;--primary: var(--hp-primary);--primary-dark: var(--hp-primary-dark);--primary-light: var(--hp-primary-light);--secondary: var(--hp-secondary);--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;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--transition: var(--hp-transition);width:100%;max-width:920px;margin:0 auto;padding:0 0 1rem;color:var(--hp-text)}.hospitals-page .hospitals-hero:not(.hospitals-hero--modern){position:relative;min-height:600px;background:var(--brand-gradient);overflow:hidden;display:flex;align-items:center;padding:120px 0 80px}.hospitals-hero .hero-particles{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.1) 0%,transparent 20%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.1) 0%,transparent 25%),radial-gradient(circle at 40% 80%,rgba(255,255,255,.08) 0%,transparent 30%),radial-gradient(circle at 90% 20%,rgba(255,255,255,.08) 0%,transparent 25%);animation:particleFloat 20s ease-in-out infinite}.hospitals-hero .hero-pattern{position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 0 L30 60 M0 30 L60 30' stroke='rgba(255,255,255,0.05)' stroke-width='1'/%3E%3C/svg%3E");opacity:.5}.hospitals-hero .hero-content{position:relative;z-index:2;max-width:900px;margin:0 auto;text-align:center;color:#fff}.hospitals-hero .hero-title{font-size:clamp(2.5rem,8vw,4.5rem);font-weight:800;line-height:1.1;margin-bottom:24px;text-shadow:0 4px 12px rgba(0,0,0,.2)}.hospitals-hero .gradient-text{background:linear-gradient(135deg,#fcd34d,#fbbf24);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}.hospitals-hero .hero-subtitle{font-size:1.25rem;line-height:1.6;margin-bottom:40px;opacity:.95;max-width:600px;margin-left:auto;margin-right:auto}.hospitals-hero .hero-search{margin-bottom:40px}.search-wrapper{display:flex;align-items:center;background:#fff;border-radius:60px;padding:4px;box-shadow:0 20px 40px #0003;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:700px;margin:0 auto}.search-wrapper svg{margin-left:20px;color:var(--gray-400)}.search-wrapper input{flex:1;border:none;padding:18px 16px;font-size:1rem;background:transparent;outline:none;color:var(--gray-800)}.search-wrapper input::placeholder{color:var(--gray-400)}.filter-toggle{display:flex;align-items:center;gap:8px;padding:12px 24px;background:var(--primary);color:#fff;border:none;border-radius:60px;font-weight:600;cursor:pointer;transition:var(--transition);margin-right:4px}.filter-toggle:hover{background:var(--primary-dark);transform:translateY(-2px)}.quick-filters{display:flex;gap:12px;justify-content:center;margin-top:20px;flex-wrap:wrap}.quick-filter{padding:8px 20px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:40px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:var(--transition);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;gap:6px}.quick-filter:hover{background:#fff3;transform:translateY(-2px)}.quick-filter.active{background:#fff;color:var(--primary);border-color:#fff}.hospitals-hero .hero-stats{display:flex;justify-content:center;gap:60px;margin-top:60px}.stat-item{text-align:center}.stat-number{font-size:2.5rem;font-weight:700;display:block;margin-bottom:4px;background:linear-gradient(135deg,#fcd34d,#fbbf24);-webkit-background-clip:text;background-clip:text;color:transparent}.stat-label{font-size:.875rem;text-transform:uppercase;letter-spacing:1px;opacity:.8}.advanced-filters{position:absolute;top:120px;left:50%;transform:translate(-50%);width:90%;max-width:800px;background:#fff;border-radius:24px;box-shadow:var(--shadow-xl);z-index:50;overflow:hidden}.filters-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff}.filters-header h3{font-size:1.25rem;font-weight:600}.close-btn{background:#fff3;border:none;color:#fff;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition)}.close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.filters-body{padding:24px;max-height:400px;overflow-y:auto}.filter-group{margin-bottom:24px}.filter-group label{display:block;font-weight:600;margin-bottom:12px;color:var(--gray-700)}.filter-group input[type=range]{width:100%;margin-bottom:8px}.checkbox-group{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.875rem;color:var(--gray-600)}.checkbox-label input{width:16px;height:16px;cursor:pointer}.filters-footer{display:flex;gap:12px;padding:20px 24px;background:var(--gray-50);border-top:1px solid var(--gray-200)}.filters-footer button{flex:1}.results-header{display:flex;justify-content:space-between;align-items:center;margin:40px 0 24px;flex-wrap:wrap;gap:20px}.results-info h2{font-size:1.5rem;font-weight:700;color:var(--gray-800);margin-bottom:4px}.results-info p{color:var(--gray-500)}.results-controls{display:flex;gap:16px;align-items:center}.sort-select{padding:10px 16px;border:1px solid var(--gray-200);border-radius:8px;background:#fff;color:var(--gray-700);font-weight:500;cursor:pointer;outline:none;transition:var(--transition)}.sort-select:hover{border-color:var(--primary)}.view-toggle{display:flex;gap:8px;background:var(--gray-100);padding:4px;border-radius:8px}.view-btn{padding:8px;background:transparent;border:none;border-radius:6px;color:var(--gray-500);cursor:pointer;transition:var(--transition)}.view-btn:hover{color:var(--primary)}.view-btn.active{background:#fff;color:var(--primary);box-shadow:var(--shadow-sm)}.hospitals-container{display:grid;gap:24px;margin:40px 0}.hospitals-container.grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.hospitals-container.list{grid-template-columns:1fr}.hospital-card-link{text-decoration:none;color:inherit;display:block}.hospital-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-md);transition:var(--transition);height:100%;position:relative}.hospital-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}.hospital-card.grid{display:flex;flex-direction:column}.hospital-card.list{display:grid;grid-template-columns:280px 1fr}.hospital-image-wrapper{position:relative;overflow:hidden}.hospital-card.list .hospital-image-wrapper{height:100%}.hospital-image{height:220px;background-size:cover;background-position:center;transition:transform .6s ease;position:relative}.hospital-card.list .hospital-image{height:100%}.hospital-card:hover .hospital-image{transform:scale(1.1)}.image-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.3) 100%)}.emergency-badge{position:absolute;top:16px;left:16px;background:#ef4444f2;color:#fff;padding:6px 12px;border-radius:40px;font-size:.75rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2}.featured-badge{position:absolute;top:16px;right:16px;background:#f59e0bf2;color:#fff;padding:6px 12px;border-radius:40px;font-size:.75rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2}.hospital-content{padding:24px;flex:1}.hospital-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.hospital-name{font-size:1.25rem;font-weight:700;color:var(--gray-800);margin:0;flex:1}.hospital-rating{display:flex;align-items:center;gap:4px;background:var(--gray-50);padding:4px 8px;border-radius:20px}.rating-value{font-weight:600;color:var(--gray-800)}.rating-count{font-size:.75rem;color:var(--gray-500)}.hospital-location{display:flex;align-items:center;gap:6px;color:var(--primary);font-size:.875rem;margin-bottom:12px}.hospital-description{color:var(--gray-600);font-size:.875rem;line-height:1.6;margin-bottom:16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hospital-specialties{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.specialty-tag{padding:4px 10px;background:var(--gray-100);border-radius:20px;font-size:.75rem;color:var(--gray-600);transition:var(--transition)}.specialty-tag:hover{background:var(--primary);color:#fff}.specialty-tag.more{background:var(--primary-light);color:#fff}.hospital-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--gray-100)}.hospital-meta{display:flex;gap:16px}.meta-item{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--gray-500)}.view-details{display:flex;align-items:center;gap:4px;color:var(--primary);font-weight:600;font-size:.875rem}.loading-container{display:grid;gap:24px;margin:40px 0}.loading-container.grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.skeleton-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.skeleton-image{height:200px;background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-300) 50%,var(--gray-200) 75%);background-size:200% 100%;animation:loading 1.5s infinite}.skeleton-content{padding:24px}.skeleton-title{height:24px;width:60%;background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-300) 50%,var(--gray-200) 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px;margin-bottom:12px}.skeleton-text{height:16px;background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-300) 50%,var(--gray-200) 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px;margin-bottom:8px}.skeleton-text.short{width:40%}.empty-state{text-align:center;padding:80px 20px;background:#fff;border-radius:24px;box-shadow:var(--shadow)}.empty-state-icon{font-size:5rem;margin-bottom:24px;opacity:.5}.empty-state h3{font-size:1.5rem;color:var(--gray-700);margin-bottom:8px}.empty-state p{color:var(--gray-500);margin-bottom:24px}.load-more{text-align:center;margin:60px 0}.btn-large{padding:16px 48px;font-size:1.125rem}@keyframes particleFloat{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.1);opacity:.7}}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@media(max-width:1024px){.hospitals-hero .hero-stats{gap:40px}.stat-number{font-size:2rem}}@media(max-width:768px){.hospitals-hero{min-height:500px;padding:100px 0 60px}.hospitals-hero .hero-title{font-size:2.5rem}.search-wrapper{flex-direction:column;background:transparent;box-shadow:none;gap:12px}.search-wrapper svg{display:none}.search-wrapper input{width:100%;background:#fff;border-radius:60px;padding:16px 24px}.filter-toggle{width:100%;justify-content:center;margin:0}.hospitals-hero .hero-stats{flex-direction:column;gap:20px;align-items:center}.results-header{flex-direction:column;align-items:stretch}.results-controls{justify-content:space-between}.hospital-card.list{grid-template-columns:1fr}.hospital-card.list .hospital-image{height:200px}.quick-filters{justify-content:flex-start;overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch}.advanced-filters{width:95%;top:100px}.checkbox-group{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}@media(max-width:480px){.hospital-header,.hospital-meta{flex-direction:column;gap:8px}.hospital-footer{flex-direction:column;gap:16px;align-items:flex-start}.view-details{align-self:flex-end}.results-controls{flex-direction:column}.sort-select,.view-toggle{width:100%}.view-toggle{justify-content:stretch}.view-btn{flex:1;display:flex;justify-content:center}}@media print{.hospitals-hero,.filter-toggle,.quick-filters,.results-controls,.load-more{display:none}}.hospitals-hero--modern{position:relative;min-height:auto;padding:1.125rem 1rem 1.25rem;margin:0 0 .875rem;border-radius:1rem;background:#0b1220;isolation:isolate;overflow:hidden}.hospitals-hero-inner{position:relative;z-index:2;max-width:920px;margin:0 auto}.hospitals-hero--modern .hero-mesh{position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 10% 20%,rgba(13,148,136,.45) 0%,transparent 55%),radial-gradient(ellipse 70% 50% at 90% 10%,rgba(37,99,235,.4) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 50% 100%,rgba(124,58,237,.25) 0%,transparent 55%),linear-gradient(155deg,#0b1220,#0f172a 45%,#111827)}.hospitals-hero--modern .hero-orb{position:absolute;border-radius:50%;filter:blur(48px);opacity:.55;animation:heroOrbFloat 14s ease-in-out infinite}.hospitals-hero--modern .hero-orb--1{width:180px;height:180px;background:#14b8a6;top:-40px;right:10%}.hospitals-hero--modern .hero-orb--2{width:140px;height:140px;background:#3b82f6;bottom:-30px;left:5%;animation-delay:-4s}.hospitals-hero--modern .hero-orb--3{width:100px;height:100px;background:#8b5cf6;top:40%;left:45%;animation-delay:-8s}.hospitals-hero--modern .hero-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,black 20%,transparent 75%);mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,black 20%,transparent 75%)}@keyframes heroOrbFloat{0%,to{transform:translate(0) scale(1)}50%{transform:translate(12px,-16px) scale(1.08)}}.hospitals-hero--modern .hero-content{text-align:left;max-width:none;margin:0}.hospitals-hero--modern .hero-eyebrow{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .85rem;margin-bottom:1rem;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.02em;color:#a7f3d0;background:#10b9811f;border:1px solid rgba(16,185,129,.25)}.hero-eyebrow-dot{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 10px #34d399;animation:pulseDot 2s ease-in-out infinite}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}.hospitals-hero--modern .hero-title{font-size:clamp(1.75rem,5vw,2.75rem);margin-bottom:.75rem;text-align:left}.hospitals-hero--modern .hero-subtitle{font-size:1rem;margin:0 0 1.5rem;max-width:36rem;text-align:left;color:#ffffffd1}.hospitals-hero--modern .hero-search--glass{margin-bottom:1.25rem}.hospitals-hero--modern .search-wrapper{margin:0;max-width:none;border-radius:1rem;padding:6px;box-shadow:0 16px 40px #00000059}.hospitals-hero--modern .quick-filters{justify-content:flex-start;flex-wrap:wrap;margin-top:.75rem;gap:.5rem}.hospitals-hero--modern .quick-filter{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hospitals-hero--modern .quick-filter.active{background:#ffffff2e;border-color:#ffffff59}.hospitals-hero--modern .hero-stats--glass{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:.25rem}.hospitals-hero--modern .hero-stats--glass .stat-item{padding:.875rem 1rem;border-radius:.875rem;background:#ffffff12;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:left}.hospitals-hero--modern .hero-stats--glass .stat-number{display:block;font-size:1.35rem;font-weight:800;color:#fff}.hospitals-hero--modern .hero-stats--glass .stat-label{font-size:.7rem;color:#ffffffa6;text-transform:uppercase;letter-spacing:.05em}.hospitals-page .container{max-width:920px;margin:0 auto;padding:0}.hospitals-page .results-header{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;margin:0 0 .875rem}.hospitals-page .results-info h2{font-size:1.0625rem;font-weight:800;color:var(--hp-text);margin:0 0 .15rem}.hospitals-page .results-info p{margin:0;font-size:.8125rem;color:var(--hp-muted)}.hospitals-page .results-controls{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between}.hospitals-page .sort-select{flex:1 1 auto;min-width:0;padding:.625rem .75rem;border:1px solid var(--hp-border);border-radius:.625rem;background:var(--hp-surface);color:var(--hp-text);font-size:.875rem;font-weight:500}.hospitals-page .view-toggle{display:flex;gap:.25rem;background:var(--patient-surface-hover, #f1f5f9);padding:.25rem;border-radius:.625rem;border:1px solid var(--hp-border)}.hospitals-page .view-btn{padding:.5rem;background:transparent;border:none;border-radius:.5rem;color:var(--hp-muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.hospitals-page .view-btn.active{background:var(--hp-surface);color:var(--hp-primary);box-shadow:var(--hp-shadow)}.hospitals-page .hospitals-container{display:grid;gap:.875rem;margin:0 0 1rem}.hospitals-page .hospitals-container.grid,.hospitals-page .loading-container.grid{grid-template-columns:1fr}.hospitals-page .hospital-card{background:var(--hp-surface);border:1px solid var(--hp-border);border-radius:1rem;box-shadow:var(--hp-shadow)}.hospitals-page .hospital-card:hover{transform:none}.hospitals-page .hospital-name{color:var(--hp-text);font-size:1.0625rem}.hospitals-page .hospital-description{color:var(--hp-muted)}.hospitals-page .hospital-location{color:var(--hp-primary)}.hospitals-page .rating-value{color:var(--hp-text)}.hospitals-page .rating-count,.hospitals-page .meta-item{color:var(--hp-muted)}.hospitals-page .hospital-rating{background:var(--patient-surface-hover, #f8fafc);border:1px solid var(--hp-border)}.hospitals-page .specialty-tag{background:var(--patient-surface-hover, #f1f5f9);color:var(--hp-muted);border:1px solid var(--hp-border)}.hospitals-page .specialty-tag.more{background:var(--hp-primary);color:#fff;border-color:transparent}.hospitals-page .hospital-footer{border-top-color:var(--hp-border)}.hospitals-page .view-details{color:var(--hp-primary)}.hospitals-page .empty-state{background:var(--hp-surface);border:1px solid var(--hp-border);border-radius:1rem;padding:2.5rem 1rem;box-shadow:var(--hp-shadow)}.hospitals-page .empty-state h3{color:var(--hp-text);font-size:1.125rem}.hospitals-page .empty-state p{color:var(--hp-muted)}.hospitals-page .advanced-filters{position:fixed;top:auto;bottom:calc(var(--patient-bottom-nav-height, 72px) + .5rem);left:.75rem;right:.75rem;transform:none;width:auto;max-width:none;z-index:150;border:1px solid var(--hp-border);border-radius:1rem;max-height:min(70vh,520px);display:flex;flex-direction:column}.hospitals-page .filters-body{flex:1;overflow-y:auto;max-height:none}.hospitals-page .filters-header{background:var(--brand-gradient)}.hospitals-page .filters-footer{background:var(--hp-surface);border-top:1px solid var(--hp-border)}.hospitals-page .filter-group label,.hospitals-page .checkbox-label{color:var(--hp-text)}.hospitals-page .checkbox-label span{color:var(--hp-muted)}.hospitals-hero--modern .hero-stats--glass{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.hospitals-hero--modern .search-wrapper{flex-direction:column;align-items:stretch;gap:.5rem;border-radius:.875rem;padding:.375rem}.hospitals-hero--modern .search-wrapper input{width:100%;padding:.75rem .875rem;font-size:1rem;border-radius:.625rem;color:var(--hp-text)}.hospitals-hero--modern .filter-toggle{width:100%;justify-content:center;margin:0;border-radius:.625rem;background:var(--hp-primary)}.hospitals-hero--modern .quick-filters{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;justify-content:flex-start;padding-bottom:.25rem;scrollbar-width:none}.hospitals-hero--modern .quick-filters::-webkit-scrollbar{display:none}.hospitals-hero--modern .quick-filter{flex-shrink:0;font-size:.75rem;padding:.45rem .75rem}@media(min-width:640px){.hospitals-hero--modern{padding:1.25rem 1.25rem 1.5rem;border-radius:1.125rem}.hospitals-hero--modern .search-wrapper{flex-direction:row;align-items:center}.hospitals-hero--modern .filter-toggle{width:auto;border-radius:999px}.hospitals-page .hospitals-container.grid,.hospitals-page .loading-container.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hospitals-page .results-header{flex-direction:row;align-items:center;justify-content:space-between}.hospitals-page .advanced-filters{position:absolute;inset:100% auto auto 50%;transform:translate(-50%);width:min(800px,calc(100% - 1.5rem));margin-top:.5rem}.hospitals-page .hospital-card:hover{transform:translateY(-4px)}}@media(min-width:900px){.hospitals-page .hospitals-container.grid,.hospitals-page .loading-container.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.dark-theme .hospitals-page{--hp-surface: var(--surface, #1e293b);--hp-border: var(--border, #334155);--hp-text: var(--text-primary, #f1f5f9);--hp-muted: var(--text-secondary, #94a3b8);--hp-shadow: 0 2px 8px rgba(0, 0, 0, .25);--gray-50: var(--background, #0f172a);--gray-100: var(--surface, #1e293b);--gray-200: var(--border, #334155);--gray-400: var(--text-muted, #64748b);--gray-500: var(--text-secondary, #94a3b8);--gray-600: var(--text-secondary, #94a3b8);--gray-700: var(--text-primary, #f1f5f9);--gray-800: var(--text-primary, #f1f5f9)}.dark-theme .hospitals-page .hospital-card,.dark-theme .hospitals-page .empty-state,.dark-theme .hospitals-page .advanced-filters,.dark-theme .hospitals-page .skeleton-card{background:var(--surface, #1e293b);border-color:var(--border, #334155)}.dark-theme .hospitals-page .sort-select,.dark-theme .hospitals-page .view-toggle{background:var(--background, #0f172a);border-color:var(--border, #334155);color:var(--text-primary, #f1f5f9)}.dark-theme .hospitals-page .view-btn.active{background:var(--surface, #1e293b);color:var(--primary-color, #14b8a6)}.dark-theme .hospitals-page .hospital-rating{background:var(--background, #0f172a)}.dark-theme .hospitals-page .specialty-tag{background:var(--background, #0f172a);color:var(--text-secondary, #94a3b8)}.dark-theme .hospitals-page .filters-footer{background:var(--surface, #1e293b)}@media(max-width:640px){.hospitals-hero--modern .filter-toggle span{display:inline}}.hospital-details-page{--primary: #0D9488;--primary-dark: #0F766E;--primary-light: #14B8A6;--secondary: #2563EB;--secondary-dark: #1D4ED8;--accent: #7C3AED;--success: #10B981;--warning: #F59E0B;--error: #EF4444;--dark: #1F2937;--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;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--transition: all .3s cubic-bezier(.4, 0, .2, 1)}.details-nav{position:sticky;top:0;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;border-bottom:1px solid var(--gray-200);padding:12px 0}.nav-content{display:flex;justify-content:space-between;align-items:center}.back-btn{display:flex;align-items:center;gap:8px;background:none;border:none;color:var(--gray-600);font-weight:500;cursor:pointer;transition:var(--transition);padding:8px 16px;border-radius:8px}.back-btn:hover{background:var(--gray-100);color:var(--primary);transform:translate(-5px)}.nav-actions{display:flex;gap:8px}.nav-action-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--gray-100);border:none;border-radius:8px;color:var(--gray-600);font-weight:500;cursor:pointer;transition:var(--transition)}.nav-action-btn:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}.hospital-hero{position:relative;height:80vh;min-height:600px;overflow:hidden}.hero-slideshow{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;animation:slideShow 20s infinite}.hero-slide:nth-child(1){animation-delay:0s}.hero-slide:nth-child(2){animation-delay:5s}.hero-slide:nth-child(3){animation-delay:10s}.hero-slide:nth-child(4){animation-delay:15s}@keyframes slideShow{0%,20%{opacity:1}25%,95%{opacity:0}to{opacity:1}}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#000c,#0006,#0003);display:flex;align-items:center;padding:60px 0}.hospital-hero .hero-content{color:#fff;max-width:800px}.hospital-hero .hero-breadcrumb{margin-bottom:20px;font-size:.875rem;opacity:.9}.hospital-hero .hero-breadcrumb a{color:#fff;text-decoration:none;transition:var(--transition)}.hospital-hero .hero-breadcrumb a:hover{color:var(--primary-light)}.hospital-hero .hero-title{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;line-height:1.1;margin-bottom:20px;text-shadow:0 4px 20px rgba(0,0,0,.3)}.hospital-hero .hero-meta{display:flex;gap:30px;margin-bottom:30px;flex-wrap:wrap}.hero-rating{display:flex;align-items:center;gap:10px}.hero-rating .stars{display:flex;gap:2px}.rating-value{font-weight:700;font-size:1.125rem}.review-count{opacity:.8;font-size:.875rem}.hero-location{display:flex;align-items:center;gap:6px;opacity:.9}.hero-stats{display:flex;gap:30px;margin-bottom:40px;flex-wrap:wrap}.stat-card{display:flex;align-items:center;gap:12px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 20px;border-radius:12px;border:1px solid rgba(255,255,255,.2)}.stat-card svg{width:24px;height:24px;opacity:.9}.stat-card div{display:flex;flex-direction:column}.stat-value{font-size:1.25rem;font-weight:700}.stat-label{font-size:.75rem;opacity:.8}.hero-actions{display:flex;gap:16px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:8px;font-weight:600;font-size:1rem;transition:var(--transition);cursor:pointer;text-decoration:none;border:2px solid transparent}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 10px 25px #0d948866}.btn-outline{background:transparent;border-color:#fff;color:#fff}.btn-outline:hover{background:#fff;color:var(--primary);transform:translateY(-2px)}.btn-secondary{background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff}.btn-secondary:hover{background:#ffffff4d;transform:translateY(-2px)}.btn-large{padding:16px 32px;font-size:1.125rem}.btn-small{padding:8px 16px;font-size:.875rem}.quick-info-bar{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:16px;padding:20px 30px;margin-top:-50px;margin-bottom:40px;box-shadow:var(--shadow-xl);position:relative;z-index:10;flex-wrap:wrap;gap:20px}.quick-info-item{display:flex;align-items:center;gap:12px}.quick-info-item svg{color:var(--primary);width:24px;height:24px}.quick-info-item .label{display:block;font-size:.75rem;color:var(--gray-500);margin-bottom:2px}.quick-info-item .value{font-weight:600;color:var(--gray-800)}.details-tabs{display:flex;gap:8px;margin-bottom:40px;border-bottom:2px solid var(--gray-200);padding-bottom:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.details-tabs::-webkit-scrollbar{display:none}.tab-btn{padding:12px 24px;background:none;border:none;font-weight:600;color:var(--gray-600);cursor:pointer;transition:var(--transition);position:relative;white-space:nowrap}.tab-btn:hover,.tab-btn.active{color:var(--primary)}.tab-btn.active:after{content:"";position:absolute;bottom:-10px;left:0;right:0;height:3px;background:var(--primary);border-radius:3px 3px 0 0}.tab-content{margin-bottom:60px}.about-section{margin-bottom:40px}.about-section h2{font-size:2rem;color:var(--gray-800);margin-bottom:16px}.about-description{font-size:1.125rem;line-height:1.8;color:var(--gray-600);margin-bottom:30px}.achievements{margin-top:30px}.achievements h3{font-size:1.25rem;color:var(--gray-700);margin-bottom:16px}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.achievement-card{display:flex;align-items:center;gap:12px;padding:16px;background:linear-gradient(135deg,var(--gray-50),white);border-radius:12px;border:1px solid var(--gray-200)}.achievement-card svg{color:var(--primary);width:24px;height:24px}.achievement-card span{font-weight:500;color:var(--gray-700)}.opening-hours-section{margin-bottom:40px}.opening-hours-section h3{font-size:1.25rem;color:var(--gray-700);margin-bottom:16px}.hours-grid{background:var(--gray-50);border-radius:12px;overflow:hidden}.hours-row{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--gray-200)}.hours-row:last-child{border-bottom:none}.hours-row .day{font-weight:600;color:var(--gray-700)}.hours-row .hours{color:var(--gray-600)}.quick-specialties h3{font-size:1.25rem;color:var(--gray-700);margin-bottom:16px}.specialties-grid{display:flex;flex-wrap:wrap;gap:12px}.specialty-chip{padding:8px 20px;background:var(--gray-100);border-radius:40px;color:var(--gray-700);text-decoration:none;font-weight:500;transition:var(--transition)}.specialty-chip:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}.departments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}.department-card{background:#fff;border-radius:20px;padding:24px;box-shadow:var(--shadow);transition:var(--transition);border:1px solid var(--gray-200)}.department-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl);border-color:var(--primary-light)}.department-icon{font-size:2.5rem;margin-bottom:16px}.department-card h4{font-size:1.125rem;color:var(--gray-800);margin-bottom:8px}.department-card p{color:var(--gray-600);margin-bottom:16px}.department-footer{display:flex;justify-content:space-between;align-items:center}.department-link{display:flex;align-items:center;gap:4px;color:var(--primary);text-decoration:none;font-weight:500;transition:var(--transition)}.department-link:hover{gap:8px}.doctors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.doctor-card{display:flex;gap:16px;background:#fff;border-radius:16px;padding:20px;box-shadow:var(--shadow);transition:var(--transition);border:1px solid var(--gray-200)}.doctor-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.doctor-image{width:80px;height:80px;border-radius:50%;overflow:hidden;flex-shrink:0}.doctor-image img{width:100%;height:100%;object-fit:cover}.doctor-info{flex:1}.doctor-info h4{font-size:1.125rem;color:var(--gray-800);margin-bottom:4px}.doctor-specialty{color:var(--primary);font-weight:500;margin-bottom:8px}.doctor-rating{display:flex;align-items:center;gap:4px;margin-bottom:12px;color:var(--gray-600);font-size:.875rem}.doctor-rating svg{width:16px;height:16px}.facilities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.facility-card{display:flex;align-items:center;gap:16px;padding:20px;background:#fff;border-radius:16px;box-shadow:var(--shadow);transition:var(--transition);border:1px solid var(--gray-200)}.facility-card:hover{transform:translate(8px);border-color:var(--primary)}.facility-icon{font-size:2rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--gray-100);border-radius:12px}.facility-info h4{font-size:1rem;color:var(--gray-800);margin-bottom:4px}.facility-info p{font-size:.875rem;color:var(--gray-600)}.reviews-summary{display:flex;justify-content:space-between;align-items:center;background:var(--gray-50);padding:24px;border-radius:16px;margin-bottom:30px;flex-wrap:wrap;gap:20px}.summary-rating{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.large-rating{font-size:3rem;font-weight:800;color:var(--gray-800);line-height:1}.summary-rating .stars{display:flex;gap:4px}.summary-rating span:last-child{color:var(--gray-600)}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px}.review-card{background:#fff;border-radius:16px;padding:20px;box-shadow:var(--shadow);border:1px solid var(--gray-200);transition:var(--transition)}.review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.review-header{display:flex;gap:12px;margin-bottom:16px;position:relative}.reviewer-image{width:48px;height:48px;border-radius:50%;overflow:hidden;flex-shrink:0}.reviewer-image img{width:100%;height:100%;object-fit:cover}.reviewer-info h5{font-size:1rem;color:var(--gray-800);margin-bottom:4px}.review-rating{display:flex;gap:2px}.review-date{position:absolute;top:0;right:0;font-size:.75rem;color:var(--gray-500)}.review-content{color:var(--gray-600);line-height:1.6;margin-bottom:16px}.review-footer{display:flex;justify-content:flex-end}.review-helpful{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--gray-100);border:none;border-radius:20px;color:var(--gray-600);font-size:.75rem;cursor:pointer;transition:var(--transition)}.review-helpful:hover{background:var(--primary);color:#fff}.contact-section{background:linear-gradient(135deg,var(--gray-900),var(--gray-800));border-radius:24px;padding:60px;margin:60px 0;color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-info h3{font-size:1.5rem;margin-bottom:30px}.contact-item{display:flex;gap:16px;margin-bottom:20px;padding:16px;background:#ffffff1a;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:var(--transition)}.contact-item:hover{transform:translate(8px);background:#ffffff26}.contact-item svg{width:24px;height:24px;color:var(--primary-light);flex-shrink:0}.contact-item div{display:flex;flex-direction:column;gap:4px}.contact-label{font-size:.75rem;opacity:.8}.contact-value{font-weight:600;font-size:1rem}.contact-value.emergency{color:var(--error);font-weight:700}.emergency-cta{text-align:center;padding:40px;background:#ffffff1a;border-radius:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:center}.emergency-cta h3{font-size:2rem;margin-bottom:16px}.emergency-cta p{opacity:.9;margin-bottom:30px}.emergency-note{font-size:.875rem;opacity:.7;margin-top:20px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .8s ease-out}.fade-in-up{opacity:0;animation:fadeIn .6s ease-out forwards}.slide-down{animation:slideDown .5s ease-out}.pulse{animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media(max-width:1024px){.hero-stats{gap:20px}.stat-card{padding:10px 16px}.contact-grid{gap:40px}}@media(max-width:768px){.hospital-hero{height:auto;min-height:500px}.hero-overlay{padding:100px 0 60px}.hero-stats{flex-direction:column;gap:12px}.stat-card{width:100%}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.quick-info-bar{flex-direction:column;align-items:flex-start;margin-top:0;padding:16px}.quick-info-item{width:100%}.details-tabs{margin-top:20px}.tab-btn{padding:8px 16px;font-size:.875rem}.departments-grid,.doctors-grid,.facilities-grid,.reviews-grid,.contact-grid{grid-template-columns:1fr}.reviews-summary{flex-direction:column;align-items:flex-start}.summary-rating{width:100%;justify-content:center}.doctor-card{flex-direction:column;align-items:center;text-align:center}.doctor-rating{justify-content:center}.review-header{flex-wrap:wrap}.review-date{position:static;width:100%;margin-top:8px}}@media(max-width:480px){.nav-content{flex-direction:column;gap:12px}.hero-title{font-size:2rem}.hero-meta{flex-direction:column;gap:12px}.contact-section{padding:30px 20px}.emergency-cta{padding:20px}.achievements-grid{grid-template-columns:1fr}.facility-card{flex-direction:column;text-align:center}.facility-icon{width:100%}}@media print{.details-nav,.hero-actions,.quick-info-bar,.details-tabs,.review-footer,.contact-section .btn{display:none}.hospital-hero{height:auto;min-height:auto}.hero-overlay{position:static;background:#fff;color:#000;padding:40px 0}.hero-title,.hero-meta,.hero-stats,.hero-breadcrumb a{color:#000}.stat-card{background:var(--gray-100);color:#000}}.hospital-details-page{padding-bottom:5rem;background:linear-gradient(180deg,#f8fafc,#fff 120px)}.details-nav--modern{top:0;padding:.5rem .75rem;background:#ffffffeb;border-bottom:1px solid var(--gray-200)}.details-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;max-width:1200px;margin:0 auto}.nav-action-btn--primary{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff}.nav-action-btn--primary:hover{filter:brightness(1.05)}.hospital-hero--modern{position:relative;min-height:320px;margin:0 .5rem 1rem;border-radius:1.25rem;overflow:hidden;isolation:isolate}.hospital-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.04);transition:transform 8s ease}.hospital-hero--modern:hover .hospital-hero-bg{transform:scale(1.08)}.hospital-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0f172a59,#0f172abf 55%,#0f172aeb)}.hospital-hero-panel{position:relative;z-index:2;padding:1.25rem 1.25rem 1.5rem;color:#fff;display:flex;flex-direction:column;gap:1rem}.hospital-hero-panel .hero-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.75rem;color:#ffffffbf}.hospital-hero-panel .hero-breadcrumb a{color:#ffffffe6;text-decoration:none}.hospital-hero-panel .hero-breadcrumb a:hover{text-decoration:underline}.hero-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.hospital-hero-panel .hero-title{font-size:clamp(1.5rem,4vw,2.25rem);font-weight:800;line-height:1.15;margin:0 0 .5rem}.hero-slide-dots{display:flex;gap:.35rem;padding-top:.35rem}.hero-slide-dot{width:8px;height:8px;border-radius:50%;border:none;background:#ffffff59;cursor:pointer;padding:0}.hero-slide-dot.active{background:#fff;width:22px;border-radius:999px}.hero-stats--compact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.hero-stats--compact .stat-card{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.75rem;padding:.65rem .75rem;color:#fff}.hospital-details-body{max-width:1200px;margin:0 auto;padding:0 .75rem}.hospital-details-body .quick-info-bar{margin-bottom:1rem;border-radius:1rem;box-shadow:var(--shadow-md)}.hospital-details-body .details-tabs{position:sticky;top:52px;z-index:20;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.875rem;padding:.35rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm);overflow-x:auto}.hospital-details-body .tab-btn{white-space:nowrap}@media(max-width:768px){.hospital-hero--modern{min-height:280px}.hero-stats--compact{grid-template-columns:repeat(2,1fr)}.hospital-hero-panel .hero-actions{flex-direction:column}.hospital-hero-panel .hero-actions .btn{width:100%;justify-content:center}}.profile-avatar-upload{display:flex;flex-direction:column;align-items:center;gap:.75rem}.profile-avatar-upload__ring{position:relative;border-radius:50%;padding:4px;background:linear-gradient(135deg,var(--primary-color, #0d9488),var(--info, #3b82f6));box-shadow:0 8px 24px #0d948840}.profile-avatar-upload--large .profile-avatar-upload__ring{width:120px;height:120px}.profile-avatar-upload--xlarge .profile-avatar-upload__ring{width:140px;height:140px}.profile-avatar-upload__ring img,.profile-avatar-upload__initials{width:100%;height:100%;border-radius:50%;object-fit:cover;display:flex;align-items:center;justify-content:center;background:var(--surface, #fff);color:var(--primary-color, #0d9488);font-weight:700;font-size:2rem}.profile-avatar-upload--xlarge .profile-avatar-upload__initials{font-size:2.25rem}.profile-avatar-upload__camera{position:absolute;right:0;bottom:0;width:36px;height:36px;border-radius:50%;border:2px solid var(--surface, #fff);background:var(--primary-color, #0d9488);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s,background .2s}.profile-avatar-upload__camera svg{width:18px;height:18px}.profile-avatar-upload__camera:hover:not(:disabled){transform:scale(1.05);background:var(--primary-dark, #0f766e)}.profile-avatar-upload__camera:disabled{opacity:.6;cursor:not-allowed}.profile-avatar-upload__btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--border, #e2e8f0);background:var(--surface, #fff);color:var(--text-secondary, #64748b);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.profile-avatar-upload__btn:hover:not(:disabled){border-color:var(--primary-color, #0d9488);color:var(--primary-color, #0d9488);background:var(--primary-bg, #f0fdfa)}.profile-avatar-upload__btn:disabled{opacity:.6;cursor:not-allowed}.profile-avatar-upload__hint{font-size:.75rem;color:var(--text-muted, #94a3b8);text-align:center}.settings-modern{--bg-primary: var(--background, #f8fafc);--bg-secondary: var(--surface, #ffffff);--bg-hover: var(--border-light, #f1f5f9);--border-color: var(--border, #e2e8f0);--primary-rgb: 13, 148, 136;min-height:100vh;padding:1.5rem 1.5rem 5rem;background:var(--bg-primary);color:var(--text-primary, #1e293b);transition:background .3s ease,color .3s ease}.doctor-main .settings-modern--doctor{min-height:auto;padding:0;padding-bottom:1.5rem;background:transparent}.settings-modern--doctor .settings-container{gap:1.25rem}.settings-modern--doctor .settings-content{padding:1.25rem}@media(max-width:768px){.doctor-main .settings-modern--doctor{padding-bottom:1rem}}.dark-theme .settings-modern{--bg-primary: var(--background, #0f172a);--bg-secondary: var(--surface, #1e293b);--bg-hover: var(--border, #334155);--border-color: var(--border, #334155)}.profile-hero-card{display:flex;flex-wrap:wrap;align-items:center;gap:2rem;padding:2rem;margin-bottom:2rem;border-radius:1.25rem;background:linear-gradient(135deg,#0d94881f,#3b82f614);border:1px solid rgba(13,148,136,.2)}.dark-theme .profile-hero-card{background:linear-gradient(135deg,#0d948833,#1e293bcc);border-color:#334155cc}.profile-hero-info h3{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin-bottom:.25rem}.profile-hero-info p{color:var(--text-secondary);font-size:.9rem;margin-bottom:.75rem}.profile-role-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:700;text-transform:capitalize;background:var(--primary-bg, #f0fdfa);color:var(--primary-color, #0d9488)}.doctor-settings-cta p{color:var(--text-secondary, #64748b);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.doctor-settings-link-btn{display:inline-flex;align-items:center;padding:.625rem 1rem;border-radius:.625rem;border:1px solid var(--primary-color, #0d9488);background:transparent;color:var(--primary-color, #0d9488);font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s}.doctor-settings-link-btn:hover{background:var(--primary-color, #0d9488);color:#fff}.settings-empty-state{color:var(--text-secondary, #64748b);font-size:.875rem;padding:1rem 0;text-align:center}.settings-modern .w-4{width:1rem;height:1rem}.settings-modern .w-5{width:1.25rem;height:1.25rem}.settings-modern .w-6{width:1.5rem;height:1.5rem}.settings-modern svg{flex-shrink:0}.profile-section-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:1rem;padding:1.5rem;margin-bottom:1.5rem}.profile-section-card h3{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.form-grid-modern{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.form-grid-modern .form-group.full-width{grid-column:span 2}@media(max-width:768px){.form-grid-modern{grid-template-columns:1fr}.form-grid-modern .form-group.full-width{grid-column:span 1}.profile-hero-card{flex-direction:column;text-align:center}}.settings-header{margin-bottom:2rem}.settings-header h1{font-size:2rem;font-weight:800;background:linear-gradient(135deg,var(--text-primary),var(--text-secondary));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:.5rem}.settings-header p{color:var(--text-muted)}.settings-container{display:grid;grid-template-columns:280px 1fr;gap:2rem}.settings-sidebar{background:var(--bg-secondary);border-radius:1rem;padding:1rem;border:1px solid var(--border-color)}.sidebar-tab{display:flex;align-items:center;gap:1rem;width:100%;padding:.875rem 1rem;background:transparent;border:none;border-radius:.75rem;cursor:pointer;transition:all .2s;color:var(--text-secondary);font-size:.875rem;font-weight:500}.sidebar-tab .tab-icon{width:20px;height:20px}.sidebar-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-tab.active{background:var(--primary-color);color:#fff}.settings-content{background:var(--bg-secondary);border-radius:1rem;padding:2rem;border:1px solid var(--border-color)}.settings-section{animation:fadeIn .3s ease}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.section-header h2{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.save-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--primary-color);color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.save-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--primary-rgb),.3)}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem}.avatar-large{width:120px;height:120px;border-radius:50%;overflow:hidden;background:var(--bg-hover);margin-bottom:1rem}.avatar-large img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.change-photo-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;border:1px solid var(--border-color);border-radius:.5rem;cursor:pointer;color:var(--text-secondary);font-size:.875rem}.change-photo-btn:hover{background:var(--bg-hover)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group.full-width{grid-column:span 2}.form-group label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.form-group input,.form-group select,.form-group textarea{padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:.5rem;color:var(--text-primary);font-size:.875rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.form-group input:disabled{opacity:.6;cursor:not-allowed}.input-with-edit{display:flex;gap:.5rem;align-items:center}.input-with-edit input{flex:1}.input-with-edit button{padding:.5rem;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:.5rem;cursor:pointer;color:var(--text-secondary);transition:all .2s}.input-with-edit button:hover{background:var(--primary-color);color:#fff}.preferences-group{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.preferences-group h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.theme-options,.language-options,.font-options{display:flex;gap:1rem}.theme-option,.language-option,.font-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:.75rem;cursor:pointer;transition:all .2s;color:var(--text-secondary)}.theme-option.active,.language-option.active,.font-option.active{border-color:var(--primary-color);background:var(--primary-light);color:var(--primary-color)}.theme-option:hover,.language-option:hover,.font-option:hover{transform:translateY(-2px);border-color:var(--primary-color)}.font-option .small{font-size:.75rem}.font-option .medium{font-size:1rem}.font-option .large{font-size:1.25rem}.toggle-option{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-primary);border-radius:.75rem;margin-bottom:1rem}.toggle-info h4{font-size:.875rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.toggle-info p{font-size:.75rem;color:var(--text-muted)}.toggle-switch{width:48px;height:24px;background:var(--bg-hover);border-radius:2rem;border:none;cursor:pointer;position:relative;transition:all .2s}.toggle-switch.active{background:var(--primary-color)}.toggle-slider{position:absolute;width:20px;height:20px;background:#fff;border-radius:50%;top:2px;left:2px;transition:transform .2s}.toggle-switch.active .toggle-slider{transform:translate(24px)}.security-option{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:var(--bg-primary);border-radius:.75rem;margin-bottom:1rem}.security-option.danger{border-left:3px solid #ef4444}.option-info{display:flex;gap:1rem;align-items:flex-start}.option-info svg{color:var(--text-muted)}.option-info h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.option-info p{font-size:.75rem;color:var(--text-muted)}.btn-secondary,.btn-primary,.btn-danger,.btn-small-danger{padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-secondary{background:var(--bg-hover);color:var(--text-secondary)}.btn-secondary:hover{background:var(--border-color)}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--primary-rgb),.3)}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn-small-danger{background:#ef44441a;color:#ef4444;font-size:.75rem;padding:.25rem .75rem}.btn-small-danger:hover{background:#ef4444;color:#fff}.sessions-list{display:flex;flex-direction:column;gap:1rem}.session-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-primary);border-radius:.75rem}.session-info{display:flex;gap:1rem;align-items:flex-start}.session-info svg{color:var(--text-muted)}.session-info strong{display:block;font-size:.875rem;color:var(--text-primary);margin-bottom:.25rem}.session-info p{font-size:.75rem;color:var(--text-secondary);margin-bottom:.25rem}.session-info small{font-size:.7rem;color:var(--text-muted);display:inline-block;margin-right:1rem}.audit-table-container{overflow-x:auto}.audit-table{width:100%;border-collapse:collapse}.audit-table th{text-align:left;padding:.75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-color)}.audit-table td{padding:.75rem;font-size:.8rem;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.action-badge{display:inline-block;padding:.25rem .5rem;background:var(--bg-hover);border-radius:.25rem;font-size:.7rem;font-weight:600;text-transform:uppercase}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--bg-secondary);border-radius:1rem;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-content.danger{border-top:4px solid #ef4444}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h3{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.modal-header button{background:transparent;border:none;cursor:pointer;color:var(--text-muted)}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1rem 1.5rem;border-top:1px solid var(--border-color)}.toast{position:fixed;bottom:2rem;right:2rem;display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-radius:.5rem;font-size:.875rem;font-weight:500;z-index:1100;animation:slideIn .3s ease}.toast.success{background:#10b981;color:#fff}.toast.error{background:#ef4444;color:#fff}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:768px){.settings-modern{padding:1rem}.settings-container{grid-template-columns:1fr}.settings-sidebar{display:flex;overflow-x:auto;padding:.5rem}.sidebar-tab{white-space:nowrap}.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}.theme-options,.language-options,.font-options{flex-direction:column}.security-option{flex-direction:column;gap:1rem}}.departments-page{padding:2rem 0}.departments-hero{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:#fff;padding:4rem 0;text-align:center;margin-bottom:3rem;border-radius:0 0 var(--radius-xl) var(--radius-xl);position:relative;z-index:10}.departments-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(255,255,255,.1) 0%,transparent 50%);pointer-events:none}.departments-hero h1{font-size:clamp(2rem,5vw,2.5rem);font-weight:700;margin-bottom:var(--space-3);text-shadow:0 2px 4px rgba(0,0,0,.1)}.departments-hero p{font-size:1.125rem;max-width:600px;margin:0 auto var(--space-6);opacity:.95}.search-bar{display:flex;max-width:500px;margin:0 auto;background:#fffffff2;border-radius:50px;padding:.5rem 1rem;box-shadow:0 10px 30px #0003}.search-bar svg{width:20px;height:20px;color:#666;margin-right:1rem;margin-top:.25rem}.search-bar input{flex:1;border:none;outline:none;font-size:1rem;background:transparent;padding:.75rem 0}.departments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;margin-top:3rem}.dept-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #0000001a;transition:all .3s ease;height:300px;display:flex;flex-direction:column}.dept-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px #00000026}.dept-image{height:180px;background-size:cover;background-position:center;position:relative}.dept-image:after{content:"";position:absolute;inset:0;background:linear-gradient(45deg,#4facfecc,#00f2fe99)}.dept-content{padding:1.5rem;flex:1;display:flex;flex-direction:column;position:relative;z-index:2}.dept-content h3{margin:0 0 1rem;font-size:1.4rem;color:#1f2937}.dept-rating{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;color:#f59e0b;font-weight:600}.dept-rating svg{width:16px;height:16px}.dept-actions{margin-top:auto;display:flex;gap:1rem}.btn{padding:.75rem 1.5rem;border-radius:8px;font-weight:500;text-decoration:none;font-size:.9rem;transition:all .2s}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.btn-outline{border:2px solid #3b82f6;color:#3b82f6;background:transparent}.btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #3b82f666}.hospital-context{background:#f0f9ff;padding:1.5rem;border-radius:12px;margin-bottom:2rem;text-align:center;border-left:4px solid #3b82f6}@media(max-width:768px){.departments-grid{grid-template-columns:1fr}.dept-actions{flex-direction:column}}.schedules-page{padding:2rem 0}.schedules-page .hero-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4rem 0;text-align:center;margin-bottom:3rem}.schedules-page .hero-section h1{font-size:2.5rem;margin-bottom:1rem}.schedules-page .hero-section p{font-size:1.2rem;max-width:600px;margin:0 auto 2rem}.filter-select{padding:.75rem 1rem;border:none;border-radius:8px;background:#ffffffe6;font-size:1rem;min-width:200px}.schedules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;margin-top:2rem}.schedule-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;overflow:hidden;transition:transform .2s,box-shadow .2s}.schedule-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0000001a}.schedule-header{padding:1.5rem;background:linear-gradient(135deg,var(--primary-gradient));color:#fff}.schedule-header h3{margin:0 0 .5rem;font-size:1.3rem}.doctor-info{display:flex;align-items:center;gap:.5rem;opacity:.9;font-size:.95rem}.schedule-table{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.table-row{display:grid;grid-template-columns:repeat(5,1fr);gap:.25rem;text-align:center;font-size:.85rem}.table-row.header{font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.table-row span{padding:.5rem .25rem;background:#f8f9fa;border-radius:4px}.table-row span:contains("OFF"),.table-row span:contains("24/7"){background:#fee;font-weight:500}.schedule-actions{padding:1.5rem;display:flex;justify-content:space-between;align-items:center;background:#f8f9fa;border-top:1px solid #e9ecef}.slots{font-size:.9rem;color:#666}.btn{padding:.75rem 1.5rem;border-radius:8px;font-weight:500;text-decoration:none;transition:all .2s}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}@media(max-width:768px){.schedules-grid{grid-template-columns:1fr}.schedule-actions{flex-direction:column;gap:1rem}}.patient-appointments{--pa-teal: var(--primary-color, #0d9488);--pa-surface: var(--surface, #ffffff);--pa-border: var(--border, #e2e8f0);--pa-muted: var(--text-secondary, #64748b);--pa-text: var(--text-primary, #0f172a);--pa-radius: 14px;--pa-shadow: 0 1px 3px rgba(15, 23, 42, .06), 0 4px 14px rgba(15, 23, 42, .04);width:100%;max-width:920px;margin:0 auto;display:flex;flex-direction:column;gap:.875rem}.dark-theme .patient-appointments{--pa-surface: var(--surface, #1e293b);--pa-border: var(--border, #334155);--pa-shadow: 0 2px 8px rgba(0, 0, 0, .25)}.pa-hero{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.625rem;padding:1rem 1.125rem;border-radius:var(--pa-radius);background:var(--brand-gradient);color:#fff;box-shadow:var(--brand-gradient-shadow)}.pa-hero__content{min-width:0}.pa-hero__eyebrow{display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;opacity:.85;margin-bottom:.15rem}.pa-hero__title{margin:0;font-size:clamp(1.125rem,4.5vw,1.375rem);font-weight:800;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pa-hero__subtitle{margin:.25rem 0 0;font-size:.75rem;opacity:.9}.pa-hero__cta{grid-column:2;grid-row:1 / span 2;align-self:center;display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .75rem;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#ffffff2e;color:#fff;font-size:.75rem;font-weight:700;text-decoration:none;white-space:nowrap;flex-shrink:0}.pa-hero__cta:active{transform:scale(.97)}.pa-hero__cta-label{display:none}@media(min-width:400px){.pa-hero__cta-label{display:inline}}.pa-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.pa-summary__card{background:var(--pa-surface);border:1px solid var(--pa-border);border-radius:.875rem;padding:.75rem;box-shadow:var(--pa-shadow)}.pa-summary__value{display:block;font-size:1.25rem;font-weight:800;color:var(--pa-text);line-height:1.1}.pa-summary__label{display:block;margin-top:.15rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--pa-muted)}.pa-list{display:flex;flex-direction:column;gap:.625rem}.pa-card{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:.5rem .75rem;align-items:center;padding:.875rem;background:var(--pa-surface);border:1px solid var(--pa-border);border-radius:var(--pa-radius);box-shadow:var(--pa-shadow)}.pa-card__avatar{grid-row:1 / span 2;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;color:#fff;background:linear-gradient(135deg,var(--pa-teal),#2563eb);flex-shrink:0}.pa-card__main{min-width:0;grid-column:2}.pa-card__title{margin:0;font-size:.9375rem;font-weight:700;color:var(--pa-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pa-card__meta{margin:.2rem 0 0;font-size:.75rem;color:var(--pa-muted);display:flex;flex-wrap:wrap;gap:.35rem .75rem}.pa-card__meta svg{width:.875rem;height:.875rem;flex-shrink:0}.pa-hero__cta svg{width:1rem;height:1rem}.pa-empty__btn svg{width:1rem;height:1rem}.pa-card__badges{grid-column:3;grid-row:1;display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;flex-shrink:0}.pa-badge{display:inline-block;padding:.2rem .5rem;border-radius:999px;font-size:.625rem;font-weight:700;text-transform:capitalize;letter-spacing:.02em}.pa-badge--pending{background:#fef3c7;color:#b45309}.pa-badge--confirmed,.pa-badge--approved{background:#d1fae5;color:#047857}.pa-badge--completed{background:#e0e7ff;color:#4338ca}.pa-badge--cancelled,.pa-badge--rejected{background:#fee2e2;color:#b91c1c}.pa-badge--live{background:#fce7f3;color:#be185d;animation:pa-pulse 1.5s ease-in-out infinite}@keyframes pa-pulse{0%,to{opacity:1}50%{opacity:.7}}.pa-card__action{grid-column:2 / span 2;display:flex;justify-content:flex-end}.pa-card__btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .875rem;border-radius:999px;font-size:.75rem;font-weight:700;text-decoration:none;border:1px solid var(--pa-border);background:var(--pa-surface);color:var(--pa-teal)}.pa-card__btn--primary{background:var(--pa-teal);border-color:var(--pa-teal);color:#fff}.pa-card__btn:active{transform:scale(.98)}.pa-empty{text-align:center;padding:2.5rem 1.25rem;background:var(--pa-surface);border:1px dashed var(--pa-border);border-radius:var(--pa-radius)}.pa-empty__icon{font-size:2.5rem;margin-bottom:.75rem}.pa-empty__title{margin:0 0 .35rem;font-size:1rem;font-weight:700;color:var(--pa-text)}.pa-empty__text{margin:0 0 1rem;font-size:.8125rem;color:var(--pa-muted)}.pa-empty__btn{display:inline-flex;align-items:center;gap:.35rem;padding:.625rem 1.125rem;border-radius:999px;background:var(--pa-teal);color:#fff;font-size:.8125rem;font-weight:700;text-decoration:none}@media(min-width:640px){.pa-card{grid-template-columns:auto 1fr auto auto;grid-template-rows:auto}.pa-card__badges{grid-column:3;grid-row:1;flex-direction:row}.pa-card__action{grid-column:4;grid-row:1}}.book-appointment-page{width:100%;max-width:920px;margin:0 auto;min-height:280px}.book-appointment-page .container{background:var(--patient-surface, #ffffff);border:1px solid var(--patient-border, #e2e8f0);border-radius:1rem;padding:1rem;box-shadow:0 1px 3px #0f172a0f,0 4px 14px #0f172a0a}.book-appointment-page .back-link{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.875rem;color:var(--patient-primary, #0d9488);text-decoration:none;font-weight:600;font-size:.875rem}.book-appointment-page .back-link:hover{color:#0f766e}.book-appointment-page h1{margin:0 0 1rem;color:var(--patient-text, #0f172a);font-size:clamp(1.25rem,5vw,1.75rem);line-height:1.25}.preselected-doctor-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;background:#dbeafe;border:1px solid #93c5fd;border-radius:.75rem;padding:.75rem .875rem;margin-bottom:1rem;color:#1e40af;font-size:.875rem;line-height:1.4}.preselected-doctor-banner.independent{background:#ecfdf5;border-color:#6ee7b7;color:#047857}.preselected-doctor-banner strong{color:inherit;font-weight:700}.doctor-type-badge{display:inline-flex;align-items:center;padding:.2rem .5rem;border-radius:999px;background:#ffffffa6;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.preselected-doctor-banner.independent .doctor-type-badge{background:#d1fae5;color:#065f46}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:.75rem;padding:.75rem .875rem;margin-bottom:1rem;color:#b91c1c;font-size:.875rem;line-height:1.45}.success-message{text-align:center;padding:2rem 1rem}.success-message h2{color:#059669;margin-bottom:.75rem;font-size:1.25rem}.success-message p{color:#047857;margin-bottom:0;font-size:.9375rem}.book-page-loading{margin:2rem 0;text-align:center;color:var(--patient-text-muted, #64748b)}.appointment-form{margin-bottom:1rem}.form-grid{display:grid;grid-template-columns:1fr;gap:.875rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;min-width:0}.form-group.full{grid-column:1 / -1}.form-group label{font-weight:600;margin-bottom:.375rem;color:var(--patient-text, #334155);font-size:.8125rem;line-height:1.35}.form-group label .preselected-badge{color:#059669;font-weight:700;margin-left:.25rem;font-size:.6875rem;text-transform:uppercase}.form-group input,.form-group select,.form-group textarea{width:100%;box-sizing:border-box;padding:.6875rem .75rem;min-height:2.75rem;border:1px solid var(--patient-border, #cbd5e1);border-radius:.625rem;font-size:1rem;color:var(--patient-text, #0f172a);background:var(--patient-surface, #fff);transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--patient-primary, #0d9488);box-shadow:0 0 0 3px #0d948826}.form-group input:disabled,.form-group select:disabled{background:#f1f5f9;cursor:not-allowed;opacity:.85}.form-group textarea{min-height:5.5rem;resize:vertical;line-height:1.45}.preselected-doctor-display{padding:.6875rem .875rem;min-height:2.75rem;display:flex;align-items:center;background:#ecfdf5;border:1px solid #6ee7b7;border-radius:.625rem;color:#047857;font-weight:600;font-size:.9375rem;word-break:break-word}.book-appointment-page .btn.btn-primary.btn-large{width:100%;min-height:3rem;padding:.875rem 1rem;font-size:1rem;font-weight:700;border-radius:.75rem;border:none;background:var(--patient-primary, #0d9488);color:#fff;cursor:pointer}.book-appointment-page .btn.btn-primary.btn-large:disabled{opacity:.65;cursor:not-allowed}@media(max-width:639px){.book-appointment-page .appointment-form .btn.btn-primary.btn-large{position:sticky;bottom:calc(var(--patient-bottom-nav-height, 72px) + .5rem);z-index:20;box-shadow:0 -4px 16px #0f172a1f}}.booking-info{background:#f8fafc;border:1px solid var(--patient-border, #e2e8f0);border-radius:.875rem;padding:1rem;margin-top:.5rem}.booking-info h3{margin:0 0 .625rem;color:var(--patient-text, #374151);font-size:.9375rem}.booking-info ul{list-style:none;padding:0;margin:0}.booking-info li{padding:.375rem 0;color:var(--patient-text-muted, #64748b);font-size:.8125rem;line-height:1.45}@media(min-width:640px){.book-appointment-page .container{padding:1.25rem 1.5rem;border-radius:1.125rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.booking-info{padding:1.25rem}}@media(min-width:768px){.book-appointment-page .container{padding:1.5rem}.form-grid{gap:1.25rem;margin-bottom:1.25rem}}.dark-theme .book-appointment-page .container{background:var(--surface, #1e293b);border-color:var(--border, #334155)}.dark-theme .book-appointment-page h1,.dark-theme .form-group label{color:var(--text-primary, #f1f5f9)}.dark-theme .form-group input,.dark-theme .form-group select,.dark-theme .form-group textarea{background:#0f172a;border-color:#334155;color:#e2e8f0}.dark-theme .form-group input:disabled,.dark-theme .form-group select:disabled{background:#1e293b}.dark-theme .booking-info{background:#0f172a;border-color:#334155}.dark-theme .booking-info h3{color:#e2e8f0}.dark-theme .booking-info li{color:#94a3b8}.book-doctor-page{width:100%;max-width:920px;margin:0 auto;min-height:280px}.book-doctor-container{background:var(--patient-surface, #ffffff);border:1px solid var(--patient-border, #e2e8f0);border-radius:1rem;padding:1rem;box-shadow:0 1px 3px #0f172a0f,0 4px 14px #0f172a0a}.back-link{display:inline-flex;align-items:center;gap:.375rem;color:var(--patient-primary, #0d9488);text-decoration:none;font-weight:600;font-size:.875rem;margin-bottom:.875rem}.back-link:hover{color:#0f766e}.book-doctor-hero{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"avatar info" "fee fee";gap:.75rem .875rem;align-items:start;padding:1rem;border:1px solid var(--patient-border, #e2e8f0);border-radius:.875rem;background:linear-gradient(135deg,#f0fdfa,#ecfeff);margin-bottom:.75rem}.doctor-hero-avatar{grid-area:avatar;width:3.5rem;height:3.5rem;border-radius:50%;overflow:hidden;background:#ccfbf1;color:#0d9488;display:grid;place-items:center;flex-shrink:0}.doctor-hero-avatar img{width:100%;height:100%;object-fit:cover}.doctor-hero-info{grid-area:info;min-width:0}.booking-type-badge{display:inline-block;background:#0d9488;color:#fff;font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.25rem .5rem;border-radius:999px;margin-bottom:.375rem}.doctor-hero-info h1{margin:0;font-size:clamp(1.125rem,4.5vw,1.5rem);color:#0f172a;line-height:1.25;word-break:break-word}.doctor-hero-info p{margin:.25rem 0 .5rem;color:#334155;font-size:.875rem;line-height:1.35}.doctor-hero-meta{display:flex;flex-direction:column;gap:.375rem;color:#64748b;font-size:.8125rem}.doctor-hero-meta span{display:inline-flex;align-items:flex-start;gap:.375rem;line-height:1.35;word-break:break-word}.doctor-hero-fee{grid-area:fee;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.625rem .75rem;border-radius:.625rem;background:#ffffffbf;border:1px solid rgba(13,148,136,.15)}.doctor-hero-fee span{color:#64748b;font-size:.75rem;font-weight:600}.doctor-hero-fee strong{color:#0f172a;font-size:1.0625rem;font-weight:800}.book-doctor-subtitle{color:#64748b;margin:0 0 1rem;font-size:.875rem;line-height:1.45}.book-page-loading{margin:2rem 0;text-align:center;color:#64748b}.book-doctor-alert{border-radius:.75rem;padding:.75rem .875rem;margin-bottom:.875rem;font-size:.875rem;line-height:1.45}.book-doctor-alert.error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.book-doctor-section{border:1px solid var(--patient-border, #e2e8f0);border-radius:.875rem;padding:1rem;margin-bottom:.875rem}.book-doctor-section h2{display:flex;align-items:center;flex-wrap:wrap;gap:.375rem;margin:0 0 .875rem;font-size:.9375rem;color:#0f172a;line-height:1.3}.form-grid{display:grid;grid-template-columns:1fr;gap:.875rem}.form-grid.single-column{grid-template-columns:1fr}.form-group{min-width:0}.form-group label{display:block;margin-bottom:.375rem;font-weight:600;color:#334155;font-size:.8125rem}.form-group input,.form-group textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:.625rem;padding:.6875rem .75rem;min-height:2.75rem;font-size:1rem;color:#0f172a;background:#fff}.form-group textarea{min-height:5rem;line-height:1.45;resize:vertical}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#0d9488;box-shadow:0 0 0 3px #0d948826}.field-hint{margin:0;color:#64748b;font-size:.875rem;line-height:1.45}.time-slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.time-slot{border:1px solid #cbd5e1;background:#fff;border-radius:.625rem;padding:.625rem .375rem;min-height:2.75rem;font-weight:700;font-size:.8125rem;color:#334155;cursor:pointer;transition:all .15s ease}.time-slot:hover{border-color:#0d9488;color:#0d9488}.time-slot.selected{background:#0d9488;border-color:#0d9488;color:#fff}.consultation-type-grid{display:grid;grid-template-columns:1fr;gap:.625rem}.consultation-option{display:flex;gap:.75rem;align-items:flex-start;border:1px solid #cbd5e1;border-radius:.75rem;padding:.875rem;cursor:pointer;transition:all .15s ease;min-height:3.25rem}.consultation-option input{margin-top:.25rem;flex-shrink:0;width:1rem;height:1rem}.consultation-option>svg{flex-shrink:0;margin-top:.125rem;color:#0d9488}.consultation-option div{min-width:0}.consultation-option strong{display:block;color:#0f172a;margin-bottom:.2rem;font-size:.9375rem}.consultation-option span{color:#64748b;font-size:.8125rem;line-height:1.35;word-break:break-word}.consultation-option.selected{border-color:#0d9488;background:#f0fdfa}.booking-summary{background:#f8fafc;border:1px solid var(--patient-border, #e2e8f0);border-radius:.875rem;padding:1rem;margin-bottom:.875rem}.booking-summary h3{margin:0 0 .625rem;font-size:.9375rem;color:#0f172a}.booking-summary ul{list-style:none;margin:0;padding:0}.booking-summary li{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.5rem 0;border-bottom:1px solid #e2e8f0;font-size:.875rem}.booking-summary li:last-child{border-bottom:none;padding-bottom:0}.booking-summary li span{color:#64748b;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.booking-summary li strong{color:#0f172a;font-weight:700;word-break:break-word}.book-doctor-page .btn.btn-primary.btn-large{width:100%;min-height:3rem;padding:.875rem 1rem;border:none;border-radius:.75rem;background:#0d9488;color:#fff;font-size:1rem;font-weight:700;cursor:pointer}.book-doctor-page .btn.btn-primary.btn-large:disabled{opacity:.65;cursor:not-allowed}@media(max-width:639px){.book-doctor-form .btn.btn-primary.btn-large{position:sticky;bottom:calc(var(--patient-bottom-nav-height, 72px) + .5rem);z-index:20;box-shadow:0 -4px 16px #0f172a1f}}.book-doctor-success,.book-doctor-error-state{text-align:center;padding:2.5rem 1rem}.book-doctor-success svg{color:#059669;margin-bottom:.75rem}.book-doctor-success h2{margin:0 0 .5rem;color:#065f46;font-size:1.25rem}.success-details{margin-top:1rem;display:flex;flex-direction:column;gap:.375rem;color:#047857;font-size:.875rem}@media(max-width:359px){.time-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:480px){.doctor-hero-meta{flex-direction:row;flex-wrap:wrap;gap:.5rem 1rem}.time-slot-grid{grid-template-columns:repeat(auto-fill,minmax(5.25rem,1fr))}.booking-summary li{flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem}.booking-summary li span{text-transform:none;letter-spacing:normal;font-size:.875rem;font-weight:500;flex-shrink:0}.booking-summary li strong{text-align:right}}@media(min-width:640px){.book-doctor-container{padding:1.25rem 1.5rem;border-radius:1.125rem}.book-doctor-hero{padding:1.125rem 1.25rem}.doctor-hero-avatar{width:4.5rem;height:4.5rem}.consultation-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.book-doctor-section{padding:1.125rem 1.25rem}}@media(min-width:768px){.book-doctor-container{padding:1.5rem}.book-doctor-hero{grid-template-columns:auto 1fr auto;grid-template-areas:"avatar info fee";align-items:center;gap:1rem}.doctor-hero-fee{flex-direction:column;align-items:flex-end;justify-content:center;padding:0;background:transparent;border:none;text-align:right;min-width:8.75rem}.doctor-hero-fee span{font-size:.8125rem}.doctor-hero-fee strong{font-size:1.125rem}.form-grid:not(.single-column){grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}}.dark-theme .book-doctor-container{background:var(--surface, #1e293b);border-color:var(--border, #334155)}.dark-theme .book-doctor-hero{background:linear-gradient(135deg,#0d948826,#0891b21a);border-color:var(--border, #334155)}.dark-theme .doctor-hero-info h1,.dark-theme .doctor-hero-fee strong,.dark-theme .book-doctor-section h2,.dark-theme .booking-summary h3,.dark-theme .booking-summary li strong,.dark-theme .consultation-option strong{color:var(--text-primary, #f1f5f9)}.dark-theme .doctor-hero-fee{background:#0f172a73;border-color:var(--border, #334155)}.dark-theme .form-group input,.dark-theme .form-group textarea,.dark-theme .time-slot,.dark-theme .consultation-option{background:#0f172a;border-color:#334155;color:#e2e8f0}.dark-theme .booking-summary,.dark-theme .book-doctor-section{background:#0f172a;border-color:#334155}.dark-theme .booking-summary li{border-bottom-color:#334155}.vmr-root{display:flex;flex-direction:column;min-height:100vh;background:#0f172a;color:#f8fafc}.vmr-loader{min-height:60vh;display:flex;align-items:center;justify-content:center}.vmr-loader-inner{text-align:center}.vmr-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.15);border-top-color:#10b981;border-radius:50%;animation:vmr-spin .8s linear infinite;margin:0 auto 1rem}@keyframes vmr-spin{to{transform:rotate(360deg)}}.vmr-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:#0f172af2;border-bottom:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.vmr-back-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:12px;background:#ffffff14;color:inherit;cursor:pointer}.vmr-header-info{flex:1;min-width:0}.vmr-header-info h3{margin:0;font-size:1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vmr-duration{display:flex;align-items:center;gap:.35rem;margin-top:.2rem;font-size:.8rem;color:#94a3b8}.vmr-connection{display:flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;white-space:nowrap}.vmr-connection.good{background:#10b98126;color:#34d399}.vmr-connection.fair{background:#f59e0b26;color:#fbbf24}.vmr-connection.poor{background:#ef444426;color:#f87171}.vmr-alert{margin:.75rem 1rem 0;padding:.75rem 1rem;border-radius:12px;background:#ef44441f;border:1px solid rgba(239,68,68,.25);color:#fecaca;font-size:.875rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.vmr-retry-btn{border:none;border-radius:8px;padding:.4rem .75rem;background:#ffffff1f;color:inherit;cursor:pointer;white-space:nowrap}.vmr-body{flex:1;display:grid;grid-template-columns:1fr;gap:0;min-height:0}.vmr-body.with-chat{grid-template-columns:1fr 320px}@media(max-width:900px){.vmr-body.with-chat{grid-template-columns:1fr;grid-template-rows:1fr auto}}.vmr-video-grid{display:grid;grid-template-rows:1fr auto;gap:.75rem;padding:.75rem;min-height:0}.vmr-panel{position:relative;border-radius:16px;overflow:hidden;background:#1e293b;min-height:200px}.vmr-panel-remote{min-height:min(52vh,480px)}.vmr-panel-local{max-height:180px;aspect-ratio:16 / 9;width:min(280px,40%);justify-self:end;border:2px solid rgba(255,255,255,.12)}.vmr-video{width:100%;height:100%;object-fit:cover;display:block;background:#000}.vmr-placeholder{height:100%;min-height:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#94a3b8;text-align:center;padding:1rem}.vmr-placeholder-icon{width:2.5rem;height:2.5rem;opacity:.6}.vmr-placeholder small{font-size:.8rem;opacity:.85}.vmr-overlay{position:absolute;left:.75rem;bottom:.75rem;display:flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border-radius:8px;background:#0000008c;font-size:.78rem}.vmr-chat{display:flex;flex-direction:column;border-left:1px solid rgba(255,255,255,.08);background:#0f172afa;min-height:280px}.vmr-chat-header{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;border-bottom:1px solid rgba(255,255,255,.08);font-weight:600}.vmr-chat-messages{flex:1;overflow-y:auto;padding:.875rem}.vmr-chat-empty{color:#64748b;font-size:.82rem;text-align:center;margin:1rem 0}.vmr-chat-bubble{margin-bottom:.75rem;padding:.65rem .75rem;border-radius:12px;max-width:95%}.vmr-chat-bubble.self{margin-left:auto;background:#10b9812e}.vmr-chat-bubble.peer{background:#3b82f62e}.vmr-chat-sender{font-size:.72rem;font-weight:600;color:#cbd5e1;margin-bottom:.2rem}.vmr-chat-text{font-size:.875rem;line-height:1.4}.vmr-chat-time{margin-top:.25rem;font-size:.68rem;color:#64748b}.vmr-chat-input{display:flex;gap:.5rem;padding:.75rem;border-top:1px solid rgba(255,255,255,.08)}.vmr-chat-input input{flex:1;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#ffffff0f;color:inherit;padding:.65rem .75rem}.vmr-chat-input button{border:none;border-radius:10px;padding:0 1rem;background:#10b981;color:#fff;font-weight:600;cursor:pointer}.vmr-controls{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.875rem 1rem calc(.875rem + env(safe-area-inset-bottom));background:#0f172afa;border-top:1px solid rgba(255,255,255,.08)}.vmr-control-group{display:flex;gap:.5rem;flex-wrap:wrap}.vmr-control{display:flex;flex-direction:column;align-items:center;gap:.2rem;min-width:64px;padding:.55rem .65rem;border:none;border-radius:12px;background:#ffffff14;color:#cbd5e1;font-size:.68rem;cursor:pointer}.vmr-control.active{background:#10b98133;color:#6ee7b7}.vmr-end-call{background:#ef4444;color:#fff;min-width:88px}.vmr-end-call:disabled{opacity:.7;cursor:not-allowed}.vmr-icon-sm{width:1.25rem;height:1.25rem}.vmr-icon-xs{width:1rem;height:1rem}.vmr-phone-flip{transform:rotate(135deg)}.vmr-prejoin{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:linear-gradient(160deg,#0f172a,#1e293b)}.vmr-prejoin-card{width:min(100%,420px);padding:2rem 1.5rem;border-radius:20px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#f8fafc;text-align:center}.vmr-prejoin-icon{width:3rem;height:3rem;color:#34d399;margin:0 auto 1rem}.vmr-prejoin-card h2{margin:0 0 .5rem;font-size:1.35rem}.vmr-prejoin-card p{margin:0 0 1rem;color:#cbd5e1;line-height:1.5}.vmr-prejoin-tips{list-style:none;padding:0;margin:0 0 1.25rem;text-align:left;font-size:.85rem;color:#94a3b8}.vmr-prejoin-tips li{padding:.35rem 0}.vmr-prejoin-tips li:before{content:"•";color:#10b981;margin-right:.5rem}.vmr-prejoin-btn{width:100%;border:none;border-radius:12px;padding:.9rem 1rem;background:#10b981;color:#fff;font-weight:700;cursor:pointer;margin-bottom:.75rem}.vmr-prejoin-cancel{width:100%;border:none;background:transparent;color:#94a3b8;cursor:pointer}.appointment-details-container{max-width:800px;margin:0 auto;padding:1rem}.appointment-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.back-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:var(--radius-sm);transition:var(--transition)}.back-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.header-content{display:flex;align-items:center;gap:1rem;flex:1}.header-content h1{font-size:1.25rem;font-weight:600;margin:0}.status-badge{padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;text-transform:uppercase}.status-pending{background:#fff3e0;color:#e65100}.status-confirmed{background:#e3f2fd;color:#1565c0}.status-checked-in{background:#e8f5e9;color:#2e7d32}.status-in-progress{background:#f3e5f5;color:#7b1fa2}.status-video{background:#e1f5fe;color:#0288d1}.status-completed{background:#e8f5e9;color:#1b5e20}.status-cancelled{background:#ffebee;color:#c62828}.status-no-show{background:#fafafa;color:#616161}.error-message{background:#ffebee;color:#c62828;padding:.75rem 1rem;border-radius:var(--radius);margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.appointment-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow)}.card-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.card-header h2{font-size:1.5rem;font-weight:700;color:var(--primary-color);margin:0 0 .5rem}.appointment-date{color:var(--text-secondary);font-size:.9375rem}.video-meeting-section{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem;color:#fff}.video-meeting-section h3{margin:0 0 .5rem;font-size:1.125rem}.video-meeting-section p{margin:0 0 1rem;opacity:.9}.btn-start-meeting,.btn-join-meeting{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:var(--transition)}.btn-start-meeting{background:#fff3;color:#fff}.btn-start-meeting:hover:not(:disabled){background:#ffffff4d}.btn-start-meeting:disabled{opacity:.6;cursor:not-allowed}.btn-join-meeting{background:#4caf50;color:#fff;animation:pulse-green 2s infinite}.btn-join-meeting:hover{background:#43a047}.pulse-dot{width:8px;height:8px;background:#4caf50;border-radius:50%;animation:pulse-dot 1.5s infinite}@keyframes pulse-green{0%,to{box-shadow:0 0 #4caf5066}50%{box-shadow:0 0 0 10px #4caf5000}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.detail-item{background:var(--background);padding:1rem;border-radius:var(--radius)}.detail-item label{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px}.detail-item p{margin:0;font-weight:500;color:var(--text-primary)}.queue-number{font-size:1.5rem;font-weight:700;color:var(--primary-color)!important}.detail-section{margin-bottom:1.5rem}.detail-section h3{font-size:.875rem;color:var(--text-muted);margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.5px}.detail-section p{margin:0;color:var(--text-primary)}.symptoms-list{display:flex;flex-wrap:wrap;gap:.5rem}.symptom-tag{background:var(--surface-hover);padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.875rem}textarea{width:100%;min-height:100px;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius);font-family:inherit;resize:vertical;background:var(--background);color:var(--text-primary)}textarea:focus{outline:none;border-color:var(--primary-color)}.appointment-actions{display:flex;gap:1rem;padding-top:1rem;border-top:1px solid var(--border)}.btn-cancel{background:#ffebee;color:#c62828;border:none;padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:var(--transition)}.btn-cancel:hover{background:#ffcdd2}.btn-complete{background:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:var(--transition)}.btn-complete:hover{background:var(--primary-color-dark)}.meeting-info-card{background:var(--surface-hover);border-radius:var(--radius-lg);padding:1rem;margin-top:1rem}.meeting-info-card h3{font-size:.875rem;color:var(--text-muted);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.5px}.info-row{display:flex;justify-content:space-between;padding:.5rem 0}.info-row label{color:var(--text-secondary)}.status-active{color:#4caf50;font-weight:600}.status-ended{color:var(--text-muted)}.appointment-details-loading,.appointment-details-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center}.spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.btn-primary{background:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:var(--transition)}.btn-primary:hover{background:var(--primary-color-dark)}@media(max-width:640px){.details-grid{grid-template-columns:1fr}.appointment-actions{flex-direction:column}.header-content{flex-direction:column;align-items:flex-start;gap:.5rem}}.medical-page{padding:24px}.mr-card{background:#fff;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a;overflow:hidden}.mr-card-header{padding:24px 24px 32px;border-bottom:1px solid #e5e7eb}.mr-card-title{font-size:1.875rem;line-height:2.25rem;font-weight:800;color:#111827;margin-bottom:.5rem}.mr-card-subtitle{font-size:.875rem;color:#6b7280}.mr-card-body{padding:24px;background-color:#f9fafb}.alert{padding:1rem;border-radius:.5rem;font-size:.875rem;margin-bottom:1rem}.alert-error{color:#991b1b;background-color:#fee2e2;border:1px solid #fecaca}.alert-success{color:#166534;background-color:#ecfdf5;border:1px solid #bbf7d0}.alert-label{font-weight:500}.mr-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.mr-input{display:block;width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.375rem;box-shadow:0 1px 2px #0000000d;font-size:.875rem;line-height:1.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;outline:none}.mr-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mr-button{display:flex;justify-content:center;align-items:center;padding:.75rem 1rem;border:none;border-radius:.375rem;box-shadow:0 1px 2px #0000000d;font-size:.875rem;font-weight:500;color:#fff;background-color:#2563eb;cursor:pointer;transition:all .15s ease-in-out;width:100%}.mr-button:hover:not(:disabled){background-color:#1d4ed8}.mr-button:disabled{background-color:#9ca3af;cursor:not-allowed}.mr-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.mr-header-count{font-size:.875rem;color:#6b7280}.mr-table-container{background:#fff;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a;overflow:hidden}.mr-table{min-width:100%;border-collapse:collapse}.mr-table-head{background-color:#f9fafb}.mr-table-head th{padding:.75rem 1.5rem;text-align:left;font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.mr-table-body{background:#fff}.mr-table-row{transition:background-color .15s ease-in-out}.mr-table-row:hover{background-color:#f9fafb}.mr-table-cell{padding:1rem 1.5rem;white-space:nowrap;font-size:.875rem;color:#111827}.mr-table-cell-medium{font-weight:500}.mr-table-cell-muted{color:#6b7280}.empty-state{text-align:center;padding:3rem 1.5rem}.empty-state-text{color:#6b7280;font-size:1rem}.status-badge{display:inline-flex;padding:.25rem .5rem;font-size:.75rem;font-weight:600;border-radius:9999px}.status-badge--completed{background-color:#ecfdf5;color:#166534}.status-badge--pending{background-color:#fef3c7;color:#92400e}.status-badge--failed{background-color:#fee2e2;color:#991b1b}.spinner{animation:spin 1s linear infinite}.spinner-path{opacity:.25;stroke:currentColor;stroke-width:4}@media(max-width:768px){.medical-page{padding:1rem}.mr-table{font-size:.875rem}}.invoices-page{padding:var(--space-6);max-width:1400px;margin:0 auto}.page-title{font-size:2rem;font-weight:700;background:linear-gradient(135deg,var(--primary-color),var(--primary-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-8)}.stat-card{background:var(--surface);padding:var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--border);text-align:center;transition:var(--transition)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.stat-amount{font-size:2rem;font-weight:700;color:var(--primary-color);margin-bottom:var(--space-1)}.stat-label{color:var(--text-secondary);font-size:.875rem}.tabs{display:flex;border-bottom:2px solid var(--border);margin-bottom:var(--space-6)}.invoice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:var(--space-5);margin-bottom:var(--space-6)}.invoice-card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow);transition:var(--transition);border-left:4px solid var(--primary-color);position:relative;overflow:hidden}.invoice-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--success))}.invoice-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.invoice-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4)}.invoice-number{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.invoice-meta{display:flex;flex-direction:column;gap:var(--space-1);font-size:.875rem;color:var(--text-secondary)}.patient-info{margin-bottom:var(--space-4)}.patient-name{font-weight:600;color:var(--text-primary);font-size:1.125rem}.invoice-amounts{background:var(--primary-bg);padding:var(--space-4);border-radius:var(--radius);margin-top:var(--space-4)}.amount-row{display:flex;justify-content:space-between;margin-bottom:var(--space-2);font-size:.9375rem}.total-amount{font-size:1.5rem;font-weight:700;color:var(--primary-color);border-top:2px solid var(--border);padding-top:var(--space-3);margin-top:var(--space-3)}.status-badge{position:absolute;top:var(--space-4);right:var(--space-4);font-size:.75rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);font-weight:600;text-transform:uppercase}.invoice-actions{display:flex;gap:var(--space-2);margin-top:var(--space-4)}@media(max-width:768px){.invoices-page{padding:var(--space-4)}.page-header{flex-direction:column;align-items:stretch}.invoice-grid{grid-template-columns:1fr}.invoice-header{flex-direction:column;gap:var(--space-2)}}.invoice-modal{background:var(--surface);border-radius:var(--radius-xl);max-width:800px;max-height:90vh;overflow-y:auto}.invoice-detail-table{width:100%;border-collapse:collapse;margin:var(--space-6) 0}.invoice-detail-table th,.invoice-detail-table td{padding:var(--space-3);text-align:left;border-bottom:1px solid var(--border-light)}.invoice-detail-table th{background:var(--primary-bg);font-weight:600;color:var(--text-primary);font-size:.875rem;text-transform:uppercase}.line-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) 0}.line-total{font-weight:600;color:var(--text-primary)}.swahili-label{font-size:.875rem;color:var(--text-muted);font-style:italic}.payments-page{padding:var(--space-6);max-width:1200px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8);flex-wrap:wrap;gap:var(--space-4)}.payments-tabs{display:flex;border-bottom:2px solid var(--border);margin-bottom:var(--space-6)}.tab{padding:var(--space-3) var(--space-6);cursor:pointer;font-weight:500;border-bottom:3px solid transparent;transition:var(--transition);color:var(--text-secondary)}.tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.payment-methods-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-5);margin-bottom:var(--space-8)}.payment-method-card{background:var(--surface);border:2px dashed var(--border);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;cursor:pointer;transition:var(--transition);position:relative;overflow:hidden}.payment-method-card:hover{border-color:var(--primary-color);background:var(--primary-bg);transform:translateY(-2px)}.payment-method-icon{font-size:3rem;margin-bottom:var(--space-3)}.mpesa-icon{background:linear-gradient(135deg,#129e71,#1e9e71);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.payment-method-label{font-size:1.125rem;font-weight:600;margin-bottom:var(--space-2)}.payment-history{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.history-header{padding:var(--space-5);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.transactions-table{width:100%}.transactions-table th{background:var(--primary-bg);padding:var(--space-4);text-align:left;font-weight:600;color:var(--text-primary);font-size:.875rem}.transactions-table td{padding:var(--space-4);border-bottom:1px solid var(--border-light)}.transaction-amount.positive{color:var(--success);font-weight:600}.transaction-amount.negative{color:var(--error);font-weight:600}.stk-prompt{background:var(--white);border:2px solid var(--success);border-radius:var(--radius);padding:var(--space-5);margin:var(--space-4) 0;text-align:center}.stk-code{font-family:var(--font-mono);font-size:1.25rem;font-weight:700;color:var(--success);letter-spacing:2px;margin:var(--space-3) 0}.payment-form{background:var(--surface);padding:var(--space-6);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr auto;gap:var(--space-4);align-items:end;margin-bottom:var(--space-4)}@media(max-width:768px){.payments-page{padding:var(--space-4)}.form-row,.payment-methods-grid{grid-template-columns:1fr}}.wallet-balance{background:linear-gradient(135deg,var(--primary-color),var(--primary-light));color:var(--white);padding:var(--space-6);border-radius:var(--radius-xl);text-align:center;margin-bottom:var(--space-6)}.balance-amount{font-size:2.5rem;font-weight:700;margin-bottom:var(--space-2)}.balance-label{opacity:.9;font-size:1.125rem}.wallet-page{--w-teal: var(--patient-primary, var(--primary-color, #0d9488));--w-surface: var(--patient-surface, var(--surface, #ffffff));--w-border: var(--patient-border, var(--border, #e2e8f0));--w-muted: var(--patient-text-muted, var(--text-secondary, #64748b));--w-text: var(--patient-text, var(--text-primary, #0f172a));--w-radius: var(--patient-radius, 14px);--w-shadow: 0 1px 3px rgba(15, 23, 42, .06), 0 4px 14px rgba(15, 23, 42, .04);width:100%;max-width:920px;margin:0 auto;padding:0;display:flex;flex-direction:column;gap:.875rem;color:var(--w-text)}.wallet-hero{position:relative;overflow:hidden;padding:1.125rem 1rem;border-radius:var(--w-radius);text-align:left;color:#fff;background:var(--brand-gradient);box-shadow:var(--brand-gradient-shadow)}.wallet-hero:after{content:"";position:absolute;top:-40%;right:-20%;width:55%;height:140%;background:radial-gradient(circle,rgba(255,255,255,.12) 0%,transparent 70%);pointer-events:none}.wallet-hero__label{position:relative;margin:0 0 .35rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;opacity:.92;color:#ffffffeb}.wallet-balance-row{position:relative;display:flex;align-items:baseline;gap:.5rem;flex-wrap:nowrap}.wallet-balance{font-size:clamp(1.75rem,8vw,2.75rem);font-weight:800;line-height:1;margin:0;color:#fff}.wallet-currency{font-size:.9375rem;font-weight:700;opacity:.9;color:#ffffffe6}.wallet-page .actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}.wallet-page .actions-grid .action-card:first-child{grid-column:1 / -1}.wallet-page .action-card{background:var(--w-surface);border-radius:var(--w-radius);padding:.875rem 1rem;text-align:left;box-shadow:var(--w-shadow);border:1px solid var(--w-border);cursor:default;transition:border-color .2s}.wallet-page .action-card:first-child{cursor:pointer}.wallet-page .action-card:first-child:active{border-color:var(--w-teal)}.wallet-page .action-icon{font-size:1.5rem;margin-bottom:.375rem;line-height:1}.wallet-page .deposit-icon{color:#10b981}.wallet-page .withdraw-icon{color:#f59e0b}.wallet-page .send-icon{color:var(--w-teal)}.wallet-page .action-title{font-size:.875rem;font-weight:700;margin-bottom:.15rem;color:var(--w-text)}.wallet-page .action-description{font-size:.6875rem;color:var(--w-muted);line-height:1.4}.wallet-page .quick-actions{display:flex;gap:.375rem;flex-wrap:wrap;margin-top:.625rem}.wallet-page .btn-quick{padding:.4rem .65rem;font-size:.6875rem;font-weight:700;border-radius:999px;min-height:2rem}.wallet-page .btn-success{background:#10b981;color:#fff;border:none}.wallet-page .btn-success:hover{background:#059669;color:#fff}.wallet-page .btn-ghost{background:transparent;color:var(--w-muted);border:1px solid var(--w-border)}.wallet-page .btn-ghost:hover{background:var(--patient-surface-hover, #f1f5f9);color:var(--w-text)}.wallet-page .deposit-form{background:#10b98114;border:1px dashed #10b981;border-radius:var(--w-radius);padding:1rem}.wallet-page .wallet-panel-card{margin-bottom:0;box-shadow:var(--w-shadow);border:1px solid var(--w-border);border-radius:var(--w-radius);overflow:hidden}.wallet-page .deposit-form.wallet-panel-card{background:#10b98114;border-style:dashed;border-color:#10b981}.wallet-page .recent-transactions.wallet-panel-card{background:var(--w-surface);padding:0}.wallet-page .deposit-form h3{margin:0 0 .75rem;font-size:.9375rem;font-weight:700;color:var(--w-text)}.wallet-page .form-label{display:block;margin-bottom:.375rem;font-size:.8125rem;font-weight:600;color:var(--w-text)}.wallet-page .form-input{width:100%;box-sizing:border-box;padding:.6875rem .75rem;min-height:2.75rem;border:1px solid var(--w-border);border-radius:.625rem;font-size:1rem;background:var(--w-surface);color:var(--w-text)}.wallet-page .form-input:focus{outline:none;border-color:var(--w-teal);box-shadow:0 0 0 3px #0d948826}.wallet-page .transactions-header{padding:.875rem 1rem;border-bottom:1px solid var(--w-border)}.wallet-page .transactions-header h3{margin:0;font-size:.9375rem;font-weight:700;color:var(--w-text)}.wallet-page .transaction-list{max-height:420px;overflow-y:auto}.wallet-page .transaction-item{padding:.75rem 1rem;border-bottom:1px solid var(--w-border);display:flex;justify-content:space-between;align-items:center;gap:.5rem}.wallet-page .transaction-item:last-child{border-bottom:none}.wallet-page .transaction-item:hover{background:#0d94880a}.wallet-page .transaction-details{flex:1 1 auto;min-width:0}.wallet-page .transaction-type{font-size:.8125rem;font-weight:600;color:var(--w-text);text-transform:capitalize;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wallet-page .transaction-meta{font-size:.6875rem;color:var(--w-muted);margin-top:.1rem}.wallet-page .transaction-amount{font-size:.875rem;font-weight:700;flex-shrink:0;white-space:nowrap}.wallet-page .transaction-positive{color:#059669}.wallet-page .transaction-negative{color:#dc2626}.wallet-page .empty-state{padding:2rem 1rem;text-align:center;color:var(--w-muted)}.wallet-page .empty-state p{margin:.5rem 0 0;font-size:.8125rem}.wallet-page .book-page-loading{margin:2rem 0;text-align:center;color:var(--w-muted)}@media(min-width:640px){.wallet-page .actions-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.wallet-page .actions-grid .action-card:first-child{grid-column:auto}.wallet-page .action-card:first-child:hover{border-color:var(--w-teal);transform:translateY(-2px);box-shadow:0 8px 20px #0f172a14}.wallet-hero{padding:1.25rem 1.5rem}}@media(min-width:768px){.wallet-page .transaction-amount{font-size:1rem}}.dark-theme .wallet-page{--w-surface: var(--surface, #1e293b);--w-border: var(--border, #334155);--w-text: var(--text-primary, #f1f5f9);--w-muted: var(--text-secondary, #94a3b8);--w-shadow: 0 2px 8px rgba(0, 0, 0, .25)}.dark-theme .wallet-page .wallet-hero{background:var(--brand-gradient);box-shadow:var(--brand-gradient-shadow)}.dark-theme .wallet-page .action-card,.dark-theme .wallet-page .recent-transactions.wallet-panel-card{background:var(--surface, #1e293b);border-color:var(--border, #334155)}.dark-theme .wallet-page .action-title,.dark-theme .wallet-page .transaction-type,.dark-theme .wallet-page .deposit-form h3,.dark-theme .wallet-page .transactions-header h3{color:var(--text-primary, #f1f5f9)}.dark-theme .wallet-page .action-description,.dark-theme .wallet-page .transaction-meta,.dark-theme .wallet-page .empty-state{color:var(--text-secondary, #94a3b8)}.dark-theme .wallet-page .deposit-form.wallet-panel-card{background:#10b9811a;border-color:#34d39959}.dark-theme .wallet-page .form-input{background:var(--background, #0f172a);border-color:var(--border, #334155);color:var(--text-primary, #f1f5f9)}.dark-theme .wallet-page .btn-ghost{border-color:var(--border, #334155);color:var(--text-secondary, #94a3b8)}.dark-theme .wallet-page .btn-ghost:hover{background:var(--surface-hover, #334155);color:var(--text-primary, #f1f5f9)}.dark-theme .wallet-page .transaction-item:hover{background:#0d948814}*{margin:0;padding:0;box-sizing:border-box}.doctor-dashboard-modern,.doctor-appointments-modern,.doctor-wallet-modern{min-height:auto;background:radial-gradient(circle at 0% 0%,#f8fafc,#e2e8f0);position:relative;overflow-x:hidden;padding:0}.dashboard-bg{position:fixed;inset:0;background:radial-gradient(circle at 20% 50%,rgba(59,130,246,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(139,92,246,.08) 0%,transparent 50%),radial-gradient(circle at 40% 20%,rgba(16,185,129,.05) 0%,transparent 50%);pointer-events:none;z-index:0}.dashboard-loader{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.loader-content{text-align:center}.spinner{width:60px;height:60px;border:3px solid rgba(59,130,246,.1);border-top-color:#3b82f6;border-right-color:#8b5cf6;border-radius:50%;animation:spin 1s cubic-bezier(.68,-.55,.265,1.55) infinite;margin:0 auto 1.5rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loader-content p{color:#64748b;font-size:.875rem;font-weight:500}.dashboard-header-modern{position:relative;z-index:2;margin-bottom:1rem}.dashboard-toolbar-card{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:nowrap;padding:.875rem 1rem;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.8);border-radius:1.25rem;box-shadow:0 4px 16px #0f172a0f}.doctor-panel-toolbar,.live-toolbar-card,.notifications-toolbar-card{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:nowrap;padding:.875rem 1rem;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.8);border-radius:1.25rem;box-shadow:0 4px 16px #0f172a0f;margin-bottom:1rem;position:relative;z-index:2}.toolbar-greeting--with-icon{display:flex;flex-direction:row;align-items:center;gap:.625rem;flex:1;min-width:0}.toolbar-page-icon{width:2rem;height:2rem;flex-shrink:0;padding:.375rem;border-radius:.75rem;color:var(--primary-color, #0d9488);background:color-mix(in srgb,var(--primary-color, #0d9488) 12%,transparent)}.live-toolbar-card .toolbar-page-icon{color:#7c3aed;background:#7c3aed1f}.toolbar-icon-wrap{position:relative;flex-shrink:0}.toolbar-text{min-width:0}.toolbar-text h1{font-size:1rem;font-weight:800;line-height:1.25;margin:0;background:linear-gradient(135deg,#0f172a,#334155);-webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toolbar-text p{font-size:.6875rem;color:#64748b;margin:.15rem 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-toolbar-stats{display:flex;flex-direction:row;align-items:center;gap:.375rem;flex-shrink:0}.panel-stat-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:3.25rem;padding:.375rem .5rem;border-radius:.75rem;background:#f8fafc;border:1px solid #e2e8f0}.panel-stat-number{font-size:.9375rem;font-weight:800;color:#0f172a;line-height:1.2}.panel-stat-label{font-size:.5625rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em;line-height:1.2;text-align:center;max-width:4.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-mark-all-text{display:none}.dashboard-toolbar-card.doctor-panel-toolbar.dashboard-toolbar-card--stacked{flex-direction:column;align-items:stretch}.dashboard-toolbar-card--stacked{flex-direction:column;align-items:stretch;gap:.75rem}.toolbar-greeting--top{width:100%;min-width:0}.toolbar-actions--bottom{width:100%;justify-content:flex-start;padding-top:.625rem;border-top:1px solid #e2e8f0}.greeting-title{flex-wrap:wrap;white-space:normal}.greeting-subtitle{white-space:normal;overflow:visible;text-overflow:unset}.toolbar-greeting{flex:1;min-width:0}.toolbar-actions{display:flex;flex-direction:row;align-items:center;gap:.5rem;flex-shrink:0}.header-greeting{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}.greeting-title{font-size:1.125rem;font-weight:800;background:linear-gradient(135deg,#0f172a,#1e293b,#334155);-webkit-background-clip:text;background-clip:text;color:transparent;display:flex;align-items:center;gap:.5rem;letter-spacing:-.02em;line-height:1.25}.sparkle-icon{width:1.25rem;height:1.25rem;color:#fbbf24;animation:sparklePulse 2s ease-in-out infinite;flex-shrink:0}@keyframes sparklePulse{0%,to{opacity:.6;transform:scale(1) rotate(0)}50%{opacity:1;transform:scale(1.15) rotate(10deg)}}.greeting-subtitle{color:#64748b;font-size:.75rem;margin-top:.25rem;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-stats{display:flex;gap:1rem;align-items:center}.current-time-card{background:#f8fafc;padding:.5rem .75rem;border-radius:.875rem;display:flex;align-items:center;gap:.5rem;box-shadow:none;border:1px solid #e2e8f0}.time-icon{width:18px;height:18px;color:var(--primary-color, #0d9488);flex-shrink:0}.time-info{display:flex;flex-direction:column;min-width:0}.time{font-weight:700;color:#1e293b;font-size:.8125rem;line-height:1.2;white-space:nowrap}.date{font-size:.625rem;color:#64748b;white-space:nowrap}.refresh-btn{background:#f8fafc;border:1px solid #e2e8f0;width:40px;height:40px;border-radius:.875rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);color:#64748b;box-shadow:none;flex-shrink:0}.refresh-btn:hover{background:#fff;transform:rotate(180deg);color:var(--primary-color, #0d9488);border-color:color-mix(in srgb,var(--primary-color, #0d9488) 35%,#e2e8f0)}.stats-grid-modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem;position:relative;z-index:2}.stat-card-modern{background:#fff;border-radius:1.5rem;padding:1.5rem;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;position:relative;cursor:pointer;border:1px solid rgba(226,232,240,.6)}.stat-card-modern:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#10b981);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.stat-card-modern:hover:before{transform:scaleX(1)}.stat-card-modern:hover{transform:translateY(-6px);box-shadow:0 20px 25px -12px #00000026}.stat-card-inner{display:flex;align-items:center;gap:1rem}.stat-card-inner--stacked{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.375rem;min-height:6.75rem;height:100%}.stat-card-inner--stacked .stat-title{order:1;width:100%;margin-bottom:0;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stat-card-inner--stacked .stat-value-wrapper{order:2;width:100%;margin-bottom:0;flex-wrap:wrap}.stat-card-inner--stacked .stat-trend{order:3}.stat-card-inner--stacked .stat-icon-wrapper--bottom{order:4;margin-top:auto;align-self:flex-end;width:2.5rem;height:2.5rem;border-radius:.75rem;flex-shrink:0}.stat-card-inner--stacked .stat-icon-wrapper--bottom .stat-icon{width:1.25rem;height:1.25rem}.stat-card-modern{padding:.875rem 1rem}.stat-icon-wrapper{width:60px;height:60px;border-radius:1.25rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.stat-card-modern:hover .stat-icon-wrapper{transform:scale(1.05)}.stat-icon{width:28px;height:28px}.stat-content{flex:1}.stat-title{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin-bottom:.35rem}.stat-value-wrapper{display:flex;align-items:baseline;gap:.25rem;margin-bottom:.25rem;min-width:0}.stat-value{font-size:1.125rem;font-weight:800;color:#0f172a;line-height:1.2;word-break:break-word}.stat-suffix{font-size:.875rem;color:#64748b;font-weight:500}.stat-trend{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;padding:.25rem .5rem;border-radius:2rem;font-weight:600}.stat-trend.up{background:#10b9811a;color:#10b981}.stat-trend.down{background:#ef44441a;color:#ef4444}.trend-icon{width:12px;height:12px}.stat-card-modern.gradient-blue .stat-icon-wrapper{background:linear-gradient(135deg,#3b82f620,#2563eb20)}.stat-card-modern.gradient-blue .stat-icon{color:#3b82f6}.stat-card-modern.gradient-green .stat-icon-wrapper{background:linear-gradient(135deg,#10b98120,#05966920)}.stat-card-modern.gradient-green .stat-icon{color:#10b981}.stat-card-modern.gradient-orange .stat-icon-wrapper{background:linear-gradient(135deg,#f59e0b20,#d9770620)}.stat-card-modern.gradient-orange .stat-icon{color:#f59e0b}.stat-card-modern.gradient-purple .stat-icon-wrapper{background:linear-gradient(135deg,#8b5cf620,#7c3aed20)}.stat-card-modern.gradient-purple .stat-icon{color:#8b5cf6}.charts-section{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem;margin-bottom:2rem;position:relative;z-index:2}.chart-card{background:#fff;border-radius:1.5rem;padding:1.5rem;box-shadow:0 4px 6px -1px #0000000d;transition:all .3s ease;border:1px solid rgba(226,232,240,.6)}.chart-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -12px #0000001a}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.chart-title{display:flex;align-items:center;gap:.5rem}.chart-icon{width:24px;height:24px;color:#3b82f6}.chart-title h3{font-size:1rem;font-weight:700;color:#0f172a}.period-selector{display:flex;gap:.5rem;background:#f1f5f9;padding:.25rem;border-radius:.75rem}.period-btn{padding:.5rem 1rem;border:none;background:transparent;border-radius:.5rem;cursor:pointer;font-size:.75rem;font-weight:600;transition:all .2s ease;color:#64748b}.period-btn.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#3b82f6}.period-btn:hover:not(.active){background:#ffffff80;color:#1e293b}.recharts-tooltip-wrapper{outline:none}.custom-tooltip{background:#fff;padding:.75rem 1rem;border-radius:.75rem;box-shadow:0 10px 40px #0000001a;border:1px solid #e2e8f0}.quick-actions-modern{margin-bottom:2rem;position:relative;z-index:2}.section-title{font-size:1rem;font-weight:700;color:#0f172a;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.actions-grid-modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.action-card-modern{background:#fff;border-radius:1rem;padding:1rem;display:flex;align-items:center;gap:.75rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #e2e8f0;cursor:pointer}.action-card-modern:hover{transform:translateY(-3px);box-shadow:0 10px 25px -5px #0000001a;border-color:transparent}.action-icon{width:44px;height:44px;border-radius:1rem;display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:#fff;transition:transform .3s ease}.action-card-modern:hover .action-icon{transform:scale(1.05)}.action-icon.gradient-blue{background:linear-gradient(135deg,#3b82f6,#2563eb)}.action-icon.gradient-green{background:linear-gradient(135deg,#10b981,#059669)}.action-icon.gradient-purple{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.action-icon.gradient-orange{background:linear-gradient(135deg,#f59e0b,#d97706)}.action-card-modern span{font-weight:600;font-size:.875rem;color:#1e293b}.bottom-section{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;position:relative;z-index:2}.recent-appointments-card,.notifications-card{background:#fff;border-radius:1.5rem;padding:1.5rem;box-shadow:0 4px 6px -1px #0000000d;transition:all .3s ease;border:1px solid rgba(226,232,240,.6)}.recent-appointments-card:hover,.notifications-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -12px #0000001a}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.card-header h3{font-size:1rem;font-weight:700;color:#0f172a}.view-all-link{color:#3b82f6;text-decoration:none;font-size:.75rem;font-weight:600;transition:all .2s}.view-all-link:hover{color:#2563eb;transform:translate(2px);display:inline-block}.appointments-list-modern,.notifications-list-modern{display:flex;flex-direction:column;gap:.75rem}.appointment-item-modern{display:flex;align-items:center;gap:1rem;padding:.75rem;border-radius:1rem;transition:all .2s ease;cursor:pointer;background:#f8fafc}.appointment-item-modern:hover{background:#f1f5f9;transform:translate(4px)}.apt-avatar{width:48px;height:48px;border-radius:1rem;display:flex;align-items:center;justify-content:center;background:#e2e8f0;color:#3b82f6}.apt-details{flex:1}.apt-patient-name{font-weight:700;font-size:.875rem;color:#0f172a;margin-bottom:.25rem}.apt-time-info{font-size:.7rem;color:#64748b;display:flex;align-items:center;gap:.5rem}.dot{font-size:.5rem}.apt-status-badge{padding:.25rem .75rem;border-radius:2rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.apt-action-btn{background:transparent;border:none;color:#3b82f6;font-size:.75rem;font-weight:600;cursor:pointer;opacity:0;transition:opacity .2s ease}.appointment-item-modern:hover .apt-action-btn{opacity:1}.notification-item-modern{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border-radius:1rem;transition:all .2s ease;cursor:pointer}.notification-item-modern:hover{background:#f8fafc}.notif-dot{width:8px;height:8px;border-radius:50%;margin-top:.375rem;transition:all .2s}.notif-content{flex:1}.notif-message{font-size:.8rem;color:#1e293b;margin-bottom:.25rem;line-height:1.4}.notif-time{font-size:.65rem;color:#94a3b8}.appointments-header,.wallet-header{margin-bottom:2rem;position:relative;z-index:2}.appointments-header h1,.wallet-header h1{font-size:2rem;font-weight:800;background:linear-gradient(135deg,#0f172a,#1e293b,#334155);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:.5rem;letter-spacing:-.02em}.appointments-header p,.wallet-header p{color:#64748b;font-size:.875rem}.header-stats{display:flex;gap:1rem;margin-top:1rem}.stat-chip{background:#fff;padding:.5rem 1rem;border-radius:2rem;display:flex;gap:.5rem;align-items:baseline;box-shadow:0 1px 3px #0000000d;border:1px solid #e2e8f0}.stat-chip .label{font-size:.75rem;font-weight:500;color:#64748b}.stat-chip .value{font-weight:800;color:#0f172a;font-size:1rem}.stat-chip.confirmed .value{color:#10b981}.stat-chip.pending .value{color:#f59e0b}.stat-chip.cancelled .value{color:#ef4444}.filters-section{background:#fff;border-radius:1rem;padding:1rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000000d;border:1px solid #e2e8f0;position:relative;z-index:2}.search-box{position:relative;margin-bottom:1rem}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#94a3b8}.search-box input{width:100%;padding:.75rem 1rem .75rem 2.75rem;border:1px solid #e2e8f0;border-radius:.75rem;font-size:.875rem;transition:all .2s;background:#f8fafc}.search-box input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.filter-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.filter-tab{padding:.5rem 1rem;border:none;background:#f1f5f9;border-radius:.5rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s;color:#64748b;text-transform:capitalize}.filter-tab.active{background:#3b82f6;color:#fff;box-shadow:0 2px 8px #3b82f64d}.filter-tab:hover:not(.active){background:#e2e8f0;color:#1e293b}.appointments-grid-modern{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem;position:relative;z-index:2}.appointment-card-modern{background:#fff;border-radius:1.25rem;padding:1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;border:1px solid #e2e8f0;cursor:pointer}.appointment-card-modern:hover{transform:translateY(-6px);box-shadow:0 20px 25px -12px #00000026;border-color:transparent}.card-header-section{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.patient-info{display:flex;gap:.75rem}.patient-avatar{width:48px;height:48px;border-radius:1rem;overflow:hidden;flex-shrink:0}.patient-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#3b82f6,#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff}.avatar-placeholder svg{width:24px;height:24px}.patient-details h3{font-size:1rem;font-weight:700;color:#0f172a;margin-bottom:.25rem}.patient-meta{font-size:.7rem;color:#64748b}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .875rem;border-radius:2rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.appointment-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.detail-item{display:flex;align-items:center;gap:.75rem}.detail-icon{width:18px;height:18px;color:#94a3b8;flex-shrink:0}.detail-item div{display:flex;flex-direction:column;flex:1}.detail-label{font-size:.6rem;text-transform:uppercase;font-weight:700;letter-spacing:.05em;color:#94a3b8}.detail-value{font-size:.8rem;color:#1e293b;font-weight:500}.detail-value.queue-number{font-weight:700;color:#3b82f6}.detail-item.full-width{width:100%}.card-actions{display:flex;gap:.75rem;margin-top:.5rem}.action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem;border:none;border-radius:.75rem;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .2s ease}.action-btn.primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.action-btn.secondary{background:#f1f5f9;color:#64748b}.action-btn.secondary:hover{background:#e2e8f0;color:#1e293b}.empty-state{text-align:center;padding:3rem;background:#fff;border-radius:1.5rem;grid-column:1 / -1}.empty-state h3{font-size:1rem;color:#1e293b;margin-bottom:.5rem}.empty-state p{font-size:.8rem;color:#94a3b8}.wallet-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem;margin-bottom:1rem}.wallet-balance-card{position:relative;background:linear-gradient(135deg,#0f766e,#0d9488 45%,#0891b2);border-radius:1.25rem;padding:1rem;overflow:hidden;box-shadow:0 12px 28px -8px #0d948873;grid-column:1 / -1}.wallet-balance-card--primary .balance-content--compact{display:flex;align-items:center}.wallet-mini-stat-card{display:flex;align-items:center;gap:.625rem;padding:.875rem;border-radius:1rem;background:#fff;border:1px solid #e2e8f0;box-shadow:0 2px 8px #0f172a0a}.wallet-stat-icon{width:1.75rem;height:1.75rem;flex-shrink:0}.wallet-stat-icon--up{color:#10b981}.wallet-stat-icon--down{color:#f59e0b}.wallet-stat-label{display:block;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#64748b;line-height:1.3}.wallet-stat-value{display:block;font-size:.875rem;font-weight:700;color:#0f172a;line-height:1.3;word-break:break-word}.balance-background{position:absolute;top:-50%;right:-20%;width:80%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.12) 0%,transparent 70%);animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(-20px,-20px) rotate(5deg)}}.balance-content{position:relative;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:2rem}.balance-left{display:flex;align-items:center;gap:.875rem;min-width:0}.balance-icon{width:2.5rem;height:2.5rem;color:#fffffff2;filter:drop-shadow(0 2px 6px rgba(0,0,0,.15));flex-shrink:0}.balance-info{display:flex;flex-direction:column}.balance-label{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#ffffffbf}.balance-value{font-size:1.5rem;font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1.2}.balance-subtitle{font-size:.6875rem;color:#ffffffb3;margin-top:.15rem}.mini-stats{display:flex;gap:2rem}.mini-stat{display:flex;align-items:center;gap:.75rem;background:#ffffff0d;padding:.75rem 1rem;border-radius:1rem}.stat-icon-up{width:32px;height:32px;color:#10b981}.stat-icon-down{width:32px;height:32px;color:#ef4444}.mini-stat .stat-label{font-size:.65rem;color:#94a3b8;display:block;font-weight:500}.mini-stat .stat-value{font-size:1rem;font-weight:700;color:#fff;display:block}.earnings-chart-section{background:#fff;border-radius:1.5rem;padding:1.5rem;margin-bottom:2rem;box-shadow:0 4px 6px -1px #0000000d;border:1px solid #e2e8f0}.transactions-section{background:#fff;border-radius:1.5rem;padding:1.5rem;box-shadow:0 4px 6px -1px #0000000d;border:1px solid #e2e8f0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.section-header h3{font-size:1rem;font-weight:700;color:#0f172a}.export-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f1f5f9;border:none;border-radius:.75rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s;color:#64748b}.export-btn:hover{background:#e2e8f0;color:#1e293b}.transactions-list-modern{display:flex;flex-direction:column;gap:.75rem}.transaction-item{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:1rem;background:#f8fafc;transition:all .2s;cursor:pointer}.transaction-item:hover{background:#f1f5f9;transform:translate(4px)}.transaction-icon{width:44px;height:44px;border-radius:1rem;display:flex;align-items:center;justify-content:center;background:#fff;box-shadow:0 1px 2px #0000000d}.credit-icon{width:22px;height:22px;color:#10b981}.debit-icon{width:22px;height:22px;color:#ef4444}.transaction-details{flex:1}.transaction-title{font-weight:600;font-size:.875rem;color:#0f172a;display:block;margin-bottom:.25rem}.transaction-date{font-size:.65rem;color:#94a3b8}.transaction-amount{font-weight:800;font-size:.875rem;margin-right:1rem}.transaction-amount.credit{color:#10b981}.transaction-amount.debit{color:#ef4444}.transaction-status{padding:.25rem .75rem;border-radius:2rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.transaction-status.completed{background:#10b9811a;color:#10b981}.transaction-status.pending{background:#f59e0b1a;color:#f59e0b}.transaction-status.failed{background:#ef44441a;color:#ef4444}.empty-transactions{text-align:center;padding:3rem}.empty-transactions .empty-icon{width:48px;height:48px;margin:0 auto 1rem;opacity:.3}.empty-transactions p{font-weight:500;color:#64748b;margin-bottom:.25rem}.empty-transactions span{font-size:.75rem;color:#94a3b8}.wallet-note{margin-top:1rem;padding:1rem;background:#fef3c7;border-radius:.75rem;border-left:3px solid #f59e0b}.wallet-note p{font-size:.75rem;color:#92400e}.live-meeting-container{background:#fff;border-radius:1.5rem;padding:1.5rem;margin-top:1rem}.live-lobby{text-align:center;padding:2rem}.lobby-info{margin-bottom:2rem}.lobby-info h3{font-size:1.25rem;color:#0f172a;margin-bottom:.5rem}.lobby-info p{color:#64748b;font-size:.875rem}.appts-list{display:grid;gap:1rem;max-width:500px;margin:0 auto}.live-apt-card{background:#f8fafc;border-radius:1rem;padding:1.25rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all .2s;border:2px solid transparent}.live-apt-card:hover{background:#f1f5f9;transform:translateY(-2px);border-color:#3b82f6}.apt-patient{font-weight:700;color:#0f172a}.patient-mr{display:block;font-size:.7rem;color:#64748b;font-weight:400;margin-top:.25rem}.apt-time{font-size:.8rem;color:#64748b}.apt-status{padding:.25rem .75rem;border-radius:2rem;font-size:.7rem;font-weight:600;background:#10b9811a;color:#10b981}.notifications-grid{display:flex;flex-direction:column;gap:1rem}.notif-card{background:#fff;border-radius:1rem;padding:1.25rem;transition:all .2s;border-left:4px solid #3b82f6}.notif-card.unread{background:linear-gradient(135deg,#3b82f60d,#fff);border-left-color:#3b82f6}.notif-card.read{border-left-color:#cbd5e1;opacity:.7}.notif-type{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#3b82f6;margin-bottom:.5rem}.notif-content h4{font-size:1rem;font-weight:700;color:#0f172a;margin-bottom:.5rem}.notif-content p{font-size:.875rem;color:#64748b;line-height:1.5;margin-bottom:.75rem}.apt-link{background:none;border:none;color:#3b82f6;font-size:.75rem;font-weight:600;cursor:pointer;padding:0}.notif-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e2e8f0}.notif-meta .time{font-size:.65rem;color:#94a3b8}.mark-read-btn{background:transparent;border:none;font-size:.7rem;font-weight:600;color:#64748b;cursor:pointer;padding:.25rem .5rem;border-radius:.5rem}.mark-read-btn:hover{background:#f1f5f9;color:#3b82f6}.tabs{display:flex;gap:.5rem}.tabs button{padding:.5rem 1rem;border:none;background:#f1f5f9;border-radius:.75rem;cursor:pointer;font-size:.75rem;font-weight:600;transition:all .2s}.tabs button.active{background:#3b82f6;color:#fff}@media(max-width:1024px){.charts-section,.bottom-section{grid-template-columns:1fr}.stats-grid-modern{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.doctor-dashboard-modern,.doctor-appointments-modern,.doctor-wallet-modern{padding:1rem}.greeting-title{font-size:1.5rem}.stats-grid-modern{grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}.actions-grid-modern{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-toolbar-card{padding:.75rem;gap:.5rem}.wallet-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.balance-value{font-size:1.35rem}.appointments-grid-modern{grid-template-columns:1fr}.balance-content{flex-direction:row;align-items:center}.mini-stats{flex-direction:row;flex-wrap:wrap;width:100%;gap:.625rem}.balance-left{flex-direction:row;align-items:center}.wallet-balance-card{padding:1rem}.filter-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:.5rem}.filter-tab{white-space:nowrap}.header-stats{flex-wrap:wrap}}@media(max-width:480px){.actions-grid-modern{grid-template-columns:repeat(2,minmax(0,1fr))}.card-actions{flex-direction:column}.transaction-item{flex-wrap:wrap}.transaction-amount{margin-left:auto}}::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media print{.refresh-btn,.period-selector,.action-btn,.quick-actions-modern{display:none}.doctor-dashboard-modern,.doctor-appointments-modern,.doctor-wallet-modern{background:#fff;padding:0}.stat-card-modern,.chart-card,.wallet-balance-card{break-inside:avoid;box-shadow:none;border:1px solid #e2e8f0}}.notifications-modern{min-height:100vh;padding:2rem;position:relative;background:radial-gradient(circle at 0% 0%,#f8fafc,#e2e8f0)}.notifications-bg{position:fixed;inset:0;background:radial-gradient(circle at 30% 40%,rgba(59,130,246,.05) 0%,transparent 60%);pointer-events:none}.notifications-header-modern{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.header-icon-wrapper{position:relative}.header-icon{width:48px;height:48px;color:#3b82f6;background:#3b82f61a;padding:10px;border-radius:1rem}.unread-badge{position:absolute;top:-5px;right:-5px;background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;padding:.15rem .4rem;border-radius:1rem;min-width:20px;text-align:center}.header-info h1{font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,#0f172a,#334155);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:.25rem}.header-info p{color:#64748b;font-size:.875rem}.header-actions{display:flex;gap:.75rem;align-items:center}.action-icon-btn{background:#fff;border:1px solid #e2e8f0;padding:.5rem;border-radius:.75rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;color:#64748b}.action-icon-btn:hover{background:#f1f5f9;color:#3b82f6;transform:translateY(-2px)}.btn-mark-all{background:#3b82f6;color:#fff;border:none;padding:.5rem 1rem;border-radius:.75rem;font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s}.btn-mark-all:hover{background:#2563eb;transform:translateY(-2px)}.notification-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.stat-card-mini{background:#fff;border-radius:1rem;padding:1rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .2s;border:1px solid #e2e8f0}.stat-card-mini.active{border-color:#3b82f6;background:linear-gradient(135deg,#eff6ff,#fff)}.stat-card-mini:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.stat-icon{width:44px;height:44px;border-radius:.75rem;display:flex;align-items:center;justify-content:center}.stat-icon.total{background:#3b82f61a;color:#3b82f6}.stat-icon.unread{background:#ef44441a;color:#ef4444}.stat-icon.read{background:#10b9811a;color:#10b981}.stat-card-mini .notif-stat-value{font-size:1.125rem;font-weight:800;color:#0f172a;line-height:1.2}.stat-card-mini .notif-stat-label{font-size:.625rem;color:#64748b;font-weight:600;line-height:1.2}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:1.5rem;font-weight:800;color:#0f172a}.filters-bar{background:#fff;border-radius:1rem;padding:1rem;margin-bottom:1.5rem;border:1px solid #e2e8f0}.filter-title{font-size:.75rem;font-weight:600;color:#64748b;margin-bottom:.75rem;text-transform:uppercase}.type-filters{display:flex;gap:.5rem;flex-wrap:wrap}.type-filter-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f1f5f9;border:none;border-radius:.75rem;font-size:.75rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s}.type-filter-btn.active{background:#3b82f6;color:#fff}.type-filter-btn:hover:not(.active){background:#e2e8f0;color:#1e293b}.bulk-actions-bar{background:#3b82f6;border-radius:.75rem;padding:.75rem 1rem;margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:.875rem;font-weight:500}.bulk-delete-btn,.bulk-cancel-btn{background:#fff3;border:none;padding:.5rem 1rem;border-radius:.5rem;color:#fff;font-size:.75rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:all .2s}.bulk-delete-btn:hover,.bulk-cancel-btn:hover{background:#ffffff4d}.ws-status{display:inline-flex;align-items:center;gap:.5rem;font-size:.7rem;padding:.25rem .75rem;border-radius:2rem;margin-bottom:1rem}.ws-status.connected{background:#10b9811a;color:#10b981}.ws-status.disconnected{background:#ef44441a;color:#ef4444}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;animation:pulse 2s infinite}.notifications-list-modern{display:flex;flex-direction:column;gap:.75rem}.notification-card-modern{background:#fff;border-radius:1rem;transition:all .3s;border:1px solid #e2e8f0;overflow:hidden}.notification-card-modern.unread{border-left:4px solid #3b82f6;background:linear-gradient(135deg,#fff,#f8fafc)}.notification-card-modern.selected{background:#eff6ff;border-color:#3b82f6}.notification-card-modern:hover{transform:translate(4px);box-shadow:0 4px 12px #0000000d}.notification-checkbox{padding:1rem;display:flex;align-items:center}.notification-checkbox input{width:18px;height:18px;cursor:pointer}.notification-content-wrapper{display:flex;gap:1rem;padding:1rem;cursor:pointer;flex:1}.notification-icon{width:48px;height:48px;border-radius:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notification-content{flex:1}.notification-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.notification-type{display:flex;align-items:center;gap:.5rem}.type-badge{font-size:.6rem;font-weight:700;padding:.25rem .5rem;border-radius:.5rem;text-transform:uppercase;letter-spacing:.03em}.unread-dot{width:8px;height:8px;background:#3b82f6;border-radius:50%}.notification-time{font-size:.7rem;color:#94a3b8}.notification-title{font-size:.9rem;font-weight:700;color:#0f172a;margin-bottom:.25rem}.notification-message{font-size:.8rem;color:#64748b;line-height:1.4}.notification-metadata{display:flex;gap:1rem;margin-top:.5rem}.meta-item{display:flex;align-items:center;gap:.25rem;font-size:.7rem;color:#94a3b8}.notification-actions{display:flex;gap:.5rem;align-items:flex-start}.action-btn-small{background:#f1f5f9;border:none;padding:.5rem;border-radius:.5rem;cursor:pointer;color:#64748b;transition:all .2s}.action-btn-small:hover{background:#e2e8f0;color:#3b82f6}.action-btn-small.delete:hover{background:#fee2e2;color:#ef4444}.empty-notifications{text-align:center;padding:4rem;background:#fff;border-radius:1rem}.empty-icon{width:64px;height:64px;margin:0 auto 1rem;opacity:.3;color:#64748b}.enable-notifications-btn{margin-top:1rem;padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:.75rem;font-size:.75rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem}.live-meeting-modern{min-height:100vh;padding:2rem;position:relative;background:radial-gradient(circle at 0% 0%,#f8fafc,#e2e8f0)}.live-meeting-bg{position:fixed;inset:0;background:radial-gradient(circle at 70% 30%,rgba(139,92,246,.05) 0%,transparent 70%);pointer-events:none}.meeting-header-modern{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.header-left{display:flex;align-items:center;gap:1rem}.header-icon{width:48px;height:48px;color:#8b5cf6;background:#8b5cf61a;padding:10px;border-radius:1rem}.meeting-header-modern h1{font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,#0f172a,#334155);-webkit-background-clip:text;background-clip:text;color:transparent}.meeting-header-modern p{color:#64748b;font-size:.875rem}.header-stats{display:flex;gap:1.5rem}.header-stats .stat-item{text-align:center}.stat-number{display:block;font-size:1.5rem;font-weight:800;color:#0f172a}.stat-label{font-size:.7rem;color:#64748b}.meeting-tabs{display:inline-flex;flex-direction:row;gap:.35rem;margin-bottom:1rem;background:#fff;padding:.35rem;border-radius:1rem;border:1px solid #e2e8f0;width:100%;max-width:100%}.meeting-tabs .tab-btn{flex:1;justify-content:center;padding:.5rem .75rem;font-size:.75rem}.tab-btn{padding:.5rem 1rem;border:none;background:transparent;border-radius:.75rem;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem;color:#64748b}.tab-btn.active{background:var(--primary-color, #0d9488);color:#fff}.tab-btn:hover:not(.active){background:#f1f5f9;color:#1e293b}.upcoming-calls-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}@media(min-width:900px){.upcoming-calls-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}}.call-card{background:#fff;border-radius:1.25rem;padding:1.25rem;transition:all .3s;border:1px solid #e2e8f0}.call-card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -12px #0000001a}.call-card-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.patient-avatar-large{width:64px;height:64px;border-radius:1rem;overflow:hidden;background:linear-gradient(135deg,#3b82f6,#8b5cf6);display:flex;align-items:center;justify-content:center}.avatar-placeholder{display:flex;align-items:center;justify-content:center;color:#fff}.call-info{flex:1}.call-info h3{font-size:1rem;font-weight:700;color:#0f172a;margin-bottom:.5rem}.call-details{display:flex;gap:.75rem}.detail{display:flex;align-items:center;gap:.25rem;font-size:.7rem;color:#64748b}.call-card-body{margin-bottom:1rem;padding:.75rem;background:#f8fafc;border-radius:.75rem}.reason{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#64748b;margin-bottom:.5rem}.queue-info{font-size:.7rem;font-weight:600;color:#3b82f6}.call-card-actions{display:flex;gap:.75rem}.start-call-btn{flex:1;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:.625rem;border-radius:.75rem;font-size:.75rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;transition:all .2s}.start-call-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #10b9814d}.reschedule-btn{flex:1;background:#f1f5f9;color:#64748b;border:none;padding:.625rem;border-radius:.75rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.reschedule-btn:hover{background:#e2e8f0;color:#1e293b}.call-history-list{background:#fff;border-radius:1.25rem;padding:1.5rem;overflow-x:auto}.history-table{width:100%;border-collapse:collapse}.history-table th{text-align:left;padding:1rem;font-size:.75rem;font-weight:700;text-transform:uppercase;color:#64748b;border-bottom:1px solid #e2e8f0}.history-table td{padding:1rem;font-size:.875rem;color:#1e293b;border-bottom:1px solid #f1f5f9}.history-table tr:hover{background:#f8fafc}.patient-cell{display:flex;align-items:center;gap:.5rem}.small-avatar{width:32px;height:32px;background:#f1f5f9;border-radius:.5rem;display:flex;align-items:center;justify-content:center;color:#64748b}.view-details-btn{background:#3b82f6;color:#fff;border:none;padding:.25rem .75rem;border-radius:.5rem;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s}.view-details-btn:hover{background:#2563eb}.empty-calls{text-align:center;padding:4rem}.empty-calls .empty-icon{width:64px;height:64px;margin:0 auto 1rem;opacity:.3}.video-meeting-room{position:fixed;inset:0;background:#0f172a;z-index:1000;display:flex;flex-direction:column}.meeting-header{background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:10}.back-btn{background:#ffffff1a;border:none;padding:.5rem;border-radius:.5rem;cursor:pointer;color:#fff;transition:all .2s}.back-btn:hover{background:#fff3}.meeting-info h3{color:#fff;font-size:1rem;margin-bottom:.25rem}.meeting-duration{display:flex;align-items:center;gap:.5rem;color:#94a3b8;font-size:.75rem}.connection-quality{display:flex;align-items:center;gap:.5rem;font-size:.75rem;padding:.25rem .75rem;border-radius:2rem}.connection-quality.good{background:#10b98133;color:#10b981}.connection-quality.poor{background:#f59e0b33;color:#f59e0b}.quality-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.video-grid{flex:1;display:grid;grid-template-columns:2fr 1fr;gap:1rem;padding:1rem;position:relative}.video-panel{background:#1e293b;border-radius:1rem;overflow:hidden;position:relative;min-height:300px}.main-video{grid-row:span 2}.video-element{width:100%;height:100%;object-fit:cover}.video-element.hidden{display:none}.video-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#334155;color:#94a3b8}.placeholder-icon{width:48px;height:48px;margin-bottom:1rem}.video-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);padding:1rem;display:flex;justify-content:space-between;align-items:center}.participant-name{display:flex;align-items:center;gap:.5rem;color:#fff;font-size:.75rem}.video-controls-indicators{display:flex;gap:.5rem}.indicator-icon{width:16px;height:16px}.indicator-icon.muted{color:#ef4444}.indicator-icon.sharing{color:#10b981}.indicator-icon.hand-raised{color:#fbbf24}.screen-share{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1e293b}.screen-share-content{text-align:center;color:#94a3b8;margin-bottom:1rem}.screen-share-icon{width:48px;height:48px;margin-bottom:1rem}.stop-share-btn{background:#ef4444;color:#fff;border:none;padding:.5rem 1rem;border-radius:.5rem;font-size:.75rem;cursor:pointer}.participants-sidebar{background:#1e293b;border-radius:1rem;padding:1rem}.participants-header{display:flex;align-items:center;gap:.5rem;color:#fff;font-size:.875rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #334155}.participants-list{display:flex;flex-direction:column;gap:.75rem}.participant-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:#334155;border-radius:.75rem}.participant-avatar{font-size:1.25rem}.participant-info{flex:1}.participant-name{display:block;color:#fff;font-size:.75rem;margin-bottom:.25rem}.participant-role{font-size:.6rem;color:#94a3b8}.participant-status{display:flex;gap:.5rem}.status-icon{width:14px;height:14px;color:#10b981}.status-icon.off{color:#ef4444}.chat-sidebar{position:absolute;right:0;top:0;bottom:0;width:320px;background:#fff;display:flex;flex-direction:column;z-index:20;box-shadow:-4px 0 20px #0000001a}.chat-header{display:flex;align-items:center;gap:.5rem;padding:1rem;border-bottom:1px solid #e2e8f0;font-weight:600}.close-chat{margin-left:auto;background:none;border:none;cursor:pointer;color:#64748b}.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.chat-message{padding:.5rem;border-radius:.5rem;max-width:85%}.chat-message.doctor{background:#3b82f6;color:#fff;align-self:flex-end}.chat-message.patient{background:#f1f5f9;color:#1e293b;align-self:flex-start}.chat-message.system{background:#fef3c7;color:#92400e;text-align:center}.chat-message.reaction{background:transparent;font-size:1.5rem;text-align:center}.message-sender{font-size:.6rem;opacity:.8;margin-bottom:.25rem}.message-text{font-size:.8rem}.message-time{font-size:.6rem;opacity:.6;margin-top:.25rem}.chat-input-area{display:flex;gap:.5rem;padding:1rem;border-top:1px solid #e2e8f0}.chat-input-area input{flex:1;padding:.5rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.8rem}.emoji-btn,.send-btn{background:#f1f5f9;border:none;padding:.5rem;border-radius:.5rem;cursor:pointer}.reaction-picker{position:absolute;bottom:70px;left:10px;background:#fff;border-radius:2rem;padding:.5rem;display:flex;gap:.5rem;box-shadow:0 4px 12px #0000001a}.reaction-picker button{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.25rem;transition:transform .2s}.reaction-picker button:hover{transform:scale(1.2)}.control-bar{background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 2rem;display:flex;justify-content:center;gap:2rem;position:relative;z-index:10}.control-group{display:flex;gap:1rem}.control-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;background:#ffffff1a;border:none;padding:.5rem 1rem;border-radius:.75rem;color:#fff;font-size:.7rem;cursor:pointer;transition:all .2s}.control-btn:hover{background:#fff3}.control-btn.active{background:#3b82f6}.control-btn.end-call{background:#ef4444}.control-btn.end-call:hover{background:#dc2626}.rotate-135{transform:rotate(135deg)}@media(max-width:1024px){.video-grid{grid-template-columns:1fr}.main-video{grid-row:auto}.participants-sidebar{display:none}}@media(max-width:768px){.notifications-modern,.live-meeting-modern{padding:1rem}.notification-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.stat-card-mini{padding:.625rem .5rem;gap:.5rem}.stat-card-mini .notif-stat-value{font-size:1rem}.upcoming-calls-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}.control-bar{gap:.5rem}.control-btn span{display:none}.control-btn{padding:.5rem}}.doctor-appointments-modern{min-height:100%;padding:1rem 1rem 6rem;background:linear-gradient(180deg,#f8fafc,#f1f5f9)}.doctor-appt-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 1px 3px #0f172a0f,0 8px 24px #0f172a0a;overflow:hidden}.doctor-appt-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.doctor-appt-table{width:100%;min-width:720px;border-collapse:collapse;font-size:.875rem}.doctor-appt-table thead{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-bottom:2px solid #e2e8f0}.doctor-appt-table th{padding:.875rem 1rem;text-align:left;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b;white-space:nowrap}.doctor-appt-table th.col-queue{width:72px;text-align:center}.doctor-appt-table th.col-actions{width:1%;text-align:right}.doctor-appt-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background .15s ease}.doctor-appt-table tbody tr:last-child{border-bottom:none}.doctor-appt-table tbody tr:hover{background:#f8fafc}.doctor-appt-table td{padding:.875rem 1rem;vertical-align:middle;color:#334155}.doctor-appt-table td.col-queue{text-align:center}.doctor-appt-table td.col-actions{text-align:right}.doctor-appt-queue{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;padding:0 .5rem;border-radius:.625rem;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;font-weight:800;font-size:.8125rem;font-variant-numeric:tabular-nums}.doctor-appt-patient{display:flex;align-items:center;gap:.75rem;min-width:0}.doctor-appt-avatar{width:2.25rem;height:2.25rem;border-radius:.625rem;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.doctor-appt-avatar img{width:100%;height:100%;object-fit:cover}.doctor-appt-patient-text{min-width:0}.doctor-appt-patient-name{display:block;font-weight:600;color:#0f172a;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doctor-appt-patient-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-top:.15rem;font-size:.75rem;color:#64748b}.doctor-appt-meta-dot{width:3px;height:3px;border-radius:50%;background:#cbd5e1}.doctor-appt-reason{max-width:280px;line-height:1.45;color:#475569;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.doctor-appt-reason-empty{color:#94a3b8;font-style:italic}.doctor-appt-status{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .625rem;border-radius:999px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.doctor-appt-actions{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:.375rem}.doctor-appt-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.4rem .75rem;border-radius:.5rem;border:1px solid transparent;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.doctor-appt-btn:disabled{opacity:.55;cursor:not-allowed}.doctor-appt-btn svg{width:1rem;height:1rem;flex-shrink:0}.doctor-appt-btn-primary{background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;box-shadow:0 2px 8px #2563eb40}.doctor-appt-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #2563eb59}.doctor-appt-btn-video{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;box-shadow:0 2px 8px #7c3aed40}.doctor-appt-btn-video:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #7c3aed59}.doctor-appt-btn-outline{background:#fff;border-color:#e2e8f0;color:#475569}.doctor-appt-btn-outline:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.doctor-appt-btn-danger{background:#fff;border-color:#fecaca;color:#dc2626}.doctor-appt-btn-danger:hover:not(:disabled){background:#fef2f2;border-color:#fca5a5}.doctor-appt-table-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;background:#f8fafc;border-top:1px solid #e2e8f0;font-size:.8125rem;color:#64748b}.doctor-appt-table-footer strong{color:#0f172a}@media(max-width:900px){.doctor-appt-btn-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.doctor-appt-btn{padding:.45rem}}@media(max-width:640px){.doctor-appointments-modern{padding:.75rem .75rem 6rem}.doctor-appt-table th,.doctor-appt-table td{padding:.75rem .625rem}}.doctor-profile-page{--dp-bg: var(--background, #f8fafc);--dp-surface: var(--surface, #ffffff);--dp-border: var(--border, #e2e8f0);--dp-text: var(--text-primary, #0f172a);--dp-muted: var(--text-secondary, #64748b);--dp-primary: var(--primary-color, #0d9488);max-width:880px;margin:0 auto;padding:1.25rem 1rem 5rem;min-height:100%}.dark-theme .doctor-profile-page{--dp-bg: var(--background, #0f172a);--dp-surface: var(--surface, #1e293b);--dp-border: var(--border, #334155)}.doctor-profile-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.doctor-profile-back{background:none;border:none;color:var(--dp-muted);font-size:.875rem;cursor:pointer;padding:0;margin-bottom:.35rem}.doctor-profile-back:hover{color:var(--dp-primary)}.doctor-profile-top h1{font-size:1.75rem;font-weight:800;color:var(--dp-text);margin:0 0 .25rem}.doctor-profile-top p{color:var(--dp-muted);font-size:.9rem;margin:0}.doctor-profile-edit-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.125rem;border-radius:.75rem;border:1px solid var(--dp-border);background:var(--dp-surface);color:var(--dp-text);font-weight:600;font-size:.875rem;cursor:pointer;transition:border-color .2s,box-shadow .2s}.doctor-profile-edit-btn:hover{border-color:var(--dp-primary);box-shadow:0 4px 12px #0d948826}.doctor-profile-alert{padding:.75rem 1rem;border-radius:.75rem;margin-bottom:1rem;font-size:.875rem}.doctor-profile-alert--error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.doctor-profile-alert--success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.doctor-profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1rem;color:var(--dp-muted)}.doctor-profile-spinner{width:40px;height:40px;border:3px solid var(--dp-border);border-top-color:var(--dp-primary);border-radius:50%;animation:doctor-profile-spin .8s linear infinite;margin-bottom:.75rem}@keyframes doctor-profile-spin{to{transform:rotate(360deg)}}.doctor-profile-hero{display:flex;flex-wrap:wrap;align-items:center;gap:2rem;padding:2rem;margin-bottom:1.5rem;border-radius:1.25rem;background:linear-gradient(135deg,#0d94881f,#3b82f614);border:1px solid rgba(13,148,136,.2)}.dark-theme .doctor-profile-hero{background:linear-gradient(135deg,#0d948833,#1e293bcc);border-color:#334155cc}.doctor-profile-hero-info h2{font-size:1.5rem;font-weight:800;color:var(--dp-text);margin:.5rem 0 .25rem}.doctor-profile-hero-info>p{color:var(--dp-muted);font-size:.9rem;margin:0}.doctor-profile-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:700;background:var(--primary-bg, #f0fdfa);color:var(--dp-primary)}.doctor-verified-badge{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600;background:#dcfce7;color:#16a34a}.doctor-profile-specialty{margin-top:.5rem!important;font-weight:600;color:var(--dp-primary)!important}.doctor-profile-card{background:var(--dp-surface);border:1px solid var(--dp-border);border-radius:1rem;padding:1.5rem;margin-bottom:1.25rem}.doctor-profile-card h3{font-size:1rem;font-weight:700;color:var(--dp-text);margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--dp-border)}.doctor-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.doctor-info-item{display:flex;gap:.75rem;align-items:flex-start;padding:1rem;border-radius:.75rem;background:var(--dp-bg);border:1px solid var(--dp-border)}.doctor-info-item svg{color:var(--dp-primary);flex-shrink:0;margin-top:2px}.doctor-info-item span{display:block;font-size:.75rem;font-weight:600;color:var(--dp-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.25rem}.doctor-info-item strong{font-size:.9375rem;font-weight:600;color:var(--dp-text);word-break:break-word}.doctor-info-item--full{grid-column:span 2}.doctor-bio-text{display:block;white-space:pre-wrap;line-height:1.55;font-weight:500!important}.doctor-lang-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.doctor-lang-tag{background:#0d94881a;color:var(--dp-primary);font-size:.75rem;font-weight:600;padding:.25rem .625rem;border-radius:999px}.doctor-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.doctor-form-group{display:flex;flex-direction:column;gap:.375rem}.doctor-form-group--full{grid-column:span 2}.doctor-form-group label{font-size:.8125rem;font-weight:600;color:var(--dp-muted)}.doctor-form-group input,.doctor-form-group select,.doctor-form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid var(--dp-border);border-radius:.625rem;font-size:.9375rem;color:var(--dp-text);background:var(--dp-bg);transition:border-color .2s,box-shadow .2s}.doctor-form-group input:focus,.doctor-form-group select:focus,.doctor-form-group textarea:focus{outline:none;border-color:var(--dp-primary);box-shadow:0 0 0 3px #0d948826}.doctor-form-group textarea{resize:vertical;min-height:100px}.doctor-form-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:.5rem}.doctor-btn{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;border-radius:.75rem;font-size:.875rem;font-weight:600;cursor:pointer;border:none;transition:background .2s,opacity .2s}.doctor-btn:disabled{opacity:.6;cursor:not-allowed}.doctor-btn--primary{background:var(--dp-primary);color:#fff}.doctor-btn--primary:hover:not(:disabled){background:var(--primary-dark, #0f766e)}.doctor-btn--secondary{background:var(--dp-bg);color:var(--dp-text);border:1px solid var(--dp-border)}.doctor-btn--secondary:hover:not(:disabled){background:var(--dp-border)}@media(max-width:640px){.doctor-profile-hero{flex-direction:column;text-align:center;padding:1.5rem}.doctor-info-grid,.doctor-form-grid{grid-template-columns:1fr}.doctor-info-item--full,.doctor-form-group--full{grid-column:span 1}.doctor-profile-top{flex-direction:column}.doctor-profile-edit-btn{width:100%;justify-content:center}.doctor-form-actions{flex-direction:column-reverse}.doctor-form-actions .doctor-btn{width:100%}}.patient-main .notifications-modern{min-height:auto;padding:0;max-width:920px;margin:0 auto;width:100%;background:transparent}.patient-main .notifications-bg{display:none}.patient-main .notifications-header-modern .header-info h1{font-size:clamp(1rem,4vw,1.35rem)}.patient-main .notifications-header-modern .header-info p{display:none}@media(min-width:480px){.patient-main .notifications-header-modern .header-info p{display:block;font-size:.75rem}}.patient-main .notification-stats-grid{margin-bottom:1rem}.patient-main .stat-card-mini .stat-label{font-size:.625rem}.patient-main .notification-card-modern{border-radius:.875rem}:root{--color-primary: #0d9488;--color-primary-light: #14b8a6;--color-bg: #f8fafc;--color-text: #0f172a;--color-muted: #64748b;--color-border: #e2e8f0;--radius: 12px}.doctors-page{padding:32px 24px;max-width:1200px;margin:0 auto;background:var(--color-bg);min-height:100vh}.doctors-header h1{margin:0;font-size:36px;font-weight:700;color:var(--color-text)}.doctors-header p{margin-top:8px;color:var(--color-muted);font-size:16px}.doctors-search{margin:24px 0 32px;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);padding:14px 16px;box-shadow:0 2px 6px #0000000d;transition:border-color .2s ease,box-shadow .2s ease}.doctors-search:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #0d948826}.doctors-search input{width:100%;border:none;outline:none;font-size:15px;color:var(--color-text);background:transparent}.doctors-error{color:#dc2626;margin-bottom:14px;font-weight:500}.doctors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.doctor-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:16px;transition:transform .25s ease,box-shadow .25s ease}.doctor-card-top{display:flex;gap:16px}.doctor-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.doctor-type-chip{font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.doctor-type-chip.independent{background:#ecfdf5;color:#047857}.doctor-type-chip.hospital{background:#eff6ff;color:#1d4ed8}.doctor-specialty{margin:4px 0 8px;color:#334155;font-size:14px;font-weight:500}.doctor-bio-preview{margin:0 0 10px;color:var(--color-muted);font-size:13px;line-height:1.5}.doctor-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--color-border)}.consultant-fees{display:flex;flex-direction:column;gap:2px}.consultant-fees span{font-size:12px;color:var(--color-muted)}.consultant-fees strong{font-size:15px;color:var(--color-text)}.book-doctor-btn{display:inline-flex;align-items:center;gap:6px;border:none;background:var(--color-primary);color:#fff}.book-doctor-btn:hover{background:var(--color-primary-light);color:#fff}.empty-card{grid-column:1 / -1}.doctor-card:hover{transform:translateY(-6px);box-shadow:0 10px 24px #00000014}.doctor-avatar{width:64px;height:64px;border-radius:50%;position:relative;flex-shrink:0;overflow:hidden}.doctor-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.avatar-fallback{position:absolute;inset:0;display:grid;place-items:center;background:#ecfeff;color:var(--color-primary);font-size:22px;border-radius:50%}.doctor-meta h3{margin:0;font-size:18px;font-weight:600;color:var(--color-text)}.doctor-meta p{margin:6px 0 12px;color:#334155;font-size:14px}.doctor-extra{display:flex;flex-direction:column;gap:6px;color:var(--color-muted);font-size:13px}.doctor-extra span{display:inline-flex;align-items:center;gap:6px}.doctor-languages{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.language-badge{background:#f1f5f9;color:#475569;padding:3px 8px;border-radius:6px;font-size:12px;font-weight:500}.language-badge.more{background:#e2e8f0}.doctor-rating{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:13px;color:#f59e0b}.review-count{color:var(--color-muted)}.btn{margin-top:12px;padding:8px 14px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-outline{border:1px solid var(--color-primary);background:transparent;color:var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:#fff}.btn-small{padding:6px 12px;font-size:13px}.doctors-pagination{display:flex;justify-content:center;margin-top:32px;gap:8px}.app-container{display:flex;min-height:100vh}.main-content{flex:1;padding:20px;margin-left:250px;margin-top:60px}.page-title{font-size:28px;font-weight:600;color:var(--text-primary)}.page-subtitle{color:var(--text-secondary);margin-top:4px}.card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a;margin-bottom:16px}.form-label{display:block;font-size:14px;font-weight:500;margin-bottom:6px;color:var(--text-primary)}.search-container{margin-bottom:24px}.search-input{max-width:400px}.hospitals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.hospital-card{text-align:center}.hospital-icon{font-size:48px;margin-bottom:12px}.hospital-name{font-size:18px;font-weight:600;margin-bottom:8px}.hospital-location{color:var(--text-secondary);margin-bottom:8px}.hospital-description{margin-bottom:16px;color:var(--text-secondary)}.empty-state{text-align:center;padding:40px;color:var(--text-secondary)}.badge-pending{background-color:#fef3c7;color:#92400e}.badge-confirmed{background-color:#d1fae5;color:#065f46}.badge-completed{background-color:#dbeafe;color:#1e40af}.badge-cancelled{background-color:#fee2e2;color:#991b1b}.loading-container{display:flex;justify-content:center;align-items:center;min-height:400px}.spinner{width:40px;height:40px;border:4px solid var(--border);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@media(max-width:768px){.main-content{margin-left:0;padding:16px}.hospitals-grid{grid-template-columns:1fr}}:root{--primary-color: #0D9488;--primary-light: #14B8A6;--primary-dark: #0F766E;--primary-bg: #F0FDFA;--secondary-color: #3B82F6;--secondary-light: #60A5FA;--secondary-dark: #2563EB;--brand-secondary: #2563EB;--brand-gradient: linear-gradient(145deg, #0d9488 0%, #0e7490 42%, #1d4ed8 100%);--brand-gradient-soft: linear-gradient(135deg, #0d9488 0%, #0f766e 50%, #134e4a 100%);--brand-gradient-shadow: 0 10px 28px rgba(13, 148, 136, .28);--glass-header-bg: rgba(255, 255, 255, .9);--glass-nav-bg: rgba(255, 255, 255, .95);--surface-hover: #F1F5F9;--panel-radius: 14px;--panel-max-width: 920px;--white: #FFFFFF;--background: #F8FAFC;--surface: #FFFFFF;--border: #E2E8F0;--border-light: #F1F5F9;--text-primary: #1E293B;--text-secondary: #64748B;--text-muted: #94A3B8;--text-light: #CBD5E1;--success: #10B981;--warning: #F59E0B;--error: #EF4444;--info: #3B82F6;--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);--radius-sm: 4px;--radius: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--transition: all .2s ease;--transition-fast: all .15s ease;--transition-slow: all .3s ease;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-mono: "JetBrains Mono", monospace;--sidebar-width: 260px;--header-height: 64px;--nav-height: 70px}.dark-theme{--primary-color: #14B8A6;--primary-light: #2DD4BF;--primary-dark: #0D9488;--primary-bg: #134E4A;--secondary-color: #60A5FA;--secondary-light: #93C5FD;--secondary-dark: #3B82F6;--brand-secondary: #3B82F6;--white: #F1F5F9;--background: #0F172A;--surface: #1E293B;--border: #334155;--border-light: #1E293B;--surface-hover: #334155;--text-primary: #F8FAFC;--text-secondary: #94A3B8;--text-muted: #64748B;--text-light: #475569;--success: #34D399;--warning: #FBBF24;--error: #F87171;--info: #60A5FA;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow: 0 1px 3px 0 rgb(0 0 0 / .3), 0 1px 2px -1px rgb(0 0 0 / .3);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .3), 0 2px 4px -2px rgb(0 0 0 / .3);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .3), 0 4px 6px -4px rgb(0 0 0 / .3);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .4), 0 8px 10px -6px rgb(0 0 0 / .4);--brand-gradient: linear-gradient(145deg, #0f766e 0%, #0e7490 38%, #1e40af 100%);--brand-gradient-soft: linear-gradient(135deg, #134e4a 0%, #0f766e 50%, #0f172a 100%);--brand-gradient-shadow: 0 10px 28px rgba(0, 0, 0, .35);--glass-header-bg: rgba(30, 41, 59, .92);--glass-nav-bg: rgba(30, 41, 59, .96)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--background);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--text-primary)}h1{font-size:2.25rem}h2{font-size:1.875rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p{color:var(--text-secondary);margin-bottom:var(--space-4)}a{color:var(--primary-color);text-decoration:none;transition:var(--transition)}a:hover{color:var(--primary-dark)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--space-4)}.card{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:var(--space-5);border:1px solid var(--border-light);transition:var(--transition)}.card:hover{box-shadow:var(--shadow-md)}.card-elevated{box-shadow:var(--shadow-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-size:.9375rem;font-weight:500;border-radius:var(--radius);border:none;cursor:pointer;transition:var(--transition);text-decoration:none}.btn-primary{background:var(--primary-color);color:var(--white)}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--secondary-color);color:var(--white)}.btn-secondary:hover{background:var(--secondary-dark)}.btn-outline{background:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover{background:var(--primary-color);color:var(--white)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--border-light);color:var(--text-primary)}.btn-block{width:100%}.btn-lg{padding:var(--space-4) var(--space-6);font-size:1rem}.btn-sm{padding:var(--space-2) var(--space-4);font-size:.875rem}.form-group{margin-bottom:var(--space-5)}.form-label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary);margin-bottom:var(--space-2)}.form-input{width:100%;padding:var(--space-3) var(--space-4);font-size:1rem;border:2px solid var(--border);border-radius:var(--radius);background:var(--white);color:var(--text-primary);transition:var(--transition)}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0d94881a}.form-input::placeholder{color:var(--text-muted)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--border-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--text-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fadeIn{animation:fadeIn .3s ease-out}.animate-slideUp{animation:slideUp .4s ease-out}.grid{display:grid;gap:var(--space-5)}@media(max-width:1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--text-muted)}.text-primary{color:var(--primary-color)}.text-success{color:var(--success)}.text-error{color:var(--error)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);font-size:.75rem;font-weight:500;border-radius:var(--radius-full);background:var(--primary-bg);color:var(--primary-color)}.badge-success{background:#d1fae5;color:#065f46}.badge-warning{background:#fef3c7;color:#92400e}.badge-error{background:#fee2e2;color:#991b1b}.scroll-container{display:flex;gap:var(--space-4);overflow-x:auto;padding:var(--space-2) 0;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.scroll-container::-webkit-scrollbar{display:none}.scroll-item{flex:0 0 auto;scroll-snap-align:start}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);text-align:center}.empty-state svg{width:80px;height:80px;color:var(--text-light);margin-bottom:var(--space-4)}.empty-state h3{margin-bottom:var(--space-2)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary-color);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.avatar{width:40px;height:40px;border-radius:var(--radius-full);background:var(--primary-bg);color:var(--primary-color);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem}.avatar-lg{width:64px;height:64px;font-size:1.5rem}.avatar-sm{width:32px;height:32px;font-size:.875rem}.divider{height:1px;background:var(--border);margin:var(--space-5) 0}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-online{background:var(--success)}.status-offline{background:var(--text-muted)}.status-busy{background:var(--error)}.rating{display:flex;gap:2px;color:#fbbf24}.rating-empty{color:var(--border)}.patient-layout,.doctor-layout{font-family:var(--font-sans)}.patient-layout{--patient-primary: var(--primary-color);--patient-primary-light: var(--primary-light);--patient-primary-dark: var(--primary-dark);--patient-secondary: var(--brand-secondary);--patient-accent: #8b5cf6;--patient-success: var(--success);--patient-warning: var(--warning);--patient-error: var(--error);--patient-bg: var(--background);--patient-surface: var(--surface);--patient-surface-hover: var(--surface-hover);--patient-border: var(--border);--patient-text: var(--text-primary);--patient-text-secondary: var(--text-secondary);--patient-text-muted: var(--text-muted);--patient-shadow: var(--shadow);--patient-shadow-md: var(--shadow-md);--patient-shadow-lg: var(--shadow-lg);--patient-radius: var(--panel-radius);--patient-radius-sm: var(--radius);--patient-radius-full: var(--radius-full)}.doctor-layout{--doctor-primary: var(--primary-color);--doctor-primary-light: var(--primary-light);--doctor-primary-dark: var(--primary-dark);--doctor-secondary: var(--brand-secondary);--doctor-accent: #8b5cf6;--doctor-success: var(--success);--doctor-warning: var(--warning);--doctor-error: var(--error);--doctor-bg: var(--background);--doctor-surface: var(--surface);--doctor-surface-hover: var(--surface-hover);--doctor-border: var(--border);--doctor-text: var(--text-primary);--doctor-text-secondary: var(--text-secondary);--doctor-text-muted: var(--text-muted);--doctor-shadow: var(--shadow);--doctor-shadow-md: var(--shadow-md);--doctor-shadow-lg: var(--shadow-lg);--doctor-radius: var(--panel-radius);--doctor-radius-sm: var(--radius);--doctor-radius-full: var(--radius-full)}.pd-hero,.pa-hero,.wallet-hero,.patient-dashboard .pd-hero,.patient-appointments .pa-hero,.wallet-page .wallet-hero{background:var(--brand-gradient);box-shadow:var(--brand-gradient-shadow)}.patient-main .patient-dashboard,.patient-main .patient-appointments,.patient-main .wallet-page,.patient-main .hospitals-page,.patient-main .doctors-page,.patient-main .notifications-modern{max-width:var(--panel-max-width);margin-left:auto;margin-right:auto}.dark-theme .patient-dashboard,.dark-theme .patient-appointments,.dark-theme .wallet-page{color:var(--text-primary)}.dark-theme .pd-stat-card,.dark-theme .pd-wallet-banner,.dark-theme .pd-visit-card,.dark-theme .pd-quick-tile,.dark-theme .pd-alert,.dark-theme .pa-summary__card,.dark-theme .pa-card,.dark-theme .pa-empty,.dark-theme .wallet-page .action-card,.dark-theme .wallet-page .recent-transactions,.dark-theme .wallet-page .deposit-form{background:var(--surface);border-color:var(--border);color:var(--text-primary)}.dark-theme .pd-stat-card__label,.dark-theme .pd-block__title,.dark-theme .pa-card__meta,.dark-theme .pa-summary__label,.dark-theme .pa-empty__text,.dark-theme .wallet-page .action-description,.dark-theme .wallet-page .transaction-meta{color:var(--text-secondary)}.dark-theme .pd-wallet-banner__text span,.dark-theme .pd-visit-card__meta{color:var(--text-muted)}.dark-theme .pa-badge--pending{background:#f59e0b26;color:#fbbf24}.dark-theme .pa-badge--confirmed,.dark-theme .pa-badge--approved{background:#10b98126;color:#34d399}.dark-theme .pa-badge--completed{background:#6366f126;color:#a5b4fc}.dark-theme .pa-badge--cancelled,.dark-theme .pa-badge--rejected{background:#ef444426;color:#f87171}.dark-theme .pa-card__btn{background:var(--surface);border-color:var(--border);color:var(--primary-color)}.dark-theme .pa-card__btn--primary{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.dark-theme .hospitals-page{--primary: var(--primary-color);--primary-dark: var(--primary-dark);--primary-light: var(--primary-light);--secondary: var(--brand-secondary);--gray-50: var(--background);--gray-100: var(--surface);--gray-200: var(--border);--gray-700: var(--text-secondary);--gray-800: var(--text-primary);--gray-900: var(--text-primary);color:var(--text-primary)}.dark-theme .hospitals-page .hospital-card,.dark-theme .hospitals-page .filter-panel,.dark-theme .hospitals-page .advanced-filters,.dark-theme .hospitals-page .search-box,.dark-theme .hospitals-page .glass-card{background:var(--surface);border-color:var(--border);color:var(--text-primary)}.dark-theme .hospitals-page .hospital-card h3,.dark-theme .hospitals-page .section-title,.dark-theme .wallet-page .action-title,.dark-theme .wallet-page .transaction-type,.dark-theme .wallet-page .deposit-form h3,.dark-theme .wallet-page .transactions-header h3,.dark-theme .wallet-page .form-label{color:var(--text-primary)}.dark-theme .wallet-page .form-input{background:var(--background);border-color:var(--border);color:var(--text-primary)}.dark-theme .hospitals-page .results-info h2,.dark-theme .hospitals-page .hospital-name,.dark-theme .hospitals-page .empty-state h3,.dark-theme .hospitals-page .rating-value{color:var(--text-primary)}.dark-theme .hospitals-page .results-info p,.dark-theme .hospitals-page .hospital-description,.dark-theme .hospitals-page .meta-item,.dark-theme .hospitals-page .rating-count{color:var(--text-secondary)}.dark-theme .hospitals-page .sort-select{background:var(--background);border-color:var(--border);color:var(--text-primary)}.dark-theme .doctors-page{--color-primary: var(--primary-color);--color-primary-light: var(--primary-light);--color-bg: var(--background);--color-text: var(--text-primary);--color-muted: var(--text-secondary);--color-border: var(--border)}.dark-theme .doctors-page .doctor-card,.dark-theme .doctors-page .doctors-search,.dark-theme .doctors-page .filters-bar{background:var(--surface);border-color:var(--border);color:var(--text-primary)}.dark-theme .doctors-page .doctor-specialty,.dark-theme .doctors-page .doctor-extra{color:var(--text-secondary)}.dark-theme .book-appointment-page .container,.dark-theme .patient-main .card,.dark-theme .patient-main .appointment-card{background:var(--surface);border:1px solid var(--border);color:var(--text-primary)}.dark-theme .book-appointment-page h1,.dark-theme .book-appointment-page label{color:var(--text-primary)}.dark-theme .book-appointment-page .form-input,.dark-theme .book-appointment-page select{background:var(--background);border-color:var(--border);color:var(--text-primary)}.dark-theme .auth-page{background:var(--brand-gradient-soft)}.dark-theme .auth-card{background:var(--surface);color:var(--text-primary)}.dark-theme .auth-card h1,.dark-theme .auth-card h2,.dark-theme .auth-card label{color:var(--text-primary)}.dark-theme .auth-card .form-input{background:var(--background);border-color:var(--border);color:var(--text-primary)}.dark-theme .patient-main .settings-modern{background:transparent;color:var(--text-primary)}.dark-theme .patient-main .settings-content,.dark-theme .patient-main .settings-sidebar,.dark-theme .patient-main .profile-section-card,.dark-theme .patient-main .profile-hero-card{background:var(--surface);border-color:var(--border)}.dark-theme .home-page{--home-primary: var(--primary-color);--home-secondary: var(--brand-secondary)}.patient-bottom-nav .nav-item.active,.doctor-bottom-nav .nav-item.active,.patient-bottom-nav .nav-item.active .nav-icon-wrapper,.doctor-bottom-nav .nav-item.active .nav-icon-wrapper{color:var(--primary-color)}.patient-header,.doctor-header{background:var(--glass-header-bg)}.patient-bottom-nav,.doctor-bottom-nav{background:var(--glass-nav-bg)}body{font-family:Inter,-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(--background);color:var(--text-primary)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--border-light)}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.dark-theme ::-webkit-scrollbar-track{background:var(--background)}.dark-theme ::-webkit-scrollbar-thumb{background:var(--border)}.app-container{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:20px;max-width:1200px;margin:0 auto;width:100%}.card{background:var(--surface);border-radius:8px;box-shadow:var(--shadow);padding:20px;margin-bottom:20px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.card-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.form-group{margin-bottom:16px}.form-label{display:block;margin-bottom:6px;font-weight:500;color:var(--text-primary)}.form-input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:6px;font-size:14px;transition:border-color .2s}.form-input:focus{outline:none;border-color:var(--primary-color)}.badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.badge-pending{background-color:#fff3e0;color:#e65100}.badge-confirmed{background-color:#e3f2fd;color:#1565c0}.badge-completed{background-color:#e8f5e9;color:#2e7d32}.badge-cancelled{background-color:#ffebee;color:#c62828}.badge-paid{background-color:#e8f5e9;color:#2e7d32}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.loading-container{display:flex;justify-content:center;align-items:center;min-height:200px}.error-message{color:var(--error);font-size:14px;margin-top:4px}.success-message{color:var(--success);font-size:14px;margin-top:4px}.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary)}.empty-state-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state-title{font-size:18px;font-weight:600;margin-bottom:8px}.empty-state-description{font-size:14px}.page-header{margin-bottom:24px}.page-title{font-size:24px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.page-subtitle{font-size:14px;color:var(--text-secondary)}.table-container{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border)}.table th{font-weight:600;color:var(--text-secondary);background-color:#fafafa}.table tr:hover{background-color:#f5f5f5}@media(max-width:600px){.main-content{padding:12px}.card{padding:16px}}
