@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Poppins:wght@500;600;700&display=swap";:root{font-family:Poppins,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.4;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f6f7fb;color:#1f2937}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select{font:inherit}a{color:inherit}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh;background:#f6f7fb;color:#1f2937}.sidebar{display:flex;flex-direction:column;gap:2rem;padding:2.5rem 1.75rem;background:#fff;border-right:1px solid #eef0f6;box-shadow:4px 0 20px #0f172a0a;position:relative;z-index:20;transition:transform .3s ease}.sidebar.open{transform:none}.brand{display:flex;align-items:center;gap:1rem}.brand-logo{width:44px;height:44px;border-radius:14px;background:linear-gradient(160deg,#2f62ff,#5f80ff);display:grid;place-items:center;font-weight:700;font-size:1.25rem;color:#fff}.brand-text{display:flex;flex-direction:column;line-height:1.2}.brand-name{font-weight:700;font-size:1.1rem}.brand-sub{font-size:.75rem;color:#6b7280}.nav{display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;overflow-x:hidden;flex:1;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.3) transparent;-webkit-overflow-scrolling:touch}.nav::-webkit-scrollbar{width:6px}.nav::-webkit-scrollbar-track{background:transparent}.nav::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:999px}.nav::-webkit-scrollbar-thumb:hover{background:#94a3b880}.nav-item{display:flex;align-items:center;gap:.85rem;border:none;background:transparent;padding:.75rem 1rem;border-radius:12px;font-weight:600;font-size:.95rem;color:#475569;cursor:pointer;transition:all .2s ease;text-align:left}.nav-item:hover{background:#eef2ff;color:#1f2a66}.nav-item.active{background:linear-gradient(135deg,#2f62ff1f,#2f62ff14);color:#1f2a66;box-shadow:inset 0 0 0 1px #2f62ff40}.nav-icon{width:28px;height:28px;border-radius:10px;background:#2f62ff1f;display:grid;place-items:center;color:#2f62ff;font-weight:700;font-size:1rem;flex-shrink:0;transition:all .2s ease}.nav-item:hover .nav-icon{background:#2f62ff33;transform:scale(1.05)}.nav-item.active .nav-icon{background:#2f62ff40;box-shadow:0 2px 8px #2f62ff33}.nav-label-wrapper{display:flex;flex-direction:column;gap:.15rem;flex:1}.nav-label{line-height:1.2}.nav-label-somali{font-size:.75rem;font-weight:400;color:#6b7280;line-height:1.2}.nav-item:hover .nav-label-somali,.nav-item.active .nav-label-somali{color:#4b5563}.sidebar-footer{margin-top:auto}.sidebar-note{font-size:.8rem;color:#94a3b8;line-height:1.5}.app-content{display:grid;grid-template-rows:auto 1fr;overflow:hidden;position:relative;z-index:0}.topbar{display:flex;align-items:center;gap:1.25rem;justify-content:space-between;padding:1.75rem 2rem 1.25rem;background:#fff;border-bottom:1px solid #eef0f6;position:sticky;top:0;z-index:10}.topbar-left{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.menu-toggle{display:none;border:none;background:transparent;font-size:1.6rem;line-height:1;cursor:pointer;color:#1f2937;border-radius:12px;padding:.5rem;transition:background .2s ease,transform .2s ease}.menu-toggle:focus-visible{outline:2px solid rgba(47,98,255,.6);outline-offset:2px}.menu-toggle:active{transform:scale(.94)}.sidebar-backdrop{position:fixed;inset:0;background:#0f172a6b;opacity:0;pointer-events:none;transition:opacity .25s ease;z-index:15;display:none}.search{display:flex;align-items:center;gap:.75rem;width:clamp(220px,45vw,460px);background:#f8f9ff;border-radius:14px;padding:.8rem 1rem;border:1px solid transparent;transition:border .2s ease}.search input{width:100%;background:transparent;border:none;outline:none;font-size:.95rem;color:#1f2937}.search input::placeholder{color:#94a3b8}.search:focus-within{border-color:#2f62ff40;box-shadow:0 0 0 3px #2f62ff14}.search-icon{font-size:1rem}.topbar-actions{display:flex;align-items:center;gap:1rem}.ghost-btn,.primary-btn,.success-btn,.danger-btn{border:none;border-radius:12px;font-size:.9rem;font-weight:600;padding:.75rem 1.3rem;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.ghost-btn{background:#f1f5f9;color:#1f2937}.ghost-btn:hover{transform:translateY(-1px);box-shadow:0 8px 16px #0f172a14}.primary-btn{background:linear-gradient(135deg,#2f62ff,#5f80ff);color:#fff;box-shadow:0 10px 18px #2f62ff40}.primary-btn:hover{transform:translateY(-1px)}.success-btn{background:#10b981;color:#fff}.danger-btn{background:#ef4444;color:#fff}.user-pill{display:flex;align-items:center;gap:.85rem;background:#f8faff;border-radius:16px;padding:.45rem .75rem .45rem .45rem;border:1px solid #e2e8f0}.user-avatar{width:36px;height:36px;border-radius:14px;background:linear-gradient(160deg,#f97316,#fb923c);display:grid;place-items:center;color:#fff;font-weight:700;font-size:.85rem}.user-meta{display:flex;flex-direction:column;line-height:1.2}.user-name{font-weight:600;font-size:.95rem}.user-role{font-size:.75rem;color:#94a3b8}.caret{color:#64748b;font-size:.9rem}.user-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000001a;padding:.5rem;min-width:180px;z-index:1000;border:1px solid #e2e8f0}.user-dropdown button{width:100%;text-align:left;padding:.75rem 1rem;border:none;background:transparent;color:#1e293b;cursor:pointer;border-radius:8px;font-size:.9rem;transition:background .2s ease;display:flex;align-items:center;gap:.5rem}.user-dropdown button:hover{background:#f1f5f9}.user-dropdown .ghost-btn.small{font-size:.85rem;padding:.5rem .75rem}.main{overflow-y:auto;padding:2rem}@media(max-width:1023px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(80vw,320px);max-width:320px;height:100vh;padding:2.25rem 1.5rem 2.5rem;border-right:none;box-shadow:0 18px 40px #0f172a38;overflow-y:auto;transform:translate(-110%)}.sidebar.open{transform:translate(0)}.sidebar.open+.sidebar-backdrop{display:block;opacity:1;pointer-events:auto}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;background:#f1f5f9;padding:.45rem .6rem}.topbar{padding:1.2rem 1.25rem;gap:1rem}.topbar-left{flex:1}.search{width:100%}.topbar-actions{width:100%;justify-content:flex-end;gap:.75rem}.main{padding:1.5rem 1.25rem 3rem}}@media(max-width:768px){.topbar{flex-wrap:wrap}.topbar-actions{order:3;justify-content:space-between}.topbar-actions .ghost-btn,.topbar-actions .primary-btn{flex:1;padding:.65rem .9rem}.topbar-actions .user-pill{width:100%;justify-content:space-between}.section-header{flex-direction:column;align-items:flex-start}.section-actions{width:100%;justify-content:flex-start;gap:.5rem}}@media(min-width:1024px){.sidebar-backdrop{display:none!important;opacity:0!important;pointer-events:none!important}.menu-toggle{display:none}}.section-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.75rem}.section-header h1{font-size:1.8rem;margin:0 0 .4rem}.section-subtitle{color:#94a3b8;font-size:.95rem}.section-actions{display:flex;align-items:center;gap:.75rem}.section-content{display:flex;flex-direction:column;gap:1.5rem}.dashboard-grid{display:grid;gap:1.5rem}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.metric-card{background:#fff;border-radius:18px;padding:1.5rem;box-shadow:0 15px 30px #0f172a14;display:flex;flex-direction:column;gap:.65rem;position:relative;overflow:hidden}.metric-icon{position:absolute;top:1rem;right:1rem;font-size:2rem;opacity:.15;z-index:0}.metric-card .metric-label,.metric-card .metric-value,.metric-card .metric-delta{position:relative;z-index:1}.metric-card.success .metric-delta{color:#10b981}.metric-card.info .metric-delta{color:#3b82f6}.metric-card.primary .metric-delta{color:#8b5cf6}.metric-card.danger .metric-delta{color:#ef4444}.metric-label{font-size:.9rem;color:#6b7280}.metric-value{font-size:1.9rem;font-weight:700}.metric-delta{font-size:.85rem}.panels{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.panel{background:#fff;border-radius:22px;padding:1.75rem;box-shadow:0 18px 36px #0f172a1a;display:flex;flex-direction:column;gap:1.25rem}.panel-header{display:flex;align-items:center;justify-content:space-between}.panel-header h2{margin:0;font-size:1.1rem}.panel-period{font-size:.85rem;color:#94a3b8}.chart-line{background:linear-gradient(135deg,#2f62ff14,#2f62ff00);border-radius:18px;padding:1rem;display:flex;align-items:center;justify-content:center}.chart-line-illustration{width:100%;height:160px;background-image:url("data:image/svg+xml,%3Csvg width='400' height='160' viewBox='0 0 400 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline fill='none' stroke='%232f62ff' stroke-width='6' stroke-linecap='round' stroke-linejoin='round' points='0,120 60,110 110,90 150,100 190,70 240,75 290,50 340,70 380,40'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain}.chart-donut{display:grid;grid-template-columns:140px 1fr;gap:1.2rem;align-items:center}.chart-donut-illustration{width:140px;height:140px;border-radius:50%;background-image:conic-gradient(#2f62ff 0 40%,#8b5cf6 40% 62%,#34d399 62% 80%,#facc15 80% 100%);position:relative}.chart-donut-illustration:after{content:"";position:absolute;inset:28%;background:#fff;border-radius:50%}.chart-donut ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem;font-size:.9rem}.chart-donut li{display:flex;align-items:center;gap:.6rem;color:#475569}.chart-donut strong{margin-left:auto;color:#1f2937}.swatch{width:14px;height:14px;border-radius:4px;display:inline-block}.swatch.pain{background:#2f62ff}.swatch.antibiotics{background:#8b5cf6}.swatch.gastric{background:#34d399}.swatch.other{background:#facc15}.chart-columns{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;align-items:end}.chart-columns-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;font-size:.8rem;color:#94a3b8}.chart-bar{width:100%;border-radius:10px}.chart-bar.prescriptions{background:linear-gradient(160deg,#2f62ff33,#2f62ff94)}.chart-bar.revenue{background:linear-gradient(160deg,#10b98133,#10b98199)}.sales{display:flex;flex-direction:column;gap:1.5rem}.sales-card{background:#fff;border-radius:22px;padding:2rem;box-shadow:0 18px 40px #0f172a1a;display:flex;flex-direction:column;gap:1.5rem}.sales-card-header{display:flex;flex-direction:column;gap:1rem}.sales-card-header h2{margin:0;font-size:1.4rem}.sales-subtitle{margin:0;color:#94a3b8;font-size:.95rem}.sales-header-actions{display:flex;flex-wrap:wrap;gap:.75rem}.sales-tabs{display:inline-flex;align-items:center;background:#f8f9ff;border-radius:16px;padding:.35rem;gap:.35rem;width:fit-content}.sales-tab{border:none;background:transparent;color:#475569;font-weight:600;border-radius:14px;padding:.65rem 1.1rem;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s ease}.sales-tab:hover{color:#1f2a66}.sales-tab.active{background:#fff;box-shadow:0 12px 20px #2f62ff29;color:#1f2a66}.sales-tab-icon{font-size:1.15rem}.sales-pos{display:flex;flex-direction:column;gap:1.5rem}.sales-search{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.sales-search .search{flex:1;min-width:220px}.sales-customer-control{display:inline-flex;align-items:flex-end;gap:.75rem}.sales-customer-control label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;color:#475569}.sales-customer-control select{min-width:200px;padding:.55rem .75rem;border-radius:10px;border:1px solid #dbe3f0;background:#fff;font-size:.9rem;color:#1f2937;transition:border .2s ease,box-shadow .2s ease}.sales-customer-control select:focus{outline:none;border-color:#2f62ff66;box-shadow:0 0 0 3px #2f62ff2e}.ghost-btn.small,.primary-btn.small{padding:.55rem 1rem;font-size:.85rem}.ghost-btn.small.danger{background:#ef44441f;color:#b91c1c}.ghost-btn.small.danger:hover{box-shadow:0 10px 18px #ef444440}.sales-pos-layout{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.sales-products{display:flex;flex-direction:column;gap:1.25rem}.sales-products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.sales-product-card{background:#f8f9ff;border-radius:18px;padding:1.2rem 1.35rem;display:flex;flex-direction:column;gap:1rem;box-shadow:inset 0 0 0 1px #2f62ff1f;transition:transform .2s ease,box-shadow .2s ease}.sales-product-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #2f62ff14}.sales-product-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.sales-product-card h3{margin:0;font-size:1rem;color:#1f2937;flex:1}.stock-chip{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .6rem;border-radius:999px;background:#0f766e1f;color:#0f766e;font-size:.75rem;font-weight:600;white-space:nowrap}.stock-chip.warning{background:#eab3082e;color:#b45309}.stock-chip.danger{background:#ef44442e;color:#b91c1c}.sales-product-card .price{margin:0;font-weight:700;font-size:1.05rem;color:#1f2a66}.sales-product-card footer{display:flex;justify-content:flex-end}.sales-product-card.out-of-stock{opacity:.62}.sales-product-card .ghost-btn[disabled]{cursor:not-allowed;opacity:.7}.sales-state{padding:1.75rem 1.25rem;border-radius:16px;background:#f8fafc;color:#475569;text-align:center;border:1px dashed rgba(148,163,184,.35)}.sales-state.error{background:#ef444414;color:#b91c1c;border-color:#ef44444d}.sales-state.muted{color:#94a3b8}.sales-cart{background:#f9fafc;border-radius:20px;padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:inset 0 0 0 1px #94a3b829}.sales-cart header{display:flex;align-items:center;justify-content:space-between}.sales-cart h3{margin:0;font-size:1.05rem}.sales-cart-count{font-size:.85rem;color:#64748b}.sales-cart-customer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .9rem;border:1px dashed rgba(59,130,246,.35);border-radius:12px;background:#3b82f614;color:#1f2a66}.sales-cart-customer div{display:flex;flex-direction:column;gap:.2rem}.sales-cart-customer p{margin:0;font-size:.8rem;color:#475569}.sales-cart-customer-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#1d4ed8;font-weight:700}.sales-cart-body{flex:1;display:flex;flex-direction:column;gap:.85rem;border:1px dashed rgba(148,163,184,.6);border-radius:16px;padding:1.2rem;background:#f8faffb3;max-height:360px;overflow-y:auto}.sales-cart-body p{margin:0;text-align:center;color:#94a3b8}.sales-cart-body.sales-cart-body-empty{align-items:center;justify-content:center}.cart-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.cart-item{display:flex;flex-direction:column;gap:.65rem;padding:.85rem 1rem;background:#fff;border-radius:14px;box-shadow:0 10px 22px #0f172a0d}.cart-item-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.cart-item-header strong{font-size:.95rem;color:#1f2937}.cart-item-meta{display:flex;justify-content:space-between;align-items:center;color:#475569;font-size:.9rem}.cart-item-total{font-weight:700;color:#1f2a66}.cart-item-actions{display:inline-flex;align-items:center;gap:.65rem}.cart-item-actions button{width:32px;height:32px;border-radius:10px;border:none;background:#e2e8f0;font-size:1.1rem;cursor:pointer;transition:background .2s ease,transform .2s ease}.cart-item-actions button:disabled{cursor:not-allowed;opacity:.5}.cart-item-actions button:hover:not(:disabled){background:#cbd5f5;transform:translateY(-1px)}.cart-item-actions span{min-width:1.5rem;text-align:center;font-weight:600}.cart-item-stock{margin:0;color:#94a3b8;font-size:.8rem}.sales-cart footer{display:flex;flex-direction:column;gap:1rem}.sales-cart-feedback{font-size:.85rem;border-radius:12px;padding:.75rem 1rem;font-weight:500}.sales-cart-feedback.success{background:#22c55e29;color:#047857;border:1px solid rgba(34,197,94,.24)}.sales-cart-feedback.error{background:#ef44442e;color:#b91c1c;border:1px solid rgba(239,68,68,.28)}.sales-cart-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.9rem}.sales-cart-summary span{color:#64748b}.sales-cart-summary strong{font-size:1rem;color:#1f2a66}.sales-cart-actions{display:flex;gap:.75rem;justify-content:space-between}.sales-cart-actions .primary-btn,.sales-cart-actions .ghost-btn{flex:1}.customer-form{display:flex;flex-direction:column;gap:1rem;flex:1;min-height:0}.customer-form .inventory-modal-body{flex:1;min-height:0}.customer-form-field{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem;color:#475569}.customer-form-scroll{display:flex;flex-direction:column;gap:1rem;padding-right:.25rem;overflow-y:auto;flex:1;min-height:0}.customer-form-field input,.customer-form-field textarea{border:1px solid #dbe3f0;border-radius:12px;padding:.7rem .85rem;font-size:.95rem;color:#1f2937;background:#f9fbff;transition:border .2s ease,box-shadow .2s ease}.customer-form-field textarea{resize:vertical}.customer-form-field input:focus,.customer-form-field textarea:focus{outline:none;border-color:#2f62ff61;box-shadow:0 0 0 3px #2f62ff24}.customer-form-error{margin:0;color:#b91c1c;font-size:.85rem;background:#ef44441f;padding:.6rem .75rem;border-radius:10px}.sales-records{display:flex;flex-direction:column;gap:1.25rem}.sales-records-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.sales-records-toolbar .search{flex:1;min-width:220px}.table-wrapper{overflow-x:auto}.table-wrapper table{width:100%;border-collapse:collapse;min-width:560px}.table-wrapper th,.table-wrapper td{padding:.85rem 1rem;text-align:left;font-size:.9rem}.table-wrapper thead{background:#f1f5f9}.table-wrapper tbody tr:nth-child(2n){background:#fff}.table-wrapper tbody tr:nth-child(odd){background:#fbfcff}.table-wrapper tbody tr+tr{border-top:1px solid #e2e8f0}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:.35rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600;text-transform:capitalize}.status-badge.paid{background:#10b9811f;color:#047857}.status-badge.pending{background:#eab30829;color:#b45309}.status-badge.refunded{background:#3b82f624;color:#1d4ed8}.status-badge.overdue{background:#ef444429;color:#b91c1c}.status-badge.active{background:#0ea5e929;color:#0e7490}.status-badge.inactive{background:#94a3b82e;color:#475569}.suppliers{display:flex;flex-direction:column;gap:1.75rem}.suppliers-overview{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-start;justify-content:space-between}.suppliers-stats-cards{flex:1 1 480px;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.suppliers-stat-card{display:flex;align-items:center;gap:.85rem;border-radius:16px;padding:1.1rem 1.25rem;background:#f8fafc;box-shadow:inset 0 0 0 1px #94a3b826}.suppliers-stat-card .suppliers-stat-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;font-size:1.4rem}.suppliers-stat-card.blue{background:#3b82f614;box-shadow:inset 0 0 0 1px #3b82f61f}.suppliers-stat-card.blue .suppliers-stat-icon{background:#3b82f629}.suppliers-stat-card.amber{background:#eab30814;box-shadow:inset 0 0 0 1px #eab30824}.suppliers-stat-card.amber .suppliers-stat-icon{background:#eab30829}.suppliers-stat-card.green{background:#22c55e14;box-shadow:inset 0 0 0 1px #22c55e24}.suppliers-stat-card.green .suppliers-stat-icon{background:#22c55e29}.suppliers-stat-card.violet{background:#8b5cf614;box-shadow:inset 0 0 0 1px #8b5cf624}.suppliers-stat-card.violet .suppliers-stat-icon{background:#8b5cf629}.suppliers-stat-label{display:block;font-size:.85rem;color:#64748b;margin-bottom:.2rem}.suppliers-stat-value{font-size:1.4rem;font-weight:700;color:#1f2a66}.suppliers-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.suppliers-action-btn{display:inline-flex;align-items:center;gap:.45rem;border-radius:12px;padding:.65rem 1.1rem;font-weight:600;font-size:.92rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease}.suppliers-action-btn .icon{font-size:1rem}.suppliers-action-btn.outline{background:#f8fafc;border:1px solid rgba(148,163,184,.4);color:#1f2a66}.suppliers-action-btn.outline:hover{border-color:#3b82f666;box-shadow:0 6px 16px -10px #0e749066}.suppliers-action-btn.primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;color:#fff}.suppliers-action-btn.primary:hover{box-shadow:0 10px 20px -12px #2563ebcc;transform:translateY(-1px)}.suppliers-card{background:#fff;border-radius:20px;padding:1.75rem;box-shadow:0 14px 35px -28px #0f172a73;display:flex;flex-direction:column;gap:1.25rem}.suppliers-card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.suppliers-tabs{display:inline-flex;background:#eef2ff;padding:.35rem;border-radius:999px;gap:.35rem;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.3) transparent;-webkit-overflow-scrolling:touch;max-width:100%}.suppliers-tabs::-webkit-scrollbar{height:6px}.suppliers-tabs::-webkit-scrollbar-track{background:transparent;border-radius:999px}.suppliers-tabs::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:999px}.suppliers-tabs::-webkit-scrollbar-thumb:hover{background:#94a3b880}.suppliers-tab{border:none;background:transparent;border-radius:999px;padding:.45rem 1.15rem;font-weight:600;font-size:.9rem;color:#64748b;cursor:pointer;transition:background .2s ease,color .2s ease;white-space:nowrap;flex-shrink:0}.suppliers-tab.active{background:#fff;color:#1f2a66;box-shadow:0 4px 12px -8px #4f46e599}.suppliers-tab:disabled{opacity:.4;cursor:not-allowed}.suppliers-card-header .ghost-btn.small{padding:.5rem .9rem;border-radius:10px;font-size:.85rem}.suppliers-table{width:100%;border-collapse:collapse}.suppliers-table thead{background:#f1f5f9;color:#475569}.suppliers-table th,.suppliers-table td{padding:.95rem 1rem;text-align:left;font-size:.9rem}.suppliers-table tbody tr{transition:background .2s ease,transform .2s ease}.suppliers-table tbody tr:hover{background:#f1f5f999}.supplier-cell{display:flex;flex-direction:column;gap:.15rem}.supplier-cell span{color:#64748b;font-size:.82rem}.supplier-contact{display:flex;flex-direction:column;gap:.15rem}.supplier-contact span:first-child{font-weight:600;color:#1f2a66}.supplier-contact-sub{color:#7383a8;font-size:.82rem}.table-actions{display:inline-flex;gap:.35rem}.table-actions button{border:none;background:#e2e8f0;border-radius:10px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .2s ease}.table-actions button:hover{background:#cbd5f5;transform:translateY(-1px)}.supplier-details{display:flex;flex-direction:column;gap:1.5rem}.supplier-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin:0}.supplier-details-grid dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;margin-bottom:.25rem}.supplier-details-grid dd{margin:0;font-weight:600;color:#1f2937}.supplier-notes h4{margin:0 0 .4rem;font-size:1rem;color:#1f2937}.supplier-notes p{margin:0;color:#475569;line-height:1.5}@media(max-width:1023px){.sales-card{padding:1.5rem}.sales-card-header{flex-direction:column;align-items:flex-start;gap:1rem}.sales-header-actions{width:100%;flex-wrap:wrap}.sales-tabs{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:.25rem}.sales-tab{padding:.6rem 1rem;font-size:.9rem;white-space:nowrap}.sales-pos-layout{grid-template-columns:1fr;gap:1.25rem}.sales-search{flex-direction:column;align-items:stretch;gap:.75rem}.sales-search .search{min-width:100%}.sales-customer-control{width:100%;flex-direction:column;align-items:stretch;gap:.75rem}.sales-customer-control label{width:100%}.sales-customer-control select{min-width:100%;width:100%}.sales-products-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.sales-cart{padding:1.25rem;border-radius:18px}.sales-cart-body{max-height:300px;padding:1rem}.cart-item{padding:.75rem .9rem}.sales-cart-summary{gap:.75rem}}@media(max-width:768px){.sales-card{padding:1rem;border-radius:18px}.sales-card-header{padding:1rem 0}.sales-card-header h2{font-size:1.3rem}.sales-subtitle{font-size:.85rem}.sales-header-actions{width:100%;flex-direction:column;gap:.5rem}.sales-header-actions .ghost-btn,.sales-header-actions .primary-btn{width:100%;flex:none;justify-content:center}.sales-tabs{width:100%;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:.25rem;gap:.25rem}.sales-tab{flex:0 0 auto;padding:.55rem .9rem;font-size:.85rem;min-width:fit-content}.sales-tab-icon{font-size:1rem}.sales-pos{gap:1.25rem}.sales-search{flex-direction:column;gap:.75rem}.sales-search .search{width:100%;min-width:100%}.sales-customer-control{width:100%;flex-direction:column;align-items:stretch;gap:.75rem}.sales-customer-control label{width:100%}.sales-customer-control select{width:100%;min-width:100%}.sales-customer-control button{width:100%}.sales-pos-layout{grid-template-columns:1fr;gap:1.25rem}.sales-products-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.sales-product-card{padding:1rem 1.1rem;border-radius:16px}.sales-product-card h3{font-size:.95rem}.sales-product-card .price{font-size:1rem}.stock-chip{font-size:.7rem;padding:.2rem .5rem}.sales-cart{padding:1rem;border-radius:18px;order:-1}.sales-cart header{flex-wrap:wrap;gap:.5rem}.sales-cart h3{font-size:1rem}.sales-cart-count{font-size:.8rem}.sales-cart-customer{padding:.5rem .75rem;flex-direction:column;align-items:flex-start;gap:.5rem}.sales-cart-body{max-height:280px;padding:.9rem}.cart-item{padding:.75rem;gap:.5rem}.cart-item-header{flex-wrap:wrap;gap:.5rem}.cart-item-header strong{font-size:.9rem;flex:1;min-width:0}.cart-item-header button{font-size:.8rem;padding:.4rem .7rem}.cart-item-meta{font-size:.85rem}.cart-item-actions{gap:.5rem}.cart-item-actions button{width:28px;height:28px;font-size:1rem}.cart-item-stock{font-size:.75rem}.sales-cart footer{gap:.75rem}.sales-cart-feedback{font-size:.8rem;padding:.65rem .9rem}.sales-cart-summary{flex-direction:column;align-items:stretch;gap:.5rem;padding:.75rem}.sales-cart-summary>div{width:100%;justify-content:space-between}.sales-cart-payment{padding:.75rem!important;gap:.65rem!important}.sales-cart-payment label,.sales-cart-payment select,.sales-cart-payment input{width:100%}.sales-cart-actions{flex-direction:column;gap:.5rem}.sales-cart-actions .primary-btn,.sales-cart-actions .ghost-btn{width:100%;justify-content:center}.sales-records-table-wrapper,.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -1rem;padding:0 1rem;position:relative}.sales-records-table-wrapper:before,.table-wrapper:before{content:"← Scroll →";position:absolute;top:0;right:1rem;font-size:.7rem;color:#94a3b8;pointer-events:none;z-index:1}.sales-records-table-wrapper table,.table-wrapper table{min-width:600px;width:100%}.sales-records-table-wrapper th,.sales-records-table-wrapper td,.table-wrapper th,.table-wrapper td{padding:.75rem .5rem;font-size:.85rem;white-space:nowrap}.sales-records-toolbar{flex-direction:column;gap:.75rem}.sales-records-toolbar .search,.sales-records-toolbar button{width:100%}.sales-unpaid-list{gap:.75rem}.sales-unpaid-item{padding:1rem .75rem}.sales-customers-list{gap:.75rem}.sales-customer-card{padding:1rem .75rem}}@media(max-width:480px){.sales-card{padding:.75rem}.sales-card-header h2{font-size:1.2rem}.sales-tab{padding:.5rem .75rem;font-size:.8rem}.sales-tab-icon{font-size:.9rem}.sales-products-grid{grid-template-columns:1fr;gap:.65rem}.sales-product-card{padding:.9rem 1rem}.sales-cart{padding:.9rem}.sales-cart-body{max-height:250px;padding:.75rem}.cart-item,.sales-cart-summary{padding:.65rem}}.suppliers-overview{flex-direction:column;align-items:stretch}.suppliers-actions{justify-content:flex-start}.suppliers-card{padding:1.5rem}.opd-category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.opd-category-item{background:#f8fafc;border-radius:14px;padding:1.25rem;border:1px solid rgba(148,163,184,.2);display:flex;flex-direction:column;gap:.75rem}.opd-category-header{display:flex;align-items:center;gap:.75rem}.opd-category-icon{font-size:1.5rem}.opd-category-header h3{margin:0;font-size:1rem;color:#1f2937;font-weight:600}.opd-category-amount{font-size:1.5rem;font-weight:700;color:#1f2a66}.opd-category-details{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:#64748b}.opd-category-percentage{font-weight:600;color:#3b82f6}.opd-category-chart{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(148,163,184,.2)}.opd-category-bars{display:flex;width:100%;height:50px;border-radius:10px;overflow:hidden;background:#e2e8f0;margin-bottom:.75rem}.opd-category-bar{display:flex;align-items:center;justify-content:center;height:100%;transition:width .5s ease;font-weight:600;font-size:.75rem;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.opd-category-bar.consultation-bar{background:linear-gradient(135deg,#3b82f6,#2563eb)}.opd-category-bar.laboratory-bar{background:linear-gradient(135deg,#10b981,#059669)}.opd-category-bar.services-bar{background:linear-gradient(135deg,#f59e0b,#d97706)}.opd-category-bar.ultra-sound-bar{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.opd-category-bar.dental-bar{background:linear-gradient(135deg,#14b8a6,#0d9488)}.opd-category-total{text-align:center;font-size:1rem;color:#1f2937;font-weight:600}.panel.opd-category{grid-column:1 / -1}.analytics{display:flex;flex-direction:column;gap:1.75rem}.analytics-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.25rem}.analytics-header-content{flex:1}.analytics-header-logo-section{display:flex;align-items:center;gap:1rem}.analytics-logo{width:60px;height:60px;object-fit:contain;border-radius:8px}.analytics-header-text{flex:1}.analytics-header h2{margin:0 0 .35rem;font-size:1.8rem;color:#101828}.analytics-header p{margin:0;color:#64748b;font-size:.95rem}.analytics-subtitle{margin-top:.25rem!important;font-size:.85rem!important;color:#94a3b8!important}.analytics-header-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.analytics-select{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:#64748b}.analytics-select select{border:1px solid #dbe3f0;border-radius:12px;padding:.55rem .85rem;font-size:.9rem;color:#1f2937;background:#fff}.analytics-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1.15rem;border-radius:12px;font-weight:600;font-size:.9rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.analytics-btn.ghost{border:1px solid rgba(148,163,184,.4);color:#1f2a66;background:#f8fafc}.analytics-btn.ghost:hover{border-color:#3b82f666;box-shadow:0 6px 20px -12px #2563eb59}.analytics-btn.primary{border:none;color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 10px 25px -14px #2563eb99}.analytics-btn.primary:hover{transform:translateY(-1px);box-shadow:0 14px 30px -16px #2563ebb3}.analytics-stats{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.analytics-card{display:grid;grid-template-columns:52px 1fr;grid-template-rows:auto auto;gap:.65rem .85rem;padding:1.2rem 1.35rem;border-radius:18px;background:#fff;box-shadow:0 16px 40px -28px #0f172a99;border:1px solid rgba(148,163,184,.25)}.analytics-card .card-icon{width:52px;height:52px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem;grid-row:span 2}.analytics-card .card-heading span{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.analytics-card .card-heading strong{display:block;font-size:1.5rem;color:#1f2a66;margin-top:.15rem}.analytics-card .card-delta{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.15rem;font-size:.85rem}.analytics-card .card-delta span{font-weight:700}.analytics-card .card-delta small{color:#94a3b8}.analytics-card.success .card-icon{background:#22c55e29;color:#047857}.analytics-card.info .card-icon{background:#3b82f629;color:#1d4ed8}.analytics-card.warning .card-icon{background:#eab30829;color:#b45309}.analytics-card.primary .card-icon{background:#8b5cf629;color:#6d28d9}.analytics-card.success .card-delta span{color:#047857}.analytics-card.info .card-delta span{color:#1d4ed8}.analytics-card.warning .card-delta span{color:#b45309}.analytics-card.primary .card-delta span{color:#6d28d9}.analytics-card.danger .card-icon{background:#ef44441f;color:#dc2626}.analytics-card.danger .card-delta span{color:#dc2626}.analytics-alert-section{margin-top:1.5rem}.analytics-panel.alert{border-left:4px solid #f59e0b;background:#fffbeb}.analytics-panel.alert header h3{color:#92400e}.low-stock-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.low-stock-list li{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;background:#fff;border-radius:10px;border:1px solid #fde68a;transition:all .2s ease}.low-stock-list li:hover{box-shadow:0 4px 12px #f59e0b26;transform:translateY(-1px)}.low-stock-list li.critical{border-color:#fca5a5;background:#fef2f2}.low-stock-list li.critical .stock-badge{background:#ef44441f;color:#dc2626}.low-stock-list li>div:first-child{display:flex;flex-direction:column;gap:.25rem;flex:1}.low-stock-list li strong{font-size:.95rem;color:#1f2937;font-weight:600}.stock-category{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.stock-info{display:flex;align-items:center;gap:.5rem}.stock-badge{padding:.4rem .75rem;border-radius:8px;font-size:.85rem;font-weight:600;background:#f59e0b1f;color:#d97706}.stock-badge.warning{background:#f59e0b1f;color:#d97706}.stock-badge.critical{background:#ef44441f;color:#dc2626}.analytics-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.analytics-panel{background:#fff;border-radius:22px;padding:1.5rem;box-shadow:0 18px 45px -34px #0f172abf;display:flex;flex-direction:column;gap:1.25rem}.analytics-panel header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.analytics-panel h3{margin:0;font-size:1.15rem;color:#1f2a66}.panel-subtitle{font-size:.85rem;color:#94a3b8}.analytics-panel.large,.analytics-panel.wide{grid-column:span 2}.chart-columns-legend{display:inline-flex;gap:1.25rem;font-size:.85rem;color:#475569}.chart-columns-legend .dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:.4rem}.chart-columns-legend .dot.revenue{background:#2563eb}.chart-columns-legend .dot.prescriptions{background:#22c55e}.chart-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(36px,1fr));gap:1rem;align-items:end;min-height:220px}.chart-columns .column{display:flex;flex-direction:column;align-items:center;gap:.3rem}.chart-columns .bar{width:16px;border-radius:8px 8px 4px 4px}.chart-columns .bar.revenue{background:linear-gradient(180deg,#60a5fa,#2563eb)}.chart-columns .bar.prescriptions{background:linear-gradient(180deg,#4ade80,#22c55e)}.chart-columns .column-label{font-size:.75rem;color:#94a3b8}.chart-area{display:flex;flex-direction:column;gap:1rem}.chart-area svg{width:100%;height:auto}.chart-area .area{fill:#4f46e524;stroke:none}.chart-area .line{fill:none;stroke:#4f46e5;stroke-width:2.5}.chart-area-labels{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;margin:0;padding:0;list-style:none;color:#475569;font-size:.85rem}.chart-area-labels strong{display:block;font-size:1rem;color:#1f2a66}.chart-donut{display:flex;gap:1.5rem;align-items:center}.donut-visual{position:relative;width:160px;height:160px;border-radius:50%;background:conic-gradient(#2563eb 0deg 150deg,#22c55e 150deg 250deg,#f97316 250deg 320deg,#ec4899 320deg 350deg,#94a3b8 350deg 360deg);display:grid;place-items:center}.donut-visual:after{content:"";width:90px;height:90px;background:#fff;border-radius:50%}.chart-donut ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.6rem;font-size:.9rem;color:#475569}.chart-donut li{display:flex;align-items:center;gap:.6rem}.chart-donut .swatch{width:12px;height:12px;border-radius:3px}.chart-donut .swatch.pain-relief{background:#2563eb}.chart-donut .swatch.antibiotics{background:#22c55e}.chart-donut .swatch.supplements{background:#f97316}.chart-donut .swatch.dermatology{background:#ec4899}.chart-donut .swatch.others{background:#94a3b8}.channel-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.channel-list li{display:flex;justify-content:space-between;align-items:center;border-radius:14px;padding:.9rem 1.1rem;background:#f8fafc;border:1px solid rgba(148,163,184,.18);transition:transform .2s ease,box-shadow .2s ease}.channel-list li:hover{transform:translateY(-2px);box-shadow:0 12px 25px -20px #0f172a99}.channel-list strong{display:block;font-size:.95rem;color:#1f2a66}.channel-list span{color:#475569;font-size:.85rem}.channel-list .channel-trend{font-weight:700;color:#16a34a}.channel-list .primary{border-color:#2563eb40;background:#3b82f614}.channel-list .info{border-color:#06b6d438;background:#7dd3fc1f}.channel-list .success{border-color:#22c55e3d;background:#86efac29}.table-wrapper.mini table{width:100%;border-collapse:collapse}.table-wrapper.mini th,.table-wrapper.mini td{padding:.75rem .5rem;text-align:left;font-size:.85rem}.table-wrapper.mini thead{background:#f1f5f9}.table-wrapper.mini tbody tr+tr{border-top:1px solid #e2e8f0}.analytics-error{padding:.85rem 1rem;background:#ef44441f;border:1px solid rgba(239,68,68,.24);color:#b91c1c;border-radius:12px;font-size:.9rem}.analytics-loading{padding:3rem 1rem;text-align:center;font-size:1rem;color:#475569}.empty-state{margin:2rem auto 0;color:#94a3b8;font-size:.95rem}@media(max-width:1024px){.analytics-panel.large,.analytics-panel.wide{grid-column:span 1}.analytics-header-actions{width:100%;justify-content:flex-start}.analytics-btn,.analytics-select{flex:1 1 180px}.analytics-btn.primary{justify-content:center}}@media(max-width:768px){.analytics-header{flex-direction:column;align-items:flex-start}.analytics-header-actions{flex-direction:column;align-items:stretch}.analytics-btn,.analytics-select{width:100%}.chart-donut{flex-direction:column;align-items:flex-start}}.ipd-opd-breakdown{display:flex;flex-direction:column;gap:1.5rem}.billing-comparison{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.25rem}.billing-card{padding:1.5rem;border-radius:16px;background:#fff;border:2px solid rgba(148,163,184,.2);transition:all .3s ease}.billing-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px -15px #0f172a66}.billing-card.ipd{border-color:#3b82f64d;background:linear-gradient(135deg,#3b82f60d,#2563eb14)}.billing-card.opd{border-color:#8b5cf64d;background:linear-gradient(135deg,#8b5cf60d,#7c3aed14)}.billing-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.billing-icon{font-size:2rem;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:#fffc}.billing-card.ipd .billing-icon{background:#3b82f626}.billing-card.opd .billing-icon{background:#8b5cf626}.billing-header h4{margin:0;font-size:1.1rem;color:#1f2a66;font-weight:600}.billing-amount{font-size:2rem;font-weight:700;color:#1f2a66;margin-bottom:.75rem}.billing-card.ipd .billing-amount{color:#1d4ed8}.billing-card.opd .billing-amount{color:#6d28d9}.billing-details{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:#64748b}.billing-percentage{font-weight:600;padding:.35rem .75rem;border-radius:8px;background:#94a3b81a;color:#475569}.billing-card.ipd .billing-percentage{background:#3b82f626;color:#1d4ed8}.billing-card.opd .billing-percentage{background:#8b5cf626;color:#6d28d9}.billing-chart{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;background:#f8fafc;border-radius:14px;border:1px solid rgba(148,163,184,.2)}.chart-bars{display:flex;width:100%;height:60px;border-radius:10px;overflow:hidden;background:#e2e8f0;position:relative}.chart-bar{display:flex;align-items:center;justify-content:center;height:100%;transition:width .5s ease;font-weight:600;font-size:.85rem;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.chart-bar.ipd-bar{background:linear-gradient(135deg,#3b82f6,#2563eb)}.chart-bar.opd-bar{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.chart-bar.consultation-bar{background:linear-gradient(135deg,#06b6d4,#0891b2)}.chart-bar.laboratory-bar{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.chart-bar.services-bar{background:linear-gradient(135deg,#10b981,#059669)}.chart-bar.ultra-sound-bar{background:linear-gradient(135deg,#f59e0b,#d97706)}.chart-bar.surgery-bar{background:linear-gradient(135deg,#ef4444,#dc2626)}.chart-bar.dental-bar{background:linear-gradient(135deg,#14b8a6,#0d9488)}.chart-total{text-align:center;font-size:1.1rem;color:#1f2a66;padding-top:.5rem;border-top:1px solid rgba(148,163,184,.2)}.chart-total strong{color:#1f2a66;font-weight:600}@media(max-width:768px){.billing-comparison{grid-template-columns:1fr}.billing-amount{font-size:1.5rem}}.users{display:flex;flex-direction:column;gap:1.75rem}.users-header{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap}.users-header h2{margin:0 0 .4rem;font-size:1.8rem;color:#101828}.users-header p{margin:0;color:#64748b;font-size:.95rem}.users-save-btn{border:none;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:.75rem 1.5rem;border-radius:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 12px 24px -16px #2563eb99}.users-save-btn:hover{transform:translateY(-1px);box-shadow:0 16px 32px -18px #2563ebb3}.users-summary{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.users-summary-card{display:flex;align-items:center;gap:.85rem;padding:1.1rem 1.3rem;border-radius:18px;background:#fff;border:1px solid rgba(148,163,184,.18);box-shadow:0 16px 40px -30px #0f172a99}.users-summary-card.primary{border-color:#4f46e53d;background:#6366f114}.users-summary-card.success{border-color:#22c55e38;background:#86efac29}.users-summary-card.warning{border-color:#f9731638;background:#fed7aa2e}.users-summary-card.info{border-color:#3b82f63d;background:#bfdbfe2e}.users-summary-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:#f8fafc;font-size:1.3rem}.users-summary-label{display:block;font-size:.8rem;text-transform:uppercase;color:#64748b;letter-spacing:.04em}.users-summary-value{display:block;font-size:1.4rem;color:#1f2a66}.users-toolbar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.users-filter select{border:1px solid #dbe3f0;border-radius:12px;padding:.65rem .85rem;font-size:.9rem;color:#1f2a66;background:#fff}.users-search{display:inline-flex;align-items:center;gap:.6rem;padding:.65rem .9rem;border-radius:12px;background:#f8fafc;border:1px solid rgba(148,163,184,.28);flex:1;min-width:220px}.users-search input{border:none;background:transparent;outline:none;font-size:.9rem;flex:1;color:#1f2937}.users-count{color:#94a3b8;font-size:.85rem}.users-table-wrapper{background:#fff;border-radius:22px;box-shadow:0 18px 45px -32px #0f172ab3;border:1px solid rgba(148,163,184,.18);overflow:hidden}.users-table{width:100%;border-collapse:collapse;min-width:720px}.users-table thead{background:#f1f5f9}.users-table th,.users-table td{padding:.9rem 1.1rem;text-align:left;font-size:.9rem;border-bottom:1px solid #e2e8f0}.users-table tbody tr:hover{background:#f1f5f966}.users-user{display:flex;align-items:center;gap:.85rem}.users-user strong{display:block;color:#1f2a66}.users-user span{display:block;color:#94a3b8;font-size:.82rem}.users-avatar{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#2563eb,#1d4ed8);display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:#fff}.users-role{padding:.35rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600;text-transform:capitalize}.users-role.admin{background:#8b5cf62e;color:#6d28d9}.users-role.pharmacist{background:#0ea5e933;color:#0369a1}.users-role.sales{background:#6366f129;color:#3730a3}.users-permissions{display:flex;flex-wrap:wrap;gap:.35rem}.users-permissions span{padding:.35rem .6rem;border-radius:10px;background:#94a3b829;color:#475569;font-size:.75rem;font-weight:600}.users-actions{display:inline-flex;gap:.45rem}.users-actions button{border:none;background:#e2e8f0;border-radius:10px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .2s ease}.users-actions button:hover{background:#cbd5f5;transform:translateY(-1px)}.users-empty{margin:0;padding:1.2rem;color:#94a3b8;font-size:.9rem;text-align:center}.users-editor{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:1.5rem;z-index:60}.users-editor[hidden]{display:none}.users-editor-content{width:min(500px,100%);max-height:90vh;background:#fff;border-radius:18px;padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:0 24px 48px -32px #0f172a8c;overflow:hidden}.users-editor-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-shrink:0}.users-editor-header h3{margin:0;font-size:1.3rem;color:#1f2a66}.users-editor-header button{border:none;background:#e2e8f0;border-radius:10px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.users-editor-body{display:flex;flex-direction:column;gap:1rem;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0;padding-right:.5rem;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.3) transparent;-webkit-overflow-scrolling:touch}.users-editor-body::-webkit-scrollbar{width:6px}.users-editor-body::-webkit-scrollbar-track{background:transparent;border-radius:999px}.users-editor-body::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:999px}.users-editor-body::-webkit-scrollbar-thumb:hover{background:#94a3b880}.users-editor-body label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;color:#475569}.users-editor-body input,.users-editor-body select{border:1px solid #dbe3f0;border-radius:12px;padding:.65rem .85rem;font-size:.95rem;color:#1f2937;background:#f8fafc}.users-editor-body fieldset{border:1px solid #e2e8f0;border-radius:14px;padding:.75rem;display:flex;gap:.6rem;flex-wrap:wrap}.users-editor-body legend{padding:0 .35rem;font-size:.8rem;font-weight:600;color:#64748b}.users-permission-toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:#475569}.users-editor-error{margin:0;color:#b91c1c;font-size:.85rem;background:#ef44441f;padding:.6rem;border-radius:10px}.users-editor-footer{display:flex;justify-content:flex-end;gap:.75rem;flex-shrink:0;border-top:1px solid #e2e8f0;padding-top:1rem;margin-top:.5rem}.users-editor-footer .ghost-btn,.users-editor-footer .primary-btn{padding:.65rem 1.1rem;border-radius:12px;font-weight:600;cursor:pointer;border:none}.users-editor-footer .ghost-btn{background:#e2e8f0;color:#1f2a66}.users-editor-footer .primary-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 12px 24px -16px #2563ebb3}@media(max-width:1024px){.users-table-wrapper{overflow-x:auto}.users-save-btn{width:100%;justify-content:center}}@media(max-width:768px){.users-toolbar{flex-direction:column;align-items:stretch}.users-filter,.users-search,.users-count{width:100%}.users-count{text-align:right}}.settings{display:flex;flex-direction:column;gap:1.75rem}.settings-header{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap}.settings-header h2{margin:0 0 .4rem;font-size:1.8rem;color:#101828}.settings-header p{margin:0;color:#64748b;font-size:.95rem}.settings-save-btn{border:none;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:.75rem 1.5rem;border-radius:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 12px 24px -16px #2563eb99}.settings-save-btn:hover{transform:translateY(-1px);box-shadow:0 16px 32px -18px #2563ebb3}.settings-card{background:#fff;border-radius:22px;box-shadow:0 18px 45px -32px #0f172ab3;border:1px solid rgba(148,163,184,.18);display:flex;flex-direction:column}.settings-tabs{display:inline-flex;align-items:center;gap:.35rem;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;flex-wrap:wrap}.settings-tab{border:none;background:transparent;border-radius:14px;padding:.55rem 1.15rem;font-weight:600;font-size:.9rem;color:#64748b;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.settings-tab:hover{background:#6366f11a;color:#3730a3}.settings-tab.active{background:#6366f129;color:#1f2a66;box-shadow:inset 0 0 0 1px #6366f133}.settings-content{padding:1.75rem;display:flex;flex-direction:column;gap:1.5rem}.settings-form h3,.settings-pane h3{margin:0 0 1rem;font-size:1.15rem;color:#1f2a66}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}.settings-grid label{display:flex;flex-direction:column;gap:.45rem;font-size:.85rem;color:#475569}.settings-grid input{border:1px solid #dbe3f0;border-radius:12px;padding:.7rem .85rem;font-size:.95rem;color:#1f2937;background:#f8fafc}.settings-grid .span-2{grid-column:span 2}.settings-pane{display:flex;flex-direction:column;gap:1.25rem}.settings-toggle-list,.settings-checkbox-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.settings-toggle-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border-radius:16px;background:#f8fafce6;border:1px solid rgba(148,163,184,.22)}.settings-toggle-list strong{display:block;color:#1f2a66}.settings-toggle-list span{color:#64748b;font-size:.85rem}.settings-switch{position:relative;display:inline-block;width:52px;height:28px}.settings-switch input{opacity:0;width:0;height:0}.settings-switch .slider{position:absolute;cursor:pointer;inset:0;background:#cbd5f5;transition:background .2s ease;border-radius:999px}.settings-switch .slider:before{content:"";position:absolute;height:22px;width:22px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .2s ease}.settings-switch input:checked+.slider{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.settings-switch input:checked+.slider:before{transform:translate(24px)}.settings-checkbox-list li label{display:inline-flex;align-items:center;gap:.6rem;font-size:.95rem;color:#475569}.settings-info{background:#6366f11f;border:1px solid rgba(99,102,241,.18);border-radius:12px;padding:.9rem 1rem;color:#3730a3;font-size:.9rem}.settings-integrations{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem}.settings-integrations article{border:1px solid rgba(148,163,184,.2);border-radius:18px;padding:1.2rem 1.4rem;display:flex;flex-direction:column;gap:.85rem;background:#f8fafcd9}.settings-integrations article header{display:flex;justify-content:space-between;align-items:center;gap:.6rem}.settings-integrations article h4{margin:0;font-size:1rem;color:#1f2a66}.integration-status{font-size:.75rem;padding:.3rem .6rem;border-radius:999px;font-weight:600}.integration-status.connected{background:#22c55e2e;color:#047857}.integration-status.disconnected{background:#f8717129;color:#b91c1c}.settings-integrations article p{margin:0;color:#64748b;font-size:.9rem}.settings-integrations article button{align-self:flex-start;border:none;border-radius:12px;padding:.55rem 1.1rem;font-weight:600;cursor:pointer;background:#e2e8f0;color:#1f2a66}.settings-integrations article button:hover{background:#cbd5f5}@media(max-width:768px){.settings-header{flex-direction:column;align-items:flex-start}.settings-save-btn{width:100%;justify-content:center}.settings-tab{flex:1 1 140px;justify-content:center}.settings-grid .span-2{grid-column:span 1}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.login-card{width:100%;max-width:440px;background:#fff;border-radius:24px;padding:3rem;box-shadow:0 20px 60px #0000004d}.login-header{text-align:center;margin-bottom:2.5rem}.login-logo{display:flex;justify-content:center;margin-bottom:1.5rem}.login-logo-icon{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,#2f62ff,#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:2rem}.login-header h1{margin:0 0 .5rem;font-size:2rem;color:#1e293b;font-weight:700}.login-subtitle{margin:0;color:#64748b;font-size:.95rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-error{padding:.75rem 1rem;background:#fee2e2;color:#991b1b;border-radius:8px;font-size:.9rem;border:1px solid #fecaca}.login-form-group{display:flex;flex-direction:column;gap:.5rem}.login-form-group label{font-size:.9rem;font-weight:600;color:#1e293b}.login-form-group input,.login-form-group select{padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:12px;font-size:.95rem;transition:all .2s;background:#fff;color:#1e293b}.login-form-group input:focus,.login-form-group select:focus{outline:none;border-color:#2f62ff;box-shadow:0 0 0 3px #2f62ff1a}.password-input-wrapper{position:relative}.password-input-wrapper input{padding-right:3rem;width:100%}.password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.25rem;color:#64748b;transition:color .2s}.password-toggle:hover{color:#1e293b}.login-form-options{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.login-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#64748b}.login-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.login-forgot{color:#2f62ff;text-decoration:none;font-weight:600;transition:color .2s}.login-forgot:hover{color:#1e40af;text-decoration:underline}.login-submit{padding:1rem;background:linear-gradient(135deg,#2f62ff,#8b5cf6);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:.5rem}.login-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #2f62ff4d}.login-submit:active:not(:disabled){transform:translateY(0)}.login-submit:disabled{opacity:.6;cursor:not-allowed}.login-footer{margin-top:2rem;padding-top:2rem;border-top:1px solid #e2e8f0;text-align:center}.login-demo{font-size:.8rem;color:#64748b;line-height:1.6;margin:0}.login-demo strong{color:#1e293b;display:block;margin-bottom:.5rem}@media(max-width:480px){.login-container{padding:1rem}.login-card{padding:2rem 1.5rem}.login-header h1{font-size:1.75rem}}.reception{padding:2rem;max-width:1400px;margin:0 auto}.reception-header{margin-bottom:2rem}.reception-header h2{font-size:1.75rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.reception-header p{color:#6b7280;font-size:.95rem}.reception-loading,.reception-error{padding:2rem;text-align:center;color:#6b7280}.reception-error{background:#fee2e2;color:#dc2626;border-radius:8px;padding:1rem;margin-bottom:1rem}.reception-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #e5e7eb;padding-bottom:.5rem}.reception-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;background:transparent;color:#6b7280;font-weight:600;font-size:.95rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.reception-tab:hover{color:#2f62ff;background:#f0f4ff;border-radius:8px 8px 0 0}.reception-tab.active{color:#2f62ff;border-bottom-color:#2f62ff}.tab-icon{font-size:1.1rem}.reception-content{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.reception-section{animation:fadeIn .3s ease}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s}.patients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.patient-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .2s;display:flex;flex-direction:column}.patient-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.patient-actions{display:flex;gap:.5rem;margin-top:auto;padding-top:1rem}.patient-actions button{flex:1}.patient-id{font-size:.75rem;color:#6b7280;font-weight:600;margin-bottom:.5rem}.patient-card h4{font-size:1.25rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.patient-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;font-size:.9rem;color:#4b5563}.appointments-list{display:flex;flex-direction:column;gap:1rem}.appointment-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.appointment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.appointment-date{font-weight:600;color:#1f2937}.appointment-status{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.appointment-status.scheduled{background:#dbeafe;color:#1e40af}.appointment-status.completed{background:#d1fae5;color:#065f46}.appointment-status.cancelled{background:#fee2e2;color:#991b1b}.appointment-card h4{font-size:1.1rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.appointment-card p{color:#6b7280;font-size:.9rem;margin-bottom:.25rem}.billing-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.admissions-info{background:#f0f4ff;border:1px solid #c7d2fe;border-radius:12px;padding:1.5rem;color:#1e40af}@media(max-width:768px){.reception{padding:1rem}.reception-tabs{flex-wrap:wrap}.patients-grid,.form-row{grid-template-columns:1fr}.modal-content{margin:1rem;max-height:calc(100vh - 2rem)}}.form-section-divider{margin:1.5rem 0 1rem;padding-top:1.5rem;border-top:2px solid #e5e7eb}.form-section-divider h4{font-size:1.1rem;font-weight:600;color:#374151;margin:0}.large-modal{max-width:900px;max-height:90vh;overflow-y:auto}.patient-history-content{padding:1.5rem 0}.patient-info-header{background:#f9fafb;border-radius:8px;padding:1.5rem;margin-bottom:2rem;border:1px solid #e5e7eb}.patient-info-header h4{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.patient-info-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.patient-info-details p{margin:0;color:#4b5563;font-size:.95rem}.patient-info-details strong{color:#1f2937;margin-right:.5rem}.history-sections{display:flex;flex-direction:column;gap:2rem}.history-section h5{font-size:1.2rem;font-weight:600;color:#1f2937;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.history-list{display:flex;flex-direction:column;gap:1rem}.history-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;transition:all .2s}.history-item:hover{background:#f3f4f6;border-color:#d1d5db}.history-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.history-date{font-weight:600;color:#1f2937}.history-status{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.history-status.status-scheduled{background:#dbeafe;color:#1e40af}.history-status.status-completed,.history-status.status-paid{background:#d1fae5;color:#065f46}.history-status.status-pending{background:#fef3c7;color:#92400e}.history-status.status-overdue{background:#fee2e2;color:#991b1b}.history-prescription-number{font-weight:600;color:#6366f1;font-size:.9rem}.history-item p{margin:.5rem 0;color:#4b5563;font-size:.9rem}.history-item strong{color:#1f2937;margin-right:.5rem}.empty-history{text-align:center;padding:2rem;color:#9ca3af;font-style:italic}.search-container{max-width:1000px;margin:0 auto}.search-input-group{display:flex;gap:1rem;margin-bottom:2rem;align-items:stretch}.search-filters{flex-shrink:0}.search-filter-select{padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:.95rem;background:#fff;color:#1f2937;cursor:pointer;transition:all .2s;height:100%}.search-filter-select:hover{border-color:#3b82f6}.search-filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-input-wrapper{position:relative;flex:1;display:flex;align-items:center}.search-input{width:100%;padding:.75rem 3rem .75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:all .2s}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-loading{position:absolute;right:3rem;animation:pulse 1.5s ease-in-out infinite}.search-clear{position:absolute;right:.75rem;background:#ef4444;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.2rem;line-height:1;transition:all .2s}.search-clear:hover{background:#dc2626;transform:scale(1.1)}.search-results{margin-top:1rem}.search-results-header{margin-bottom:1rem;padding:.75rem 0;border-bottom:2px solid #e5e7eb}.search-results-header p{color:#6b7280;font-weight:600;margin:0}.search-results-list{display:flex;flex-direction:column;gap:1rem}.search-result-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .2s}.search-result-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f61a;transform:translateY(-2px)}.result-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.result-header h4{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.result-meta{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.result-mrn{font-size:.85rem;color:#6b7280;font-weight:600}.result-status{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.result-status.status-active{background:#d1fae5;color:#065f46}.result-status.status-admitted{background:#dbeafe;color:#1e40af}.result-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1rem;padding:1rem;background:#f9fafb;border-radius:8px}.result-detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.85rem;color:#6b7280;font-weight:600}.detail-value{font-size:.95rem;color:#1f2937;font-weight:500}.result-actions{display:flex;gap:.75rem;flex-wrap:wrap;padding-top:1rem;border-top:1px solid #e5e7eb}.btn-action{flex:1;min-width:140px;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#1f2937;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-action:hover{border-color:#3b82f6;background:#eff6ff;color:#1e40af;transform:translateY(-1px)}.btn-view-history{border-color:#6366f1;color:#6366f1}.btn-view-history:hover{background:#eef2ff;border-color:#4f46e5}.btn-appointment{border-color:#10b981;color:#10b981}.btn-appointment:hover{background:#ecfdf5;border-color:#059669}.btn-billing{border-color:#f59e0b;color:#f59e0b}.btn-billing:hover{background:#fffbeb;border-color:#d97706}.btn-small{padding:.5rem 1rem;font-size:.85rem;background:#e0e7ff;color:#3730a3;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.btn-small:hover{background:#c7d2fe;transform:translateY(-1px)}.recent-payments-section{margin-top:2rem}.payments-list{display:flex;flex-direction:column;gap:1rem}.payment-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:1.25rem;transition:all .2s}.payment-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#2563eb}.payment-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.payment-card-header strong{font-size:1.1rem;color:#1f2937}.payment-date{font-size:.85rem;color:#6b7280}.payment-status{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.payment-status.status-paid{background:#d1fae5;color:#065f46}.payment-status.status-pending{background:#fef3c7;color:#92400e}.payment-status.status-partial{background:#dbeafe;color:#1e40af}.payment-card-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1rem;font-size:.9rem;color:#4b5563}.payment-card-details p{margin:0}.payment-card-details strong{color:#1f2937;margin-right:.5rem}.payment-card-actions{padding-top:1rem;border-top:1px solid #e5e7eb;display:flex;gap:.5rem}.search-no-results{text-align:center;padding:3rem;color:#6b7280}.search-no-results p{margin:.5rem 0}.search-hint{font-size:.9rem;color:#9ca3af;font-style:italic}.search-placeholder{text-align:center;padding:4rem 2rem;color:#6b7280}.search-placeholder-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.search-placeholder h4{font-size:1.5rem;color:#1f2937;margin-bottom:1rem}.search-placeholder p{font-size:1rem;margin-bottom:1rem}.search-placeholder ul{list-style:none;padding:0;margin:1rem auto 0;max-width:400px;text-align:left}.search-placeholder li{padding:.5rem 0 .5rem 1.5rem;position:relative}.search-placeholder li:before{content:"✓";position:absolute;left:0;color:#10b981;font-weight:700}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.doctor{padding:2rem;max-width:1400px;margin:0 auto}.doctor-header{margin-bottom:2rem}.doctor-header h2{font-size:1.75rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.doctor-header p{color:#6b7280;font-size:.95rem}.doctor-loading,.doctor-error{padding:2rem;text-align:center;color:#6b7280}.doctor-error{background:#fee2e2;color:#dc2626;border-radius:8px;padding:1rem;margin-bottom:1rem}.doctor-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #e5e7eb;padding-bottom:.5rem}.doctor-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;background:transparent;color:#6b7280;font-weight:600;font-size:.95rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.doctor-tab:hover{color:#2f62ff;background:#f0f4ff;border-radius:8px 8px 0 0}.doctor-tab.active{color:#2f62ff;border-bottom-color:#2f62ff}.doctor-content{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.doctor-section{animation:fadeIn .3s ease}.patients-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.patient-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .2s}.patient-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px);border-color:#2f62ff}.patient-card.selected{border-color:#2f62ff;background:#f0f4ff}.patient-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.patient-header h4{font-size:1.25rem;font-weight:700;color:#1f2937}.patient-id{font-size:.75rem;color:#6b7280;font-weight:600}.patient-info{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;font-size:.9rem;color:#4b5563}.patient-history{margin-bottom:1rem;padding:.75rem;background:#fff;border-radius:8px;border-left:3px solid #3b82f6}.patient-history strong{display:block;margin-bottom:.5rem;color:#1f2937}.patient-history p{color:#6b7280;font-size:.9rem;line-height:1.5}.patient-allergies{margin-bottom:1rem;padding:.75rem;background:#fef2f2;border-radius:8px;border-left:3px solid #ef4444;color:#991b1b;font-size:.9rem}.patient-actions{display:flex;gap:.5rem;flex-wrap:wrap}.prescriptions-list{display:flex;flex-direction:column;gap:1rem}.prescription-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.prescription-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.prescription-header h4{font-size:1.1rem;font-weight:700;color:#1f2937;margin-bottom:.25rem}.prescription-date{font-size:.85rem;color:#6b7280}.prescription-status{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.prescription-status.pending{background:#fef3c7;color:#92400e}.prescription-status.fulfilled,.prescription-status.completed{background:#d1fae5;color:#065f46}.prescription-diagnosis,.prescription-notes{margin-bottom:1rem;padding:.75rem;background:#fff;border-radius:8px}.prescription-diagnosis strong,.prescription-notes strong{display:block;margin-bottom:.5rem;color:#1f2937}.prescription-items{padding:.75rem;background:#fff;border-radius:8px}.prescription-items strong{display:block;margin-bottom:.5rem;color:#1f2937}.prescription-items ul{list-style:none;padding:0;margin:0}.prescription-items li{padding:.5rem 0;color:#4b5563;font-size:.9rem;border-bottom:1px solid #f3f4f6}.prescription-items li:last-child{border-bottom:none}.prescription-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb;display:flex;gap:.5rem;justify-content:flex-end}.btn-print{background:#10b981;color:#fff}.btn-print:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.history-view{display:flex;flex-direction:column;gap:1.5rem}.history-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.history-section h4{font-size:1.25rem;font-weight:700;color:#1f2937;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.info-grid div{padding:.75rem;background:#fff;border-radius:8px;color:#4b5563}.info-grid strong{color:#1f2937;margin-right:.5rem}.allergy-warning{padding:.75rem;background:#fef2f2;border-radius:8px;color:#991b1b;font-weight:600}.history-section ul{list-style:none;padding:0;margin:0}.history-section li{padding:.75rem;background:#fff;border-radius:8px;margin-bottom:.5rem;color:#4b5563}.prescription-card-wrapper{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.prescription-view{max-width:800px;margin:0 auto;color:#1f2937}.prescription-view-header{border-bottom:3px solid #2f62ff;padding-bottom:1.5rem;margin-bottom:2rem;display:flex;justify-content:space-between;align-items:flex-start}.prescription-view-header-left{display:flex;align-items:center;gap:1rem}.prescription-logo{width:60px;height:60px;flex-shrink:0}.prescription-logo img{width:100%;height:100%;object-fit:contain}.prescription-clinic-info{flex:1}.prescription-clinic-name{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:.25rem}.prescription-subtitle{font-size:.9rem;color:#6b7280}.prescription-view-number{text-align:right}.prescription-view-label{font-size:.85rem;color:#6b7280;margin-bottom:.25rem}.prescription-view-number-value{font-size:1.1rem;font-weight:600;color:#2f62ff}.prescription-view-section{margin-bottom:2rem}.prescription-view-section-title{font-size:1.1rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.prescription-view-patient-info{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.prescription-view-info-item{padding:.75rem}.prescription-view-info-label{font-size:.85rem;color:#6b7280;margin-bottom:.25rem}.prescription-view-info-value{font-size:1rem;font-weight:600;color:#1f2937}.prescription-view-notes-box{padding:1rem;border-left:4px solid #2f62ff;margin-bottom:1rem}.prescription-view-notes-box strong{display:block;margin-bottom:.5rem;color:#1f2937;font-size:.9rem}.prescription-view-medications-table{width:100%;border-collapse:collapse;margin-top:1rem}.prescription-view-medications-table th{background:#2f62ff;color:#fff;padding:.75rem;text-align:left;font-weight:600;font-size:.9rem}.prescription-view-medications-table td{padding:.75rem;border-bottom:1px solid #e5e7eb;font-size:.9rem}.prescription-view-medications-table tr:last-child td{border-bottom:none}.prescription-view-footer{margin-top:3rem;padding-top:2rem;display:flex;justify-content:flex-end}.prescription-view-doctor-signature{text-align:right}.prescription-view-signature-line{border-top:2px solid #1f2937;width:200px;margin-top:3rem;margin-left:auto}.prescription-view-doctor-name{margin-top:.5rem;font-weight:600;color:#1f2937}.prescription-form-modal{max-width:900px;width:100%;max-height:95vh;overflow-y:auto}.prescription-form-header{padding:1.5rem;display:flex;justify-content:space-between;align-items:flex-start;position:relative;background:#fff}.prescription-form-header-left{display:flex;align-items:center;gap:1rem;flex:1}.prescription-form-logo{width:60px;height:60px;flex-shrink:0}.prescription-form-logo img{width:100%;height:100%;object-fit:contain}.prescription-form-clinic-info{flex:1}.prescription-form-clinic-name{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:.25rem}.prescription-form-subtitle{font-size:.9rem;color:#6b7280}.prescription-form-number{text-align:right;margin-right:2rem}.prescription-form-label{font-size:.85rem;color:#6b7280;margin-bottom:.25rem}.prescription-form-number-value{font-size:1.1rem;font-weight:600;color:#2f62ff}.prescription-form-close{position:absolute;top:0;right:0;background:none;border:none;font-size:2rem;color:#6b7280;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.prescription-form-close:hover{background:#f3f4f6;color:#1f2937}.prescription-form-body{padding:2rem}.prescription-form-section{margin-bottom:2.5rem;background:#fff;padding:1.5rem;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d}.prescription-form-section-title{font-size:1.25rem;font-weight:700;color:#1e293b;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;border-bottom:2px solid #e2e8f0}.prescription-form-patient-select{margin-bottom:1rem}.prescription-form-patient-select label{display:block;font-weight:600;color:#374151;margin-bottom:.5rem;font-size:.9rem}.prescription-form-select{width:100%;padding:.875rem;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;transition:all .2s;background:#fff;color:#1e293b;cursor:pointer}.prescription-form-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.prescription-form-select:hover{border-color:#cbd5e1}.prescription-form-patient-info{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:1.5rem}.prescription-form-info-item{padding:1rem;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0;transition:all .2s}.prescription-form-info-item:hover{background:#f1f5f9;border-color:#cbd5e1}.prescription-form-info-label{font-size:.875rem;color:#64748b;margin-bottom:.5rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.prescription-form-info-value{font-size:1.125rem;font-weight:600;color:#1e293b}.prescription-form-date-input{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;margin-top:.25rem;transition:all .2s}.prescription-form-date-input:focus{outline:none;border-color:#2f62ff;box-shadow:0 0 0 2px #2f62ff1a}.prescription-form-date-display{font-size:.85rem;color:#6b7280;margin-top:.25rem;font-style:italic}.prescription-form-notes-box{padding:1rem;border-left:4px solid #2f62ff;background:#f9fafb;border-radius:8px}.prescription-form-notes-box label{display:block;width:100%}.prescription-form-notes-box strong{display:block;margin-bottom:.5rem;color:#1f2937;font-size:.9rem}.prescription-form-textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;font-family:inherit;resize:vertical;transition:all .2s}.prescription-form-textarea:focus{outline:none;border-color:#2f62ff;box-shadow:0 0 0 3px #2f62ff1a}.prescription-form-add-medication{padding:.5rem 1rem;background:#2f62ff;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.prescription-form-add-medication:hover{background:#1e4fd9;transform:translateY(-1px)}.prescription-form-medications-wrapper{overflow-x:auto;margin-top:1rem}.prescription-form-medications-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}.prescription-form-medications-table th{background:#2f62ff;color:#fff;padding:.75rem;text-align:left;font-weight:600;font-size:.9rem}.prescription-form-medications-table td{padding:.5rem;border-bottom:1px solid #e5e7eb}.prescription-form-medications-table tr:last-child td{border-bottom:none}.prescription-form-input{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;transition:all .2s}.prescription-form-input:focus{outline:none;border-color:#2f62ff;box-shadow:0 0 0 2px #2f62ff1a}.prescription-form-remove-btn{padding:.5rem 1rem;background:#ef4444;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #ef44444d}.prescription-form-remove-btn:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 2px 6px #ef444466}.prescription-form-remove-btn:active{transform:translateY(0)}.prescription-form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:2px solid #e5e7eb}.prescription-modal-content{background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:95vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.prescription-form-clinic-info{display:flex;align-items:center;gap:1.25rem;flex:1}.prescription-form-clinic-text{flex:1}.prescription-form-clinic-name{font-size:1.75rem;font-weight:700;color:#1e293b;margin-bottom:.25rem;letter-spacing:-.025em}.prescription-form-clinic-subtitle{font-size:.95rem;color:#64748b;font-weight:500}.prescription-form-number-label{font-size:.875rem;color:#64748b;margin-bottom:.5rem;font-weight:500}.prescription-form-number-value{font-size:1.5rem;font-weight:700;color:#2563eb;letter-spacing:-.025em}.prescription-form-divider{height:4px;background:linear-gradient(to right,#2563eb,#3b82f6);margin:0 2rem 2rem;border-radius:2px}.prescription-form-group{margin-bottom:1.5rem}.prescription-form-label{display:block;font-weight:600;color:#374151;margin-bottom:.75rem;font-size:.95rem}.prescription-form-age-input{width:100%;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;margin-top:.5rem;transition:all .2s;background:#fff}.prescription-form-age-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.prescription-form-notes-container{display:flex;gap:1.25rem;margin-top:1rem;background:#f8fafc;padding:1.25rem;border-radius:10px;border:1px solid #e2e8f0}.prescription-form-notes-bar{width:5px;background:linear-gradient(to bottom,#2563eb,#3b82f6);border-radius:3px;flex-shrink:0;box-shadow:0 2px 4px #2563eb33}.prescription-form-notes-input{flex:1;padding:1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;font-family:inherit;resize:vertical;background:#fff;transition:all .2s;line-height:1.6}.prescription-form-notes-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;background:#fff}.prescription-form-notes-input::placeholder{color:#94a3b8}.prescription-form-add-medication{margin-top:1.25rem;padding:1rem;background:#f8fafc;border-radius:8px;border:1.5px dashed #cbd5e1;transition:all .2s}.prescription-form-add-medication:hover{border-color:#2563eb;background:#f1f5f9;border-style:solid}.prescription-form-medication-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:.5rem;align-items:center;max-width:100%}.prescription-form-medication-input{padding:.5rem .625rem;border:1.5px solid #e2e8f0;border-radius:6px;font-size:.875rem;background:#fff;transition:all .2s;height:38px;box-sizing:border-box;width:100%;min-width:0}.prescription-form-medication-input::placeholder{color:#94a3b8;font-size:.85rem}.prescription-form-medication-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a;background:#fff}.prescription-form-medication-input:hover{border-color:#cbd5e1}.prescription-form-add-btn{padding:.5rem 1rem;background:linear-gradient(to bottom,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #2563eb4d;white-space:nowrap;height:38px;display:flex;align-items:center;justify-content:center;min-width:70px}.prescription-form-add-btn:hover{background:linear-gradient(to bottom,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 3px 6px #2563eb66}.prescription-form-add-btn:active{transform:translateY(0)}.prescription-form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2.5rem;padding-top:2rem;border-top:2px solid #e2e8f0}.prescription-form-cancel-btn{padding:.875rem 2rem;background:#fff;color:#64748b;border:2px solid #e2e8f0;border-radius:10px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s}.prescription-form-cancel-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#475569;transform:translateY(-1px)}.prescription-form-submit-btn{padding:.875rem 2rem;background:linear-gradient(to bottom,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:10px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s;box-shadow:0 4px 6px #2563eb4d}.prescription-form-submit-btn:hover{background:linear-gradient(to bottom,#1d4ed8,#1e40af);transform:translateY(-2px);box-shadow:0 6px 12px #2563eb66}.prescription-form-submit-btn:active{transform:translateY(0)}@media(max-width:768px){.doctor{padding:1rem}.doctor-tabs{flex-wrap:wrap}.patients-list{grid-template-columns:1fr}.section-actions{flex-direction:column;width:100%}.section-actions button{width:100%}.modal-content{margin:1rem;max-height:calc(100vh - 2rem)}.prescription-view-header{flex-direction:column;gap:1rem}.prescription-view-number{text-align:left}.prescription-view-patient-info{grid-template-columns:1fr}.prescription-form-header{flex-direction:column;gap:1rem}.prescription-form-number{text-align:left;margin-right:0}.prescription-form-close{top:-.5rem;right:-.5rem}.prescription-form-patient-info{grid-template-columns:1fr}.prescription-form-medications-wrapper{overflow-x:scroll}.prescription-form-medications-table{min-width:600px}}.ipd{padding:2rem;max-width:1400px;margin:0 auto}.ipd-header{margin-bottom:2rem}.ipd-header h2{font-size:1.75rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.ipd-header p{color:#6b7280;font-size:.95rem}.ipd-loading,.ipd-error{padding:2rem;text-align:center;color:#6b7280}.ipd-error{background:#fee2e2;color:#dc2626;border-radius:8px;padding:1rem;margin-bottom:1rem}.ipd-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #e5e7eb;padding-bottom:.5rem}.ipd-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;background:transparent;color:#6b7280;font-weight:600;font-size:.95rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.ipd-tab:hover{color:#2f62ff;background:#f0f4ff;border-radius:8px 8px 0 0}.ipd-tab.active{color:#2f62ff;border-bottom-color:#2f62ff}.ipd-content{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.ipd-section{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h3{font-size:1.5rem;font-weight:700;color:#1f2937}.section-actions{display:flex;gap:.75rem}.btn-primary,.btn-secondary,.btn-small{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s}.btn-primary{background:#2f62ff;color:#fff}.btn-primary:hover{background:#1e4fd9;transform:translateY(-1px);box-shadow:0 4px 12px #2f62ff4d}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover{background:#e5e7eb}.btn-small{padding:.5rem 1rem;font-size:.85rem;background:#e0e7ff;color:#3730a3}.btn-small:hover{background:#c7d2fe}.admissions-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;padding:1.5rem;text-align:center}.stat-card:nth-child(2){background:linear-gradient(135deg,#f093fb,#f5576c)}.stat-card:nth-child(3){background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-value{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.stat-label{font-size:.95rem;opacity:.9}.admissions-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.admission-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .2s}.admission-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.admission-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.admission-header h4{font-size:1.25rem;font-weight:700;color:#1f2937;margin-bottom:.25rem}.admission-id{font-size:.75rem;color:#6b7280}.admission-status{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.admission-status.admitted{background:#d1fae5;color:#065f46}.admission-status.discharged{background:#dbeafe;color:#1e40af}.admission-details{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem}.detail-item{padding:.75rem;background:#fff;border-radius:8px;font-size:.9rem;color:#4b5563}.detail-item strong{color:#1f2937;margin-right:.5rem}.admission-actions{display:flex;gap:.5rem;flex-wrap:wrap}.wards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.ward-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.ward-card h4{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.ward-rooms{display:flex;flex-direction:column;gap:1rem}.room-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.room-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.room-header strong{color:#1f2937;font-size:1.1rem}.room-occupancy{font-size:.85rem;color:#6b7280;background:#f3f4f6;padding:.25rem .75rem;border-radius:20px}.beds{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.bed{padding:.75rem;border-radius:8px;text-align:center;font-size:.9rem;font-weight:600;transition:all .2s}.bed.available{background:#d1fae5;color:#065f46;border:2px solid #10b981}.bed.occupied{background:#fee2e2;color:#991b1b;border:2px solid #ef4444}.bed-patient{display:block;font-size:.75rem;font-weight:400;margin-top:.25rem;opacity:.8}.notes-list{display:flex;flex-direction:column;gap:1rem}.note-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.note-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.note-header h4{font-size:1.1rem;font-weight:700;color:#1f2937}.note-date{font-size:.85rem;color:#6b7280}.note-content p{color:#4b5563;margin-bottom:1rem}.billing-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.info-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.info-card h4{font-size:1.1rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.info-card ul{list-style:none;padding:0;margin:0}.info-card li{padding:.5rem 0;color:#4b5563;font-size:.95rem}.billing-total{background:#f0f4ff;border:2px solid #2f62ff;border-radius:8px;padding:1rem;text-align:center;margin:1rem 0;font-size:1.25rem;color:#1e40af}.empty-state{text-align:center;padding:3rem;color:#6b7280;font-size:1rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3{font-size:1.5rem;font-weight:700;color:#1f2937}.modal-close{background:none;border:none;font-size:2rem;color:#6b7280;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-content form{padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:600;color:#374151;margin-bottom:.5rem;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2f62ff;box-shadow:0 0 0 3px #2f62ff1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}@media(max-width:768px){.ipd{padding:1rem}.ipd-tabs{flex-wrap:wrap}.admissions-list,.wards-grid,.beds,.form-row{grid-template-columns:1fr}.modal-content{margin:1rem;max-height:calc(100vh - 2rem)}}.dental-container{max-width:1200px;margin:0 auto;padding:2rem;background:#fff;min-height:100vh}.dental-header{background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-radius:16px;padding:3rem 2.5rem;margin-bottom:3rem;box-shadow:0 4px 20px #0ea5e91a}.dental-header-content{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.dental-icon-large{font-size:4rem;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.dental-title{font-size:2.25rem;font-weight:700;color:#0c4a6e;margin:0 0 1rem;line-height:1.2}.dental-subtitle{font-size:1.1rem;color:#075985;line-height:1.6;margin:0;max-width:600px}.dental-services-section{margin-bottom:3rem}.dental-section-title{font-size:1.875rem;font-weight:700;color:#1f2937;margin:0 0 .75rem;text-align:center}.dental-section-description{font-size:1rem;color:#6b7280;text-align:center;margin:0 0 2.5rem;max-width:700px;margin-left:auto;margin-right:auto}.dental-services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.dental-service-card{background:#fff;border:2px solid #e0f2fe;border-radius:12px;padding:2rem;text-align:center;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden}.dental-service-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#06b6d4,#0891b2);transform:scaleX(0);transition:transform .3s ease}.dental-service-card:hover{border-color:#06b6d4;box-shadow:0 8px 24px #06b6d426;transform:translateY(-4px)}.dental-service-card:hover:before{transform:scaleX(1)}.dental-service-icon{font-size:3rem;margin-bottom:1rem;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.dental-service-name{font-size:1.25rem;font-weight:700;color:#0c4a6e;margin:0 0 .75rem}.dental-service-description{font-size:.95rem;color:#64748b;line-height:1.6;margin:0}.dental-cta-section{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:16px;padding:3rem 2.5rem;margin-top:3rem;box-shadow:0 4px 20px #0ea5e91a}.dental-cta-content{display:flex;align-items:center;gap:2rem;flex-wrap:wrap;justify-content:center}.dental-cta-icon{font-size:4rem;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.dental-cta-text{flex:1;min-width:250px;text-align:center}.dental-cta-title{font-size:1.75rem;font-weight:700;color:#0c4a6e;margin:0 0 .75rem}.dental-cta-description{font-size:1rem;color:#075985;line-height:1.6;margin:0}.dental-cta-button{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff;border:none;border-radius:12px;padding:1rem 2.5rem;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #06b6d44d;white-space:nowrap}.dental-cta-button:hover{background:linear-gradient(135deg,#0891b2,#0e7490);box-shadow:0 6px 20px #06b6d466;transform:translateY(-2px)}.dental-cta-button:active{transform:translateY(0)}.dental-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.dental-modal{background:#fff;border-radius:12px;padding:2rem;text-align:center;min-width:300px}.dental-modal-spinner{width:40px;height:40px;border:4px solid #e0f2fe;border-top-color:#06b6d4;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{to{transform:rotate(360deg)}}.dental-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #e0f2fe;padding-bottom:.5rem}.dental-tab{background:transparent;border:none;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;color:#64748b;cursor:pointer;border-bottom:3px solid transparent;transition:all .3s ease;margin-bottom:-.5rem}.dental-tab:hover{color:#06b6d4}.dental-tab.active{color:#06b6d4;border-bottom-color:#06b6d4}.dental-register-section,.dental-payment-section,.dental-history-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000000d}.dental-section-header{margin-bottom:2rem;text-align:center}.dental-action-button{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff;border:none;border-radius:12px;padding:1rem 2rem;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #06b6d44d;margin-bottom:2rem}.dental-action-button:hover{background:linear-gradient(135deg,#0891b2,#0e7490);box-shadow:0 6px 20px #06b6d466;transform:translateY(-2px)}.dental-patients-list{margin-top:2rem}.dental-patients-list h3{font-size:1.5rem;color:#0c4a6e;margin-bottom:1.5rem}.dental-patients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.dental-patient-card{background:#f8fafc;border:2px solid #e0f2fe;border-radius:12px;padding:1.5rem;transition:all .3s ease}.dental-patient-card:hover{border-color:#06b6d4;box-shadow:0 4px 12px #06b6d426}.dental-patient-card h4{font-size:1.1rem;color:#0c4a6e;margin:0 0 .75rem}.dental-patient-card p{font-size:.9rem;color:#64748b;margin:.5rem 0}.dental-patient-action-btn{width:100%;margin-top:1rem;background:#06b6d4;color:#fff;border:none;border-radius:8px;padding:.75rem;font-weight:600;cursor:pointer;transition:all .3s ease}.dental-patient-action-btn:hover{background:#0891b2;transform:translateY(-2px)}.dental-selected-patient{background:#e0f2fe;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.dental-selected-patient h3{margin:0;color:#0c4a6e}.dental-clear-btn{background:#dc2626;color:#fff;border:none;border-radius:8px;padding:.5rem 1rem;font-weight:600;cursor:pointer}.dental-clear-btn:hover{background:#b91c1c}.dental-info-text{color:#64748b;font-size:.9rem;margin-bottom:1.5rem;text-align:center}.dental-empty-state{text-align:center;padding:3rem;background:#f8fafc;border-radius:12px;border:2px dashed #e0f2fe}.dental-empty-state p{color:#64748b;font-size:1rem;margin:.5rem 0}.dental-empty-icon{font-size:4rem;margin-bottom:1rem}.dental-empty-hint{font-size:.9rem;color:#94a3b8;font-style:italic;margin-top:1rem!important}.dental-history-section{margin-bottom:3rem}.dental-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.dental-refresh-btn{background:#06b6d4;color:#fff;border:none;border-radius:8px;padding:.5rem 1rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem}.dental-refresh-btn:hover:not(:disabled){background:#0891b2;transform:translateY(-2px)}.dental-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.dental-loading{text-align:center;padding:3rem;color:#64748b;font-size:1.1rem}.dental-payments-table{overflow-x:auto;margin-top:1.5rem}.dental-payments-table table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.dental-payments-table thead{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff}.dental-payments-table th{padding:1rem;text-align:left;font-weight:600;font-size:.95rem;text-transform:uppercase;letter-spacing:.5px}.dental-payments-table tbody tr{border-bottom:1px solid #e0f2fe;transition:background .2s ease}.dental-payments-table tbody tr:hover{background:#f0f9ff}.dental-payments-table tbody tr:last-child{border-bottom:none}.dental-payments-table td{padding:1rem;color:#1f2937;font-size:.95rem}.dental-payments-table tfoot{background:#f8fafc;font-weight:600}.dental-payments-table tfoot td{padding:1.25rem 1rem;color:#0c4a6e;border-top:2px solid #e0f2fe}.dental-amount{font-weight:600;color:#059669}.dental-payment-method{display:inline-block;padding:.25rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600;text-transform:capitalize;background:#e0f2fe;color:#0c4a6e}.dental-payment-method.cash{background:#dcfce7;color:#166534}.dental-payment-method.card{background:#dbeafe;color:#1e40af}.dental-payment-method.mobile{background:#fef3c7;color:#92400e}.dental-payment-status{display:inline-block;padding:.25rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600;text-transform:capitalize}.dental-payment-status.paid{background:#dcfce7;color:#166534}.dental-payment-status.pending{background:#fef3c7;color:#92400e}.dental-payment-status.failed{background:#fee2e2;color:#991b1b}.dental-form-info{background:#e0f2fe;border-radius:8px;padding:1rem;margin-top:1rem}.dental-form-info p{margin:0;color:#075985;font-size:.9rem;line-height:1.5}.dental-form-hint{margin-top:.5rem;font-size:.85rem;color:#dc2626;font-style:italic}.dental-modal-content{background:#fff;border-radius:16px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.dental-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e0f2fe}.dental-modal-header h3{margin:0;font-size:1.5rem;color:#0c4a6e}.dental-modal-close{background:transparent;border:none;font-size:2rem;color:#64748b;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.dental-modal-close:hover{background:#f1f5f9;color:#0c4a6e}.dental-form-group{margin-bottom:1.5rem}.dental-form-group label{display:block;font-weight:600;color:#0c4a6e;margin-bottom:.5rem;font-size:.95rem}.dental-form-group input,.dental-form-group select,.dental-form-group textarea{width:100%;padding:.75rem;border:2px solid #e0f2fe;border-radius:8px;font-size:1rem;transition:all .3s ease;font-family:inherit}.dental-form-group input:focus,.dental-form-group select:focus,.dental-form-group textarea:focus{outline:none;border-color:#06b6d4;box-shadow:0 0 0 3px #06b6d41a}.dental-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.dental-modal-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:2px solid #e0f2fe}.dental-btn-primary,.dental-btn-secondary{flex:1;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;border:none}.dental-btn-primary{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff;box-shadow:0 4px 12px #06b6d44d}.dental-btn-primary:hover{background:linear-gradient(135deg,#0891b2,#0e7490);box-shadow:0 6px 20px #06b6d466;transform:translateY(-2px)}.dental-btn-secondary{background:#f1f5f9;color:#64748b}.dental-btn-secondary:hover{background:#e2e8f0;color:#475569}@media(max-width:768px){.dental-container{padding:1.5rem}.dental-header{padding:2rem 1.5rem}.dental-header-content{flex-direction:column;text-align:center}.dental-icon-large{font-size:3rem}.dental-title{font-size:1.75rem}.dental-subtitle{font-size:1rem}.dental-services-grid{grid-template-columns:1fr;gap:1.25rem}.dental-service-card{padding:1.5rem}.dental-cta-section{padding:2rem 1.5rem}.dental-cta-content{flex-direction:column;text-align:center}.dental-cta-icon{font-size:3rem}.dental-cta-title{font-size:1.5rem}.dental-cta-button{width:100%;padding:1rem}.dental-tabs{flex-wrap:wrap}.dental-tab{flex:1;min-width:120px;padding:.5rem 1rem;font-size:.9rem}.dental-patients-grid,.dental-form-row{grid-template-columns:1fr}.dental-selected-patient{flex-direction:column;align-items:flex-start;gap:1rem}.dental-modal-content{width:95%;padding:1.5rem}}@media(max-width:480px){.dental-container{padding:1rem}.dental-title,.dental-section-title{font-size:1.5rem}.dental-service-card{padding:1.25rem}.dental-service-icon{font-size:2.5rem}}
