:root{--primary:#3b82f6;--primary-light:#eff6ff;--secondary:#06b6d4;--secondary-light:#ecfeff;--success:#10b981;--success-light:#f0fdf4;--warning:#f59e0b;--warning-light:#fffbeb;--danger:#ef4444;--danger-light:#fef2f2;--info:#6366f1;--info-light:#eef2ff;--violet:#8b5cf6;--violet-light:#f5f3ff;--pink:#ec4899;--pink-light:#fdf2f8;--background:#f8fafc;--sidebar-bg:#fff;--card-bg:#fff;--text-primary:#1e293b;--text-secondary:#64748b;--border:#e2e8f0;--shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}*{box-sizing:border-box;font-family:Inter,-apple-system,sans-serif;margin:0;padding:0}body{background-color:#f8fafc;background-color:var(--background);color:#1e293b;color:var(--text-primary)}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:16px;padding:1.5rem;transition:all .3s ease}.card:hover{box-shadow:0 10px 15px -3px #0000001a;transform:translateY(-2px)}.bg-blue-gradient{background:linear-gradient(135deg,#3b82f6,#2563eb)}.bg-teal-gradient{background:linear-gradient(135deg,#06b6d4,#0891b2)}.bg-emerald-gradient{background:linear-gradient(135deg,#10b981,#059669)}.bg-amber-gradient{background:linear-gradient(135deg,#f59e0b,#d97706)}.bg-indigo-gradient{background:linear-gradient(135deg,#6366f1,#4f46e5)}.bg-violet-gradient{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.bg-rose-gradient{background:linear-gradient(135deg,#ef4444,#dc2626)}.bg-pink-gradient{background:linear-gradient(135deg,#ec4899,#db2777)}select{appearance:none!important;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-position:right .75rem center!important;background-repeat:no-repeat!important;background-size:.95rem!important;padding-right:2.2rem!important}.empty-state-container{background-color:#fff;background-color:var(--card-bg);border-radius:16px;width:100%}.empty-state-card{align-items:center;display:flex;flex-direction:column;gap:.75rem;max-width:420px;text-align:center}.empty-state-icon{align-items:center;background:#f8fafc;background:var(--background);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:50%;box-sizing:initial;color:#64748b;color:var(--text-secondary);display:inline-flex;justify-content:center;margin-bottom:.5rem;padding:1.25rem}.empty-state-card h4{color:#1e293b;color:var(--text-primary);font-size:1.125rem;font-weight:800;margin:0}.empty-state-card p{color:#64748b;color:var(--text-secondary);font-size:.875rem;line-height:1.6;margin:0}.sidebar{background-color:#fff;border-right:1px solid #f1f5f9;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:280px;z-index:100}.sidebar-header{border-bottom:1px solid #f8fafc;gap:12px;padding:1.5rem}.logo-box,.sidebar-header{align-items:center;display:flex}.logo-box{background-color:#3b82f6;border-radius:12px;box-shadow:0 4px 12px #3b82f640;height:44px;justify-content:center;width:44px}.header-text h2{color:#1e293b;font-size:1.125rem;font-weight:800;letter-spacing:-.025em;margin:0}.header-text span{color:#94a3b8;font-size:.8125rem;font-weight:500}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:4px;min-height:0;overflow-y:auto;padding:1.5rem 1rem}.nav-item{border-radius:12px;color:#64748b;font-size:.875rem;font-weight:600;justify-content:space-between;padding:.875rem 1rem;text-decoration:none!important;transition:all .2s cubic-bezier(.4,0,.2,1)}.nav-icon-label,.nav-item{align-items:center;display:flex}.nav-icon-label{gap:12px}.nav-item:hover{background-color:#f8fafc;color:#1e293b;transform:translateX(4px)}.nav-item.active{background-color:#3b82f6;box-shadow:0 10px 15px -3px #3b82f64d;color:#fff}.nav-item.active .nav-icon-label span{color:#fff}.nav-badge{background-color:#1e293b;border-radius:999px;color:#fff;font-size:.75rem;font-weight:700;padding:2px 8px}.nav-item.active .nav-badge{background-color:#fff3;color:#fff}.sidebar-footer{background-color:#fafbfc;border-top:1px solid #f1f5f9;padding:1.25rem}.footer-user{align-items:center;display:flex;gap:12px;padding:.5rem}.user-avatar img{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;height:40px;width:40px}.user-info{display:flex;flex:1 1;flex-direction:column}.user-name{color:#1e293b;font-size:.875rem;font-weight:700}.user-email{color:#94a3b8;font-size:.75rem;font-weight:500}.logout-mini{align-items:center;background:#ef4444;border:1.5px solid #dc2626;border-radius:10px;box-shadow:0 2px 4px #ef44441a;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .25s cubic-bezier(.4,0,.2,1)}.logout-mini:hover{background-color:#dc2626;box-shadow:0 4px 12px #ef444440;transform:scale(1.08)}.nb-wrapper{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative}.nb-trigger{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#475569;cursor:pointer;display:inline-flex;height:40px;justify-content:center;position:relative;transition:all .18s ease;width:40px}.nb-trigger:hover{background:#f1f5f9;border-color:#cbd5e1;color:#0f172a}.nb-trigger.has-unread{background:#f0f9ff;border-color:#bae6fd;color:#0ea5e9}.nb-trigger.has-unread:hover{background:#e0f2fe}.nb-badge{align-items:center;animation:nb-pop .25s ease;background:linear-gradient(135deg,#ef4444,#dc2626);border:2px solid #fff;border-radius:999px;color:#fff;display:inline-flex;font-size:.65rem;font-weight:800;height:18px;justify-content:center;letter-spacing:.02em;min-width:18px;padding:0 5px;position:absolute;right:-4px;top:-4px}@keyframes nb-pop{0%{transform:scale(0)}to{transform:scale(1)}}.nb-dropdown{animation:nb-slide .18s cubic-bezier(.4,0,.2,1);background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 20px 40px -16px #0f172a38;max-width:calc(100vw - 32px);overflow:hidden;position:absolute;right:0;top:calc(100% + 10px);width:380px;z-index:60}@keyframes nb-slide{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.nb-header{align-items:center;background:linear-gradient(135deg,#0ea5e90d,#4f46e50a);border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:14px 18px}.nb-header h4{color:#0f172a;font-size:.95rem;font-weight:700;letter-spacing:-.01em;margin:0}.nb-header-sub{color:#64748b;display:block;font-size:.72rem;font-weight:500;margin-top:2px}.nb-mark-all{align-items:center;background:#eef2ff;border:1px solid #e0e7ff;border-radius:8px;color:#4f46e5;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.72rem;font-weight:700;gap:6px;padding:5px 10px;transition:background .15s ease}.nb-mark-all:hover{background:#e0e7ff}.nb-list{max-height:460px;overflow-y:auto}.nb-list::-webkit-scrollbar{width:6px}.nb-list::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:999px}.nb-item{align-items:flex-start;border-bottom:1px solid #f8fafc;cursor:pointer;display:flex;gap:12px;padding:12px 18px;position:relative;transition:background .15s ease}.nb-item:hover{background:#f8fafc}.nb-item.unread{background:#f0f9ff}.nb-item.unread:hover{background:#e0f2fe}.nb-item-ico{align-items:center;border-radius:10px;display:inline-flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.nb-item-ico.tone-info{background:#e0f2fe;color:#0284c7}.nb-item-ico.tone-success{background:#dcfce7;color:#16a34a}.nb-item-ico.tone-warning{background:#fef3c7;color:#d97706}.nb-item-ico.tone-critical{background:#fee2e2;color:#dc2626}.nb-item-body{flex:1 1;min-width:0}.nb-item-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.nb-item-title{color:#0f172a;font-size:.85rem;font-weight:700;line-height:1.3}.nb-item-cat{align-items:center;background:#f1f5f9;border-radius:999px;color:#64748b;display:inline-flex;font-size:.6rem;font-weight:700;gap:3px;letter-spacing:.06em;padding:2px 6px;text-transform:uppercase}.nb-item-msg{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#475569;display:-webkit-box;font-size:.78rem;line-height:1.4;margin:4px 0 0;overflow:hidden}.nb-item-time{color:#94a3b8;display:block;font-size:.68rem;font-weight:500;margin-top:4px}.nb-item-close{align-items:center;background:#0000;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;display:inline-flex;flex-shrink:0;height:22px;justify-content:center;transition:background .15s ease,color .15s ease;width:22px}.nb-item-close:hover{background:#fee2e2;color:#dc2626}.nb-unread-dot{background:#0ea5e9;border-radius:50%;box-shadow:0 0 0 3px #0ea5e92e;height:7px;position:absolute;right:8px;top:14px;width:7px}.nb-item.unread .nb-item-close+.nb-unread-dot{display:none}.nb-empty{align-items:center;color:#94a3b8;display:flex;flex-direction:column;gap:10px;padding:2.5rem 1.5rem;text-align:center}.nb-empty p{color:#475569;font-size:.85rem;font-weight:700;margin:0}.nb-empty span{color:#94a3b8;font-size:.75rem;line-height:1.4;max-width:240px}.nb-footer{background:#fafbff;border-top:1px solid #f1f5f9;padding:10px 14px}.nb-see-all{background:#0000;border:none;border-radius:8px;color:#4f46e5;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:700;padding:8px;transition:background .15s ease;width:100%}.nb-see-all:hover{background:#eef2ff}@media (max-width:480px){.nb-dropdown{right:-10px;width:320px}}.layout{background-color:#f8fafc;display:flex;min-height:100vh}.main-content{display:flex;flex:1 1;flex-direction:column;margin-left:280px;width:calc(100% - 280px)}.content-header{align-items:center;background-color:#fff;border-bottom:1px solid #eef2f6;display:flex;height:70px;justify-content:space-between;padding:0 2rem;position:sticky;top:0;z-index:1000}.header-search-container{align-items:center;background-color:#f8fafc;border-radius:10px;color:#64748b;display:flex;gap:10px;padding:.625rem 1rem;width:400px}.header-search-container input{background:#0000;border:none;color:#1e293b;font-size:.875rem;outline:none;width:100%}.header-page-title{color:#1e293b;font-size:1.5rem;font-weight:800;letter-spacing:-.02em;margin:0}.notif-box{color:#64748b;cursor:pointer;position:relative}.notif-dot{background-color:#ef4444;border:1.5px solid #fff;border-radius:50%;height:8px;position:absolute;right:-1px;top:-1px;width:8px}.user-profile-header{align-items:center;display:flex;gap:10px}.avatar-header{align-items:center;background-color:#06b6d4;border-radius:50%;color:#fff;display:flex;font-size:1rem;font-weight:700;height:36px;justify-content:center;width:36px}.user-name-header{color:#1e293b;font-size:.9375rem;font-weight:600}.page-container{flex:1 1;padding:1.5rem 1rem}.session-report-modal.modal-content{border-radius:24px;max-width:850px!important;width:90%!important}.report-header{border-bottom:1px solid #f1f5f9;padding:1.5rem 2rem}.patient-meta-row{align-items:center;display:flex;gap:10px;margin-top:4px}.meta-item{color:#64748b;font-size:.8125rem;font-weight:500}.meta-divider{color:#cbd5e1;font-size:.75rem}.report-info-bar{grid-gap:1.5rem;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:16px;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.5rem;padding:1.25rem 1.5rem}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{color:#64748b;font-size:.65rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.info-value{color:#1e293b;font-size:.9375rem;font-weight:700}.report-vitals-grid{grid-gap:1.25rem 1.75rem;background:#fff;border:1.5px solid #cbd5e1;border-radius:20px;display:grid;gap:1.25rem 1.75rem;grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem;padding:1.5rem}.session-report-modal .form-group label{align-items:center;color:#475569;display:flex;font-size:.75rem;font-weight:700;gap:8px;letter-spacing:.04em;margin-bottom:10px;text-transform:uppercase}.session-report-modal .form-group label svg{color:#0ea5e9}.session-report-modal input,.session-report-modal select,.session-report-modal textarea{background:#fcfdfe;border:1.5px solid #cbd5e1;border-radius:14px;color:#1e293b;font-size:.9375rem;font-weight:700;outline:none;padding:.875rem 1.125rem;transition:all .2s;width:100%}.session-report-modal select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%230ea5e9' stroke-width='3'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m19.5 8.25-7.5 7.5-7.5-7.5'/%3E%3C/svg%3E");background-position:right 1.25rem center;background-repeat:no-repeat;background-size:1.125rem;cursor:pointer;padding-right:3rem}.session-report-modal select optgroup{color:#64748b;font-size:.8125rem;font-weight:800;padding:10px}.session-report-modal input:focus,.session-report-modal select:focus,.session-report-modal textarea:focus{background:#fff;border-color:#22c55e;box-shadow:0 0 0 4px #22c55e14}.report-footer{grid-gap:1rem;background:#fff;display:grid;gap:1rem;grid-template-columns:1fr 2fr;padding:1.5rem 2rem}.cancel-btn-alt{background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:800;padding:.875rem;transition:all .2s}.cancel-btn-alt:hover{background:#f8fafc;border-color:#cbd5e1}.complete-btn-large{align-items:center;background:#22c55e;border:none;border-radius:14px;box-shadow:0 4px 12px #22c55e33;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:800;gap:10px;justify-content:center;padding:.875rem;transition:all .2s}.complete-btn-large:hover{background:#16a34a;box-shadow:0 6px 16px #22c55e4d;transform:translateY(-1px)}.complete-btn-large:active{transform:translateY(0)}.report-section-title{align-items:center;border-bottom:2px solid #f1f5f9;color:#1e293b;display:flex;font-weight:700;gap:10px;margin:1.5rem 0 1rem;padding-bottom:.5rem}.consumables-search-wrapper{margin-bottom:1rem;position:relative}.search-input-group{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;gap:10px;padding:0 1rem;transition:all .2s}.search-input-group:focus-within{background:#fff;border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e91a}.search-input-group input{background:#0000;border:none;font-size:.875rem;outline:none;padding:.75rem 0;width:100%}.search-results-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:12px;left:0;margin-top:5px;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.search-result-item{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem;transition:background .2s;width:100%}.search-result-item:hover{background:#f0f9ff}.search-result-item .item-info{align-items:flex-start;display:flex;flex-direction:column}.search-result-item .item-name{color:#1e293b;font-size:.875rem;font-weight:600}.search-result-item .item-code{color:#64748b;font-size:.75rem}.search-result-item .item-stock{background:#f0fdf4;border-radius:20px;color:#15803d;font-size:.75rem;font-weight:600;padding:2px 8px}.selected-consumables-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.empty-consumables{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;color:#64748b;font-size:.8125rem;padding:1.5rem;text-align:center}.selected-item-row{align-items:center;background:#fff;border:1px solid #f1f5f9;border-radius:10px;display:flex;justify-content:space-between;padding:.75rem 1rem}.selected-item-row .item-name{color:#1e293b;flex:1 1;font-size:.875rem;font-weight:600}.qty-controls{align-items:center;display:flex;gap:12px;margin-right:1.5rem}.qty-controls button{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:24px;justify-content:center;transition:all .2s;width:24px}.qty-controls button:hover{background:#f1f5f9;border-color:#0ea5e9;color:#0ea5e9}.qty-value{color:#1e293b;font-size:.8125rem;font-weight:700;min-width:50px;text-align:center}.selected-item-row .remove-btn{align-items:center;background:#0000;border:none;color:#94a3b8;cursor:pointer;display:flex;transition:color .2s}.selected-item-row .remove-btn:hover{color:#ef4444}.mt-4{margin-top:1rem}.dashboard-container{display:flex;flex-direction:column;gap:1.5rem;margin:0 auto;max-width:1400px}.text-primary{color:#2563eb}.card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem}.block-header{justify-content:space-between;margin-bottom:1.25rem}.block-header,.header-label{align-items:center;display:flex}.header-label{gap:10px}.header-label h2{color:#1e293b;font-size:1rem;font-weight:700;margin:0}.text-btn{background:#0000;color:#2563eb;font-size:.8125rem;font-weight:600}.alerts-block{border-left:5px solid #2563eb;padding:1.5rem!important}.alerts-block .block-header{margin-bottom:1.5rem}.alerts-block .header-label{gap:12px}.alerts-block .header-label h2{font-size:1.125rem;letter-spacing:-.01em}.alerts-block .text-btn{border:1px solid #1e293b;border-radius:2px;color:#2563eb;font-size:.75rem;font-weight:700;padding:2px 4px;text-decoration:none}.alerts-stack{gap:.75rem}.alert-row{align-items:center;background-color:#f8fafc;border:1px solid #eef2f8;border-radius:12px;display:flex;justify-content:space-between;padding:1rem 1.25rem;transition:all .2s}.alert-row:hover{background-color:#fff;box-shadow:0 4px 12px #00000008}.alert-main{align-items:center;display:flex;gap:16px}.alert-indicator{border-radius:4px;flex-shrink:0;height:36px;width:4px}.alert-indicator.error{background-color:#ef4444}.alert-indicator.warning{background-color:#f59e0b}.alert-indicator.info{background-color:#3b82f6}.alert-info{display:flex;flex-direction:column;gap:2px}.alert-title{color:#0f172a;font-size:.9375rem;font-weight:800}.alert-text{color:#64748b;font-size:.8125rem;font-weight:600}.action-pill{background-color:#eff6ff;border:1px solid #dbeafe;border-radius:8px;color:#2563eb;cursor:pointer;font-size:.8125rem;font-weight:700;padding:8px 20px;transition:all .2s}.action-pill:hover{background-color:#2563eb;border-color:#2563eb;color:#fff}.dash-stats-row{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(4,1fr);margin-bottom:2rem}.stat-box{flex-direction:column;gap:.75rem;text-align:center}.stat-top{gap:12px}.stat-icon-bg,.stat-top{align-items:center;display:flex;justify-content:center}.stat-icon-bg{border-radius:10px;height:38px;transition:all .2s ease;width:38px}.stat-box.tone-blue .stat-icon-bg{background-color:#eff6ff;color:#2563eb}.stat-box.tone-cyan .stat-icon-bg{background-color:#ecfeff;color:#0891b2}.stat-box.tone-indigo .stat-icon-bg{background-color:#eef2ff;color:#4f46e5}.stat-box.tone-slate .stat-icon-bg{background-color:#f1f5f9;color:#475569}.stat-box.tone-green .stat-icon-bg{background-color:#f0fdf4;color:#16a34a}.stat-box.tone-amber .stat-icon-bg{background-color:#fffbeb;color:#d97706}.stat-box.tone-violet .stat-icon-bg{background-color:#f5f3ff;color:#7c3aed}.stat-val{color:#1e293b}.stat-name{color:#64748b;display:block;font-size:.875rem;font-weight:600}.stat-detail{color:#94a3b8;font-size:.75rem}.dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:2fr 1fr}.sched-list,.schedule-block{display:flex;flex-direction:column}.sched-list{gap:.75rem;margin-top:1rem}.sched-row-new{align-items:center;background:#f8fafc;border:1px solid #0000;border-radius:12px;display:flex;justify-content:space-between;padding:.875rem 1rem;transition:all .2s ease}.sched-row-new:hover{background:#fff;border-color:#e2e8f0;box-shadow:0 4px 6px -1px #0000000d;transform:translateX(4px)}.sched-time-box{display:flex;flex-direction:column;min-width:90px}.sched-time-main{color:#0f172a;font-size:.875rem;font-weight:800}.sched-duration-label{color:#94a3b8;font-size:.65rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.patient-profile-snippet{align-items:center;display:flex;flex:1 1;gap:.875rem;padding:0 1.25rem}.avatar-mini{align-items:center;background:#e2e8f0;border-radius:8px;color:#475569;display:flex;flex-shrink:0;font-size:.8125rem;font-weight:800;height:32px;justify-content:center;width:32px}.patient-text-info{display:flex;flex-direction:column}.p-name-label{color:#1e293b;font-size:.9375rem;font-weight:700;line-height:1.2}.p-unit-tag{color:#94a3b8;font-size:.75rem;font-weight:600}.status-pill{border-radius:50px;font-size:.6875rem;letter-spacing:.02em;min-width:100px;padding:4px 12px}.status-pill.completed{background:#f0fdf4;color:#16a34a}.status-pill.upcoming{background:#eff6ff;color:#2563eb}.text-btn.secondary{background:#f1f5f9;border:none;border-radius:8px;color:#475569;cursor:pointer;font-size:.75rem;font-weight:700;padding:6px 14px;transition:all .2s ease}.text-btn.secondary:hover{background:#e2e8f0;color:#1e293b}.empty-state-dashboard{align-items:center;color:#94a3b8;display:flex;flex-direction:column;font-size:.875rem;font-weight:600;gap:.75rem;justify-content:center;padding:3rem 1rem}.sidebar-column{display:flex;flex-direction:column;gap:1.5rem}.actions-block h2{color:#1e293b;font-size:1rem;margin-bottom:1rem}.actions-grid{display:flex;flex-direction:column;gap:.5rem}.action-tile{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;gap:12px;padding:1rem;text-align:left;transition:all .2s}.action-tile:hover{background:#fff;border-color:#2563eb;transform:translateX(4px)}.action-icon{align-items:center;border:1px solid #e2e8f0;border-radius:6px;display:flex;height:32px;justify-content:center;width:32px}.action-tile.tone-blue .action-icon{background-color:#eff6ff;color:#2563eb}.action-tile.tone-green .action-icon{background-color:#f0fdf4;color:#16a34a}.action-tile.tone-amber .action-icon{background-color:#fffbeb;color:#d97706}.action-tile.tone-violet .action-icon{background-color:#f5f3ff;color:#7c3aed}.action-label-box{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.a-label{color:#1e293b;font-size:.8125rem;font-weight:700}.a-desc{color:#94a3b8;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chevron{color:#cbd5e1}.mini-stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.mini-stat-card{display:flex;flex-direction:column;gap:4px}.m-label{color:#64748b;font-size:.75rem;font-weight:600}.m-val{color:#2563eb;font-size:1.125rem;font-weight:800}.machine-legend{display:flex;gap:1.25rem}.leg-item{align-items:center;color:#64748b;display:flex;font-size:.75rem;gap:6px}.dot.available{background-color:#e2e8f0}.dot.busy{background-color:#2563eb}.dot.hiv{background-color:#1e293b}.machine-grid-simple{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.m-tile{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000a;display:flex;flex-direction:column;justify-content:center;min-height:60px;overflow:hidden;padding:.75rem;position:relative;transition:all .3s ease}.m-tile:hover{box-shadow:0 8px 16px -4px #00000014;transform:translateY(-2px)}.m-tile-header{align-items:flex-start;display:flex;flex-direction:column;width:100%}.m-num{color:#1e293b;font-size:.875rem;font-weight:800;margin-bottom:2px}.m-type-label{background:#0000!important;box-shadow:none!important;color:#94a3b8;font-size:.5625rem;font-weight:900;letter-spacing:.05em;padding:0!important;position:absolute;right:10px;text-transform:uppercase;top:8px}.m-status-row{gap:6px}.m-icon,.m-status-row{align-items:center;display:flex}.m-icon{color:#94a3b8;font-size:10px}.m-stat{color:#64748b;font-size:.75rem;font-weight:600}@keyframes pulse-soft{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.pulse-icon{animation:pulse-soft 2s ease-in-out infinite}.m-tile.free .m-icon,.m-tile.free .m-stat{color:#16a34a}.m-tile.busy{background:#fff}.m-tile.busy .m-icon,.m-tile.busy .m-stat{color:#2563eb}.m-tile.hiv .m-type-label{background:#000;box-shadow:0 4px 6px -1px #0000004d;color:#2563eb}.m-tile.maintenance{background:#fff}.m-tile.maintenance .m-icon,.m-tile.maintenance .m-stat{color:#d97706}.m-tile.oos{background:#fff}.m-tile.oos .m-icon,.m-tile.oos .m-stat{color:#dc2626}.modal-overlay{background-color:#0006}.modal-content{background-color:#fff;box-shadow:0 30px 60px #00000026;max-height:95vh;position:relative}.modal-header{padding:1.25rem 2rem}.close-btn{background:#0000;border-radius:50%;height:32px;width:32px}.tab-btn.active{color:#1e293b}.modal-body{padding:1rem 2rem}.form-grid{grid-gap:2rem 2rem;gap:2rem 2rem;width:100%}.form-group{gap:6px;width:100%}.form-group input,.form-group select,.form-group textarea{appearance:none;background-color:#fcfdfe;border:1.5px solid #e2e8f0;box-sizing:border-box;font-size:.875rem;font-weight:600;outline:none;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background-color:#fff}.form-actions-row{border-top:1px solid #f1f5f9;display:flex;gap:1rem;justify-content:flex-end;margin-top:2.5rem;padding-top:1.5rem}.cancel-btn{align-items:center;display:flex;gap:8px;justify-content:center;min-width:120px}.save-btn{background-color:#0ea5e9;gap:10px;padding:.75rem 2rem}.save-btn:hover{background-color:#0284c7}.form-incomplete-msg{background:#f8fafc;border:1px dashed #e2e8f0;border-radius:12px;color:#94a3b8;font-size:.8125rem;font-weight:600;gap:8px;padding:.75rem 1.25rem}.form-incomplete-msg,.input-with-icon{align-items:center;display:flex}.inner-icon{color:#94a3b8;pointer-events:none;position:absolute;right:12px}.section-title{border-bottom:1px solid #f1f5f9;color:#0ea5e9;font-size:.65rem;font-weight:800;letter-spacing:.05em;margin:1.5rem 0 .5rem;padding-bottom:.25rem;text-transform:uppercase}.section-title:first-child{margin-top:.5rem}.input-group{display:flex;gap:4px}.full-width{grid-column:span 2}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-slide-down{animation:slideDown .3s ease-out forwards}.form-group select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-size:1rem;padding-right:2.5rem}.commitment-row{grid-gap:20px;background:#f3f4f680;border:1px solid #e5e7eb;border-radius:12px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:15px;padding:15px}.file-upload-wrapper{position:relative;width:100%}.file-upload-wrapper input[type=file]{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.file-label{background:#fff;border:2px dashed #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;display:block;font-size:.9rem;padding:10px 15px;text-align:center;transition:all .2s}.file-label:hover{background:#eff6ff;border-color:#2563eb}.req{color:#ef4444;margin-left:2px}.premium-upload{align-items:center;background:#f8fafc!important;border:2px dashed #cbd5e1!important;border-radius:10px!important;color:#475569!important;display:flex;gap:10px;height:50px;justify-content:center;padding:12px 20px!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.premium-upload:hover{background:#f1f5f9!important;border-color:#3b82f6!important;box-shadow:0 4px 12px #3b82f61a;color:#3b82f6!important;transform:translateY(-2px)}.upload-content{align-items:center;display:flex;font-weight:600;gap:12px;letter-spacing:.5px}.upload-icon{color:#64748b;transition:color .3s ease}.premium-upload:hover .upload-icon{animation:pulse 1.5s infinite;color:#3b82f6}.commitment-row{background:#fff;border:1px solid #e2e8f0;box-shadow:0 2px 4px #00000005;padding:20px}.status-row{grid-gap:20px;align-items:flex-end;display:grid;gap:20px;grid-template-columns:1fr 1fr;width:100%}.camera-capture-area{align-items:center;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:16px;display:flex;justify-content:center;min-height:200px;overflow:hidden}.camera-placeholder{align-items:center;display:flex;flex-direction:column;gap:.75rem;padding:2rem;text-align:center}.cam-icon-wrap{align-items:center;background:#fff;border-radius:50%;box-shadow:0 4px 12px #0000000f;display:flex;height:72px;justify-content:center;margin-bottom:.25rem;width:72px}.camera-placeholder p{color:#94a3b8;font-size:.9rem;font-weight:600;margin:0}.camera-btn-row{align-items:center;display:flex;gap:1rem;margin-top:.5rem}.open-camera-btn,.upload-photo-btn{align-items:center;border-radius:12px;cursor:pointer;display:flex;font-size:.875rem;font-weight:700;gap:8px;padding:10px 20px;transition:all .2s}.open-camera-btn{background:#0f172a;border:none;color:#fff}.open-camera-btn:hover{background:#1e293b;transform:translateY(-1px)}.upload-photo-btn{background:#fff;border:1px solid #e2e8f0;color:#475569}.upload-photo-btn:hover{background:#f8fafc;color:#0f172a}.cam-or{color:#94a3b8;font-size:.85rem;font-weight:600}.camera-video{border-radius:12px;max-height:280px}.capture-btn{align-items:center;background:#0ea5e9;border:none;border-radius:50px;bottom:1rem;box-shadow:0 8px 20px #0ea5e959;color:#fff;cursor:pointer;display:flex;font-size:.9375rem;font-weight:700;gap:10px;padding:12px 28px;position:absolute;transition:all .2s}.capture-btn:hover{background:#0284c7;transform:scale(1.04)}.photo-preview-container{width:100%}.captured-photo{border-radius:12px;display:block;max-height:280px;object-fit:cover;width:100%}.photo-actions{padding:1rem}.retake-btn{border:1px solid #e2e8f0;border-radius:12px;color:#64748b;font-size:.875rem;padding:10px 20px;transition:all .2s}.retake-btn:hover{border-color:#fee2e2;color:#ef4444}.camera-feed-container{align-items:center;background:#0f172a;border-radius:12px;display:flex;flex-direction:column;justify-content:center;min-height:260px;overflow:hidden;position:relative;width:100%}.camera-video{border-radius:0;display:block;height:260px;object-fit:cover;width:100%}.camera-capture-area{min-height:260px}.error-alert-banner{margin:0 2rem 1rem}.patients-container{display:flex;flex-direction:column;gap:1.25rem}.patients-header{align-items:flex-end;display:flex;justify-content:flex-end;margin-bottom:.25rem}.title-section h1{color:#1e293b;font-size:1.5rem;font-weight:800;margin:0}.title-section span{color:#64748b;font-size:.8125rem;font-weight:500}.add-patient-btn{align-items:center;background:linear-gradient(135deg,#0ea5e9,#0284c7);border:none!important;border-radius:12px;box-shadow:0 8px 12px -3px #0ea5e94d;color:#fff;cursor:pointer;display:flex;font-size:.8125rem;font-weight:700;gap:8px;padding:.625rem 1.25rem;transition:all .2s}.action-icon-btn{border-radius:8px;color:#64748b;cursor:pointer;padding:8px;transition:all .2s}.action-icon-btn.edit:hover{background-color:#eff6ff;color:#2563eb}.action-icon-btn.delete:hover{background-color:#fef2f2;color:#dc2626}.filters-bar-new{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 15px #00000008;justify-content:space-between;padding:1rem 1.5rem}.filters-bar-new,.filters-left{align-items:center;display:flex;gap:1.25rem}.filters-left{flex:1 1}.search-container{flex:1 1;max-width:380px;position:relative}.search-container input{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;font-size:.8125rem;outline:none;padding:.625rem 1rem .625rem 2.75rem;width:100%}.search-icon-abs{color:#94a3b8;left:14px;position:absolute;top:50%;transform:translateY(-50%)}.filter-select{appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;cursor:pointer;font-size:.78rem;font-weight:600;min-width:130px;outline:none;padding:.5rem 2.25rem .5rem 1rem;transition:all .2s}.filter-select:hover{background-color:#f8fafc;border-color:#cbd5e1}.clear-filters{background:#0000;border:none;color:#64748b;cursor:pointer;font-size:.75rem;font-weight:700;padding:.5rem;transition:all .2s}.clear-filters:hover{color:#0ea5e9;text-decoration:underline}.filters-right{align-items:center;border-left:1px solid #e2e8f0;display:flex;margin-left:auto;padding-left:1.25rem}.patient-count{color:#64748b;font-size:.76rem;font-weight:600}.table-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.patients-table-new{border-collapse:collapse;width:100%}.patients-table-new th{background-color:#f8fafc;border-bottom:1px solid #e2e8f0;color:#000;font-size:.73rem;font-weight:800;letter-spacing:.01em;padding:1.25rem 1rem;text-align:left;text-transform:uppercase}.col-id{width:120px}.col-patient{width:220px}.col-dob,.col-last{width:130px}.col-next{width:170px}.col-machine{width:140px}.col-status{width:150px}.col-actions,.col-status{text-align:center!important}.col-actions{width:120px}.patients-table-new th.col-actions,.patients-table-new th.col-status{text-align:center}.patients-table-new td{border-bottom:1px solid #e2e8f0;padding:1rem;vertical-align:middle}.patients-table-new tr:last-child td{border-bottom:none}.patient-info-box{align-items:center;display:flex;gap:12px}.p-name-main{word-wrap:break-word;color:#64748b;font-size:.8125rem;font-weight:800;line-height:1.4;max-width:160px;white-space:normal}.hiv-tag-small{background-color:#fff7ed;border:1px solid #ffedd5;border-radius:9999px;color:#c2410c;font-size:.65rem;font-weight:700;margin-left:8px;padding:3px 10px;text-transform:uppercase}.p-id-sub{color:#94a3b8;font-size:.75rem;font-weight:600}.status-pill-new{align-items:center;display:inline-flex;font-size:.7rem;font-weight:800;justify-content:center;letter-spacing:.02em;min-width:100px;padding:5px 12px;text-transform:uppercase}.status-pill-new.active{background-color:#ecfdf5!important;border:1px solid #10b98133;border-radius:9999px;color:#059669!important;padding:4px 12px}.status-pill-new.pending{background-color:#fffbeb!important;border:1px solid #f59e0b33;border-radius:9999px;color:#d97706!important;padding:4px 12px}.status-pill-new.inactive{background-color:#fef2f2!important;border:1px solid #ef444433;border-radius:9999px;color:#dc2626!important;padding:4px 12px}.status-pill-new.transferred{background-color:#eff6ff!important;border:1px solid #3b82f633;border-radius:9999px;color:#2563eb!important;padding:4px 12px}.td-bold{color:#64748b;font-size:.8125rem;font-weight:700}.td-muted{color:#94a3b8;font-size:.75rem;font-weight:600}.next-session-box{display:flex;flex-direction:column;gap:2px}.next-time{align-items:center;color:#94a3b8;display:flex;font-size:.65rem;font-weight:600;gap:3px}.machine-badge{background-color:#f1f5f9;border-radius:10px;color:#64748b;font-size:.75rem;font-weight:800;padding:5px 12px}.action-btns-row{align-items:center;display:flex;gap:8px;justify-content:center}.pagination-container{align-items:center;background-color:#fff;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.pagination-info{color:#64748b;font-size:.76rem;font-weight:600}.pagination-info strong{color:#000;font-weight:800}.page-numbers{gap:8px}.page-btn,.page-numbers{align-items:center;display:flex}.page-btn{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:.75rem;font-weight:700;height:32px;justify-content:center;width:32px}.page-btn.active{background-color:#e0f2fe;border-color:#bae6fd;color:#0369a1}.session-detail-modal{background:#fff;border-radius:24px;box-shadow:0 20px 50px #0000001a;display:flex;flex-direction:column;max-width:550px;overflow:hidden;width:100%}.header-title h2{margin-bottom:4px}.header-title p{font-size:.8125rem;font-weight:500}.modal-body{max-height:70vh;padding:1.5rem 2rem}.session-edit-form{display:flex;flex-direction:column;gap:1rem}.form-grid-two-col{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-group label{font-size:.65rem;margin-bottom:6px}.modal-select,.session-edit-form input,.session-edit-form textarea{background:#fcfdfe;border:1.5px solid #e2e8f0;border-radius:12px;color:#1e293b;font-size:.9375rem;font-weight:700;padding:.875rem 1rem;transition:all .2s;width:100%}.modal-select:focus,.session-edit-form input:focus,.session-edit-form textarea:focus{background:#fff;border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e914;outline:none}.input-with-unit{align-items:center;display:flex;position:relative}.input-with-unit input{padding-right:3.5rem!important}.unit-tag{align-items:center;background:#f1f5f9;border-left:1.5px solid #e2e8f0;border-radius:0 11px 11px 0;color:#64748b;display:flex;font-size:.65rem;font-weight:800;height:calc(100% - 3px);padding:0 12px;pointer-events:none;position:absolute;right:1.5px}.form-section{display:flex;flex-direction:column;gap:1rem}.session-edit-form textarea{line-height:1.5;min-height:70px}.session-card-view{display:flex;flex-direction:column;gap:1.25rem}.card-top-strip{align-items:center;background:#f8fafc;border:1px solid #f1f5f9;border-radius:16px;display:flex;justify-content:space-between;padding:1rem 1.25rem}.staff-info-card{align-items:center;color:#64748b;display:flex;gap:12px}.s-text{display:flex;flex-direction:column}.s-label{color:#64748b;font-size:.6rem;font-weight:700;text-transform:uppercase}.s-val{color:#1e293b;font-size:.875rem;font-weight:700}.outcome-badge-large{align-items:center;border-radius:100px;display:flex;font-size:.75rem;font-weight:700;gap:8px;padding:.5rem 1rem}.outcome-badge-large.green{background:#f0fdf4;border:1px solid #dcfce7;color:#16a34a}.outcome-badge-large.yellow{background:#fffbeb;border:1px solid #fef3c7;color:#d97706}.outcome-badge-large.red{background:#fef2f2;border:1px solid #fee2e2;color:#ef4444}.vitals-grid-card{grid-gap:.875rem;display:grid;gap:.875rem;grid-template-columns:1fr 1fr}.v-item-card{align-items:center;background:#fff;border:1px solid #f1f5f9;border-radius:14px;display:flex;gap:12px;padding:.875rem}.v-item-card svg{color:#94a3b8}.v-data{display:flex;flex-direction:column}.v-l{color:#64748b;font-size:.6rem;text-transform:uppercase}.v-l,.v-v{font-weight:700}.v-v{color:#1e293b;font-size:.9375rem}.section-card{background:#f8fafc;border:1px solid #f1f5f9;border-radius:14px;margin-bottom:.75rem;padding:1rem 1.25rem}.sec-header{align-items:center;color:#64748b;display:flex;font-size:.7rem;font-weight:700;gap:8px;margin-bottom:6px;text-transform:uppercase}.sec-content{color:#475569;font-size:.8125rem;font-weight:500;line-height:1.5}.modal-footer{gap:12px;justify-content:flex-end;padding:1.25rem 2rem}.cancel-btn{color:#475569}.edit-btn-alt,.save-btn{align-items:center;background:#0ea5e9;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:700;gap:8px;padding:.75rem 1.5rem;transition:all .2s}.edit-btn-alt:hover,.save-btn:hover{background:#0284c7;box-shadow:0 4px 12px #0ea5e933;transform:translateY(-1px)}.patient-profile-page{align-items:flex-start;background-color:#f8fafc;display:flex;min-height:calc(100vh - 64px);padding:0;width:100%}.profile-container-inner{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:260px 1fr;width:100%}.patient-card-sidebar{display:flex;flex-direction:column;max-height:calc(100vh - 100px);overflow-y:auto;position:sticky;scrollbar-width:none;top:80px}.patient-card-sidebar::-webkit-scrollbar{display:none}.sidebar-card{align-items:center;background:#fff;border-radius:16px;box-shadow:0 2px 15px #00000008;display:flex;flex-direction:column;padding:1.25rem 1rem;text-align:center}.p-image-area{border:3px solid #f1f5f9;border-radius:50%;height:80px;margin-bottom:1rem;overflow:hidden;width:80px}.p-image-area img{height:100%;object-fit:cover;width:100%}.p-name{font-size:1.125rem;font-weight:800;letter-spacing:-.02em;margin:0 0 4px}.p-id-label{color:#94a3b8;font-size:.75rem;font-weight:700;letter-spacing:.05em;margin-bottom:1.5rem;text-transform:uppercase}.p-mini-stats{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-bottom:1.5rem;width:100%}.mini-stat{background:#f8fafc;border-radius:16px;flex-direction:column;gap:6px;padding:1.25rem .5rem;text-align:center}.mini-stat .label{color:#94a3b8;font-size:.65rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.mini-stat .val{color:#1e293b;font-size:.9375rem;font-weight:800;line-height:1.2}.mini-stat .val.red{color:#ef4444}.p-detailed-info{border-top:1px solid #f1f5f9;gap:1.5rem;margin-bottom:.5rem;padding-top:1.5rem;text-align:left;width:100%}.info-row,.p-detailed-info{display:flex;flex-direction:column}.info-row{gap:6px}.row-label{align-items:center;color:#94a3b8;display:flex;font-size:.75rem;font-weight:700;gap:8px;letter-spacing:.04em;text-transform:uppercase}.row-val{color:#1e293b;font-size:.9375rem;font-weight:800;padding-left:22px}.row-sub{color:#64748b;font-size:.8125rem;font-weight:600;padding-left:22px}.sidebar-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem;width:100%}.call-patient-btn,.msg-patient-btn{align-items:center;background:#fff;border:1.5px solid #f1f5f9;border-radius:14px;color:#1e293b;cursor:pointer;display:flex;font-size:.9375rem;font-weight:800;gap:10px;justify-content:center;padding:1rem;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.call-patient-btn{background:#f0f9ff;border-color:#e0f2fe;color:#0369a1}.msg-patient-btn:hover{background:#f8fafc;border-color:#e2e8f0}.call-patient-btn:hover{background:#e0f2fe;border-color:#bae6fd}.profile-main-area{display:flex;flex-direction:column;gap:1.25rem;min-width:0;position:relative}.profile-header-group{justify-content:space-between;margin-bottom:.5rem}.header-left,.profile-header-group{align-items:center;display:flex;gap:2rem}.sidebar-title{margin-bottom:1.25rem;padding-left:.5rem}.profile-title{color:#1e293b;font-size:1.8rem;font-weight:800;letter-spacing:-.04em;line-height:1;margin:0 0 25px;text-align:center;text-transform:capitalize}.status-tags{align-items:center;display:flex;gap:.75rem}.status-badge{border-radius:100px;padding:.5rem 1.25rem;white-space:nowrap}.status-badge.active{background-color:#ecfdf5!important;border:1px solid #10b98133;color:#059669!important}.status-badge.inactive{background-color:#fef2f2!important;border:1px solid #ef444433;color:#dc2626!important}.status-badge.pending{background-color:#fffbeb!important;border:1px solid #f59e0b33;color:#d97706!important}.tag-pill{border-radius:100px;font-size:.75rem;font-weight:800;padding:.5rem 1rem;text-transform:uppercase;white-space:nowrap}.tag-pill.orange{background:#fff7ed;border:1px solid #ffedd5;color:#c2410c}.tag-pill.green{background:#f0fdf4;border:1px solid #dcfce7;color:#16a34a}.header-actions-row{display:flex;gap:.75rem;pointer-events:auto;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:50}.header-actions-row:hover{transform:translateY(-1px)}.btn-action-blue,.btn-action-text{align-items:center;background:#fff;border:1px solid #0000;border-color:#e2e8f0;border-radius:10px;box-shadow:0 1px 2px #0000000d;color:#475569;cursor:pointer;display:flex;font-size:.75rem;font-weight:700;gap:6px;justify-content:center;padding:.5rem 1rem;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.btn-action-blue:hover,.btn-action-text:hover{background:#3030f7;border-color:#3030f7;box-shadow:0 4px 6px #0000001a;color:#fff;transform:translateY(-1px)}.btn-action-blue:disabled,.btn-action-text:disabled{box-shadow:none;cursor:not-allowed;opacity:.8}.btn-action-blue:disabled,.btn-action-blue:disabled:hover,.btn-action-text:disabled,.btn-action-text:disabled:hover{background-color:#f1f5f9;border-color:#e2e8f0;color:#94a3b8;transform:none}.profile-tabs-nav{background:#f1f5f9;border-radius:14px;display:flex;gap:2px;margin-bottom:.5rem;margin-top:1rem;padding:.25rem;width:fit-content}.tab-item{background:#0000;border:none;border-radius:10px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:700;padding:.45rem 1.5rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.tab-item.active{background:#fff;box-shadow:0 2px 10px #0000000f;color:#1e293b}.vitals-strip{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem}.v-card{align-items:center;background:#fff;border:1px solid #0000;border-radius:14px;box-shadow:0 1px 5px #00000005;display:flex;gap:.875rem;padding:.75rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.v-card:hover{border-color:#e2e8f0;box-shadow:0 12px 24px -10px #0000001a;transform:translateY(-4px)}.v-icon-box{align-items:center;border-radius:10px;display:flex;height:36px;justify-content:center;width:36px}.v-icon-box.red{background:#fef2f2;color:#ef4444}.v-icon-box.orange{background:#fffbeb;color:#f59e0b}.v-icon-box.blue{background:#f0f9ff;color:#0ea5e9}.v-icon-box.teal{background:#f0fdfa;color:#14b8a6}.v-label{color:#94a3b8;font-size:.65rem;font-weight:800;letter-spacing:.05em;margin-bottom:2px}.v-val-group{align-items:baseline;display:flex;gap:4px}.v-val{color:#1e293b;font-size:.875rem;font-weight:800}.v-unit{color:#94a3b8;font-size:.6rem;font-weight:600}.clinical-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.alerts-card,.diagnosis-card{background:#fff;border:1px solid #0000;border-radius:20px;box-shadow:0 2px 12px #00000005;padding:1.2rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.alerts-card:hover,.diagnosis-card:hover{border-color:#f1f5f9;box-shadow:0 8px 24px -8px #00000014;transform:translateY(-2px)}.card-header-inner{align-items:center;display:flex;gap:8px;margin-bottom:1.5rem}.card-header-inner h3{color:#1e293b;font-size:1rem;font-weight:700;margin:0}.diagnosis-box{background:#f0f9ff;border-left:4px solid #0ea5e9;border-radius:0 12px 12px 0;margin-bottom:1.5rem;padding:1.25rem}.diag-main{color:#0ea5e9;display:block;font-size:1rem;font-weight:700;margin-bottom:4px}.diag-sub{color:#64748b;font-size:.8125rem;font-weight:500}.diag-info-grid{grid-gap:1rem 1.5rem;display:grid;gap:1rem 1.5rem;grid-template-columns:1fr 1fr}.diag-item{display:flex;flex-direction:column;gap:4px}.diag-item .l{color:#94a3b8;font-size:.65rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.diag-item .v{color:#1e293b;font-size:.85rem;font-weight:600;line-height:1.2}.v-text{color:#64748b;font-weight:600;margin-top:2px}.alerts-stack{display:flex;flex-direction:column;gap:1rem}.alert-box{align-items:flex-start;border-radius:16px;display:flex;gap:1rem;padding:1.25rem}.no-alerts-placeholder{align-items:center;background-color:#f0fdf4;border:1px dashed #bbf7d0;border-radius:16px;color:#16a34a;display:flex;font-size:.9375rem;font-weight:700;gap:12px;padding:1.5rem}.no-alerts-placeholder .icon-green{color:#16a34a}.empty-sessions-placeholder{align-items:center;background:#f8fafc;border:1px dashed #e2e8f0;border-radius:20px;color:#94a3b8;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:4rem 2rem;text-align:center}.empty-sessions-placeholder p{color:#475569;font-size:1.125rem;font-weight:700;margin:0}.empty-sessions-placeholder span{color:#94a3b8;font-size:.875rem;font-weight:500}.alert-box.red{background:#fef2f2;border:1px solid #fee2e2;color:#ef4444}.alert-box.yellow{background:#fffbeb;border:1px solid #fef3c7;color:#d97706}.a-title{display:block;font-size:.875rem;font-weight:800;margin-bottom:4px}.alert-text p{color:inherit;font-size:.8125rem;font-weight:500;line-height:1.4;margin:0;opacity:.8}.recent-sessions-card{background:#fff;border-radius:24px;box-shadow:0 2px 15px #00000005;padding:1.75rem 2rem}.sessions-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.h-left h3{color:#1e293b;font-size:1.25rem;font-weight:800;margin:0 0 4px}.h-left p{color:#64748b;font-size:.875rem;margin:0}.btn-more{background:#0000;border:none;color:#cbd5e1;cursor:pointer}.sessions-table{border-collapse:collapse;table-layout:fixed;width:100%}.sessions-table td,.sessions-table th{text-align:left;vertical-align:middle}.sessions-table td:first-child,.sessions-table th:first-child{width:100px}.sessions-table td:nth-child(2),.sessions-table th:nth-child(2){width:85px}.sessions-table td:nth-child(3),.sessions-table th:nth-child(3){width:160px}.sessions-table td:nth-child(4),.sessions-table th:nth-child(4){width:90px}.sessions-table td:nth-child(5),.sessions-table th:nth-child(5){width:140px}.sessions-table td:nth-child(6),.sessions-table th:nth-child(6){text-align:center;width:110px}.sessions-table th{border-bottom:1px solid #f1f5f9;color:#94a3b8;font-size:.65rem;font-weight:800;padding:.75rem .5rem;text-transform:uppercase}.sessions-table td{border-bottom:1px solid #f1f5f9;padding:1rem .5rem}.cell-date-time{display:flex;flex-direction:column}.c-date{color:#1e293b;font-size:.75rem;font-weight:800}.c-time{color:#94a3b8;font-size:.65rem;font-weight:600}.m-tag{background:#f1f5f9;border-radius:8px;color:#475569;display:inline-block;font-size:.7rem;font-weight:800;padding:.4rem .6rem;white-space:nowrap}.c-duration,.c-staff{color:#475569;font-size:.875rem;font-weight:600}.cell-outcome{align-items:flex-start;color:#1e293b;display:flex;font-size:.8125rem;font-weight:700;gap:8px;line-height:1.2}.cell-outcome .dot{flex-shrink:0;margin-top:4px}.dot{border-radius:50%;height:8px;width:8px}.dot.green{background:#22c55e}.dot.yellow{background:#f59e0b}.btn-view-record{background:#f1f5f9;border:none;border-radius:8px;color:#1e293b;cursor:pointer;font-size:.7rem;font-weight:800;padding:.35rem .75rem;transition:all .2s;white-space:nowrap}.btn-view-record:hover{background:#e2e8f0;color:#0ea5e9}.action-icons{gap:12px}.action-icons,.icon-btn{display:flex;justify-content:center}.icon-btn{align-items:center;background:#f8fafc;border:1.5px solid #f1f5f9;border-radius:8px;color:#64748b;cursor:pointer;height:32px;transition:all .2s cubic-bezier(.4,0,.2,1);width:32px}.icon-btn.view:hover{background:#f0f9ff;border-color:#bae6fd;box-shadow:0 4px 6px #0ea5e91a;color:#0ea5e9;transform:translateY(-2px)}.icon-btn.edit:hover{background:#fefce8;border-color:#fef08a;box-shadow:0 4px 6px #eab3081a;color:#eab308;transform:translateY(-2px)}.diagnosis-card.full-width-card{grid-column:span 2}.diag-info-grid.three-col{grid-template-columns:repeat(3,1fr)}.v-text{color:#475569;font-size:.75rem;line-height:1.5;margin-top:4px}.commitments-list{display:flex;flex-direction:column;gap:12px}.commit-item{align-items:center;background:#f8fafc;border-radius:12px;display:flex;font-size:.875rem;font-weight:700;gap:10px;padding:.75rem 1rem}.commit-item.checked{background:#f0fdf4;border:1px solid #dcfce7;color:#16a34a}.commit-item.pending{border:1px dashed #e2e8f0;color:#94a3b8;opacity:.6}.diag-item.full-width{grid-column:span 3}.proof-link{color:#3b82f6;display:inline-block;font-size:.8rem;font-weight:600;margin-top:5px}.profile-badge-group{align-items:center;display:flex;gap:12px}.status-remarks-badge{background:#fffbeb;border:1px solid #fde68a;border-radius:20px;color:#92400e;font-size:.85rem;font-weight:500;padding:4px 12px}.p-image-placeholder{align-items:center;background:#f1f5f9;border-radius:50%;display:flex;height:100%;justify-content:center;width:100%}.proof-link{align-items:center;color:#0ea5e9;display:inline-flex;font-size:.75rem;font-weight:700;margin-top:4px;text-decoration:none;transition:all .2s}.proof-link:hover{color:#0284c7;text-decoration:underline}.booking-modal-content{background:#fff;border-radius:28px;box-shadow:0 32px 64px -12px #00000038;flex-direction:column;max-width:640px;position:relative!important;width:100%}.booking-header,.booking-modal-content{display:flex;overflow:visible!important}.booking-header{align-items:flex-start;background:linear-gradient(180deg,#f8fafc,#fff);border-radius:28px 28px 0 0;justify-content:space-between;padding:2.25rem 2.5rem 1.75rem;z-index:5!important}.title-area h2{color:#1e293b;font-size:1.75rem;font-weight:800;margin:0}.step-indicator{color:#0ea5e9;font-size:.875rem;font-weight:700;margin-top:6px}.close-btn-round{align-items:center;background:#f1f5f9;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;height:42px;justify-content:center;transition:all .2s;width:42px}.close-btn-round:hover{background:#e2e8f0;color:#1e293b}.attending-staff-selector{position:relative;width:100%;z-index:10}.staff-dropdown{animation:dropDown .2s cubic-bezier(0,0,.2,1);background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 10px 30px -5px #00000026,0 8px 10px -6px #0000001a;left:0;max-height:220px;overflow-y:auto;padding:8px;position:absolute;right:0;top:calc(100% + 4px);z-index:10000}@keyframes dropDown{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.staff-option{align-items:center;border-radius:12px;color:#1e293b;cursor:pointer;display:flex;font-size:.9375rem;font-weight:600;gap:12px;margin-bottom:2px;padding:10px 16px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.staff-option:last-child{margin-bottom:0}.staff-option:hover{background:#f0f9ff;color:#0ea5e9;transform:translateX(4px)}.staff-option span{align-items:center;display:flex;justify-content:space-between;width:100%}.staff-option small{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#475569;font-size:.65rem;font-weight:800;letter-spacing:.05em;margin-left:12px;padding:3px 10px;text-transform:uppercase}.staff-option:hover small{background:#0ea5e9;color:#fff}.staff-option.active-staff{background:#dbeafe;color:#1d4ed8}.staff-option svg{color:#94a3b8;flex-shrink:0;transition:color .15s}.staff-option:hover svg{color:#3b82f6}.staff-dropdown::-webkit-scrollbar{width:5px}.staff-dropdown::-webkit-scrollbar-track{background:#0000}.staff-dropdown::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.staff-dropdown::-webkit-scrollbar-thumb:hover{background:#94a3b8}.machine-selector-step1{margin-bottom:1.5rem;margin-top:1.5rem;position:relative}.custom-machine-dropdown{align-items:center;background-color:#f3f6fb;border:1.5px solid #0000;border-radius:16px;cursor:pointer;display:flex;justify-content:space-between;padding:1rem 1.5rem;position:relative;transition:all .2s;width:100%}.custom-machine-dropdown:hover{background-color:#eef2f8}.custom-machine-dropdown.open{background-color:#fff;border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e91a}.selected-value{align-items:center;color:#1e293b;display:flex;font-size:1rem;font-weight:700;gap:12px}.selected-value .placeholder{color:#94a3b8;font-weight:500}.custom-machine-dropdown .chevron{color:#94a3b8;transition:transform .2s}.custom-machine-dropdown.open .chevron{color:#0ea5e9;transform:rotate(180deg)}.machine-options-list{background:#fff;border:1.5px solid #e2e8f0;border-radius:16px;box-shadow:0 12px 32px -4px #0f172a1f,0 4px 12px -2px #0f172a0f;left:0;max-height:240px;overflow-y:auto;padding:8px;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.machine-option-item{align-items:center;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:4px;padding:12px 16px;transition:all .15s ease}.machine-option-item:last-child{margin-bottom:0}.machine-option-item:hover:not(.disabled){background-color:#f0f9ff;color:#0ea5e9}.machine-option-item.selected{background-color:#0ea5e9;color:#fff}.m-main-info{align-items:center;display:flex;gap:12px}.m-type{font-size:.8125rem;opacity:.7}.status-badge{border-radius:6px;font-size:.7rem;font-weight:800;letter-spacing:.02em;padding:4px 8px;text-transform:uppercase}.status-badge.maintenance{background-color:#fef3c7;color:#d97706}.status-badge.out-of-service{background-color:#fee2e2;color:#dc2626}.machine-option-item.selected .m-type,.machine-option-item.selected .placeholder{color:#fffc}.booking-body{min-height:340px;padding:0 2.5rem 1rem;position:relative;z-index:20}.slot-info-summary{background-color:#f8fafc;border:1px solid #f1f5f9;border-radius:20px;display:flex;justify-content:space-around;margin-bottom:2rem;padding:2rem 1.5rem}.summary-item{align-items:center;display:flex;flex-direction:column;gap:12px}.icon-blue{color:#0ea5e9}.summary-item .info{align-items:center;display:flex;flex-direction:column}.summary-item .label{color:#94a3b8;font-size:.75rem;font-weight:700;letter-spacing:.05em;margin-bottom:2px;text-transform:uppercase}.summary-item .val{color:#1e293b;font-size:1.125rem;font-weight:800}.attending-staff-selector label,.machine-selector-step1 label,.patient-selector label{color:#1e293b;display:block;font-size:.875rem;font-weight:700;margin-bottom:.75rem}.patient-selector{margin-bottom:1.5rem;position:relative;z-index:50}.search-box-modal{align-items:center;background-color:#f3f6fb;border:1.5px solid #0000;border-radius:16px;display:flex;gap:14px;padding:1.125rem 1.5rem;transition:all .2s}.search-box-modal:focus-within{background-color:#fff;border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e91a}.search-box-modal input{background:#0000;border:none;color:#1e293b;flex:1 1;font-size:1rem;font-weight:500;outline:none}.search-box-modal input::placeholder{color:#94a3b8}.selected-patient-display{background-color:#f3f6fb;border:1px solid #eef2f8;border-radius:16px;margin-bottom:1.5rem;margin-top:1rem;padding:1.25rem 1.5rem}.selected-label{color:#0ea5e9;font-size:.75rem;font-weight:800;letter-spacing:.05em;margin-bottom:8px;margin-left:4px;text-transform:uppercase}.change-patient-btn{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:.75rem;font-weight:700;padding:4px 12px;transition:all .2s}.change-patient-btn:hover{background:#f1f5f9;border-color:#ef4444;color:#ef4444}.patient-cards-selection{border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;gap:8px;left:0;margin-top:4px;max-height:280px;overflow-y:auto;padding:12px;position:absolute;right:0;top:calc(100% - 8px);z-index:500}.patient-cards-selection,.patient-selection-card{background:#fff;display:flex;flex-direction:column}.patient-selection-card{border:1px solid #f1f5f9;border-radius:14px;cursor:pointer;gap:4px;padding:1rem;transition:all .2s}.patient-selection-card:hover{background:#f8fafc;border-color:#0ea5e9;transform:translateX(4px)}.patient-selection-card.active{background:#f0f9ff;border:2px solid #0ea5e9;box-shadow:0 4px 12px #0ea5e91a}.card-p-header{align-items:center;display:flex;justify-content:space-between}.card-p-name{color:#0f172a;font-size:1rem;font-weight:800}.selected-indicator{align-items:center;background:#0ea5e9;border-radius:50%;display:flex;height:24px;justify-content:center;width:24px}.card-p-details{align-items:center;color:#94a3b8;display:flex;font-size:.875rem;font-weight:600;gap:8px}.dot-separator{color:#cbd5e1}.time-slots-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-top:8px}.time-slot-chip{background:#f8fafc;border:2px solid #f1f5f9;border-radius:16px;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:1rem;transition:all .2s}.time-slot-chip.selected,.time-slot-chip:hover:not(.full){background:#f0f9ff;border-color:#0ea5e9}.time-slot-chip.selected{box-shadow:0 4px 12px #0ea5e91a}.time-slot-chip.full{background:#f1f5f9;border-color:#e2e8f0;cursor:not-allowed;opacity:.5}.t-time{color:#1e293b;font-size:.9375rem;font-weight:700}.time-slot-chip.selected .t-time{color:#0ea5e9}.t-status{color:#94a3b8;font-size:.75rem;font-weight:600}.time-slot-chip.selected .t-status{color:#0ea5e9;opacity:.8}.time-slot-chip.full .t-status{color:#ef4444}.time-slot-chip.loading{animation:pulse 1.5s infinite;cursor:wait;opacity:.7}@keyframes pulse{0%{transform:scale(1)}50%{opacity:.5;transform:scale(.98)}to{transform:scale(1)}}.form-group{gap:8px;margin-top:12px}.form-group label{color:#1e293b;font-size:.875rem}.date-select-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1.5fr 1fr}.modal-select{appearance:none;background-color:#f8fafc;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 1.25rem center;background-repeat:no-repeat;border:2px solid #f1f5f9;border-radius:14px;color:#1e293b;cursor:pointer;font-size:.9375rem;font-weight:700;outline:none;padding:1rem 1.25rem;transition:all .2s;width:100%}.modal-select:focus{background-color:#fff;border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e91a}.no-machines-error-container{align-items:center;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:20px;display:flex;flex-direction:column;gap:16px;grid-column:1/-1;padding:2rem}.no-machines-error{color:#64748b;font-size:.9375rem;font-weight:600;text-align:center}.init-machine-btn{background:#0ea5e9;border:none;border-radius:12px;box-shadow:0 4px 12px #0ea5e933;color:#fff;cursor:pointer;font-weight:700;padding:.75rem 1.5rem;transition:all .2s}.init-machine-btn:hover{background:#0284c7;box-shadow:0 6px 15px #0ea5e94d;transform:translateY(-2px)}.modal-input{background-color:#f8fafc;border:2px solid #f1f5f9;border-radius:12px;color:#1e293b;font-size:1rem;font-weight:500;outline:none;padding:.875rem 1.25rem;transition:all .2s;width:100%}.modal-input:focus{background-color:#fff;border-color:#0ea5e9}.machine-selector-grid{margin-top:1rem}.section-label{color:#64748b;display:block;font-size:.875rem;font-weight:700;letter-spacing:.05em;margin-bottom:1rem;text-transform:uppercase}.m-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);max-height:240px;overflow-y:auto;padding:4px}.m-card{align-items:center;background:#f8fafc;border:2px solid #0000;border-radius:16px;cursor:pointer;display:flex;gap:12px;padding:1rem;transition:all .2s}.m-card:hover{background:#f1f5f9}.m-card.selected{background:#f0f9ff;border-color:#0ea5e9;color:#0ea5e9}.m-info{display:flex;flex-direction:column}.u-name{font-size:.9375rem;font-weight:700}.u-type{font-size:.75rem;font-weight:600;opacity:.7}.booking-summary-box{background:#f8fafc;border:1px solid #f1f5f9;border-radius:16px;margin-top:2rem;padding:1.25rem}.booking-summary-box h4{color:#94a3b8;font-size:.875rem;margin:0 0 1rem;text-transform:uppercase}.summary-row{display:flex;font-size:.9375rem;justify-content:space-between;margin-bottom:8px}.summary-row span{color:#64748b}.summary-row strong{color:#1e293b}.booking-footer{background-color:#f8fafc;border-radius:0 0 28px 28px;border-top:1px solid #f1f5f9;justify-content:space-between;padding:1.75rem 2.5rem;position:relative;z-index:5}.booking-footer,.footer-right{align-items:center;display:flex}.footer-right{gap:1.25rem}.cancel-link{background:#0000;border:none;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:700;transition:color .2s}.cancel-link:hover{color:#1e293b}.back-btn{background:#0000;color:#0ea5e9;margin-right:auto}.confirm-book-btn{background:linear-gradient(135deg,#0ea5e9,#0284c7);border:none;border-radius:16px;box-shadow:0 8px 20px #0ea5e94d;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:1rem 2.5rem;transition:all .2s}.confirm-book-btn:hover:not(:disabled){box-shadow:0 12px 25px #0ea5e966;transform:translateY(-2px)}.confirm-book-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}.success-mode{max-width:400px;text-align:center}.success-step{align-items:center;display:flex;flex-direction:column;padding:3rem 2rem}.success-icon-wrapper{align-items:center;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:50%;box-shadow:0 10px 20px #16a34a33;display:flex;height:80px;justify-content:center;margin-bottom:1.5rem;width:80px}.success-step h3{color:#1e293b;font-size:1.5rem;font-weight:800;margin:0 0 .5rem}.success-step p{color:#64748b;font-size:.9375rem;line-height:1.5;margin-bottom:2rem}.sms-simulation{background:#f1f5f9;border-radius:20px;margin-bottom:2rem;padding:1.5rem;width:100%}.sms-bubble{background:#fff;border-radius:18px 18px 18px 4px;box-shadow:0 2px 4px #0000000d;color:#475569;font-size:.8125rem;line-height:1.4;padding:1rem;text-align:left}.done-btn{background:#1e293b;border:none;border-radius:14px;color:#fff;cursor:pointer;font-weight:700;padding:1rem;width:100%}.status-badge.incompatible{background:#fff7ed;border:1px solid #ffedd5;border-radius:4px;color:#c2410c;font-size:.65rem;font-weight:600;padding:2px 6px}.machine-option-item.disabled{background-color:#f8fafc;cursor:not-allowed;opacity:.6}.machine-option-item.disabled:hover{background-color:#f8fafc;border-color:#0000}.compatibility-warning{align-items:center;background-color:#fff7ed;border:1px solid #ffedd5;border-radius:8px;color:#c2410c;display:flex;font-size:.85rem;font-weight:500;gap:10px;margin-top:1rem;padding:10px 14px}.compatibility-warning span{flex:1 1}.animate-pop{animation:pop .3s ease-out}@keyframes pop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.error-alert-banner{align-items:flex-start;background-color:#fef2f2;border:1px solid #fee2e2;border-radius:12px;color:#991b1b;display:flex;gap:12px;padding:1rem 1.25rem;position:relative}.error-text-box{display:flex;flex:1 1;flex-direction:column;gap:2px}.error-text-box strong{font-size:.8125rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.error-text-box p{font-size:.78rem;font-weight:500;line-height:1.4;margin:0}.error-close-btn{align-items:center;background:#0000;border:none;color:#991b1b;cursor:pointer;display:flex;justify-content:center;opacity:.5;padding:4px;transition:opacity .2s}.error-close-btn:hover{opacity:1}.animate-fade-in{animation:fadeIn .3s ease-out forwards}.scheduling-container{display:flex;flex-direction:column;gap:1.5rem;padding:.5rem}.scheduling-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.header-right{align-items:center;display:flex;gap:1.5rem}.view-toggle{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;display:flex;padding:4px}.toggle-btn{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:.8125rem;font-weight:700;padding:.5rem 1.25rem;transition:all .2s}.status-pill{border-radius:12px;cursor:pointer;padding:10px;transition:all .2s cubic-bezier(.4,0,.2,1)}.status-pill.occupied{background-color:#eff6ff;border:none;color:#2563eb;height:auto;min-height:60px;padding:.75rem}.status-pill.occupied.in-progress{background-color:#f0fdf4;border:none;color:#166534}.status-pill.occupied.completed{background-color:#f8fafc;border:none;color:#b3b7bd}.status-content-stack{align-items:center;display:flex;flex-direction:column;gap:2px;width:100%}.status-main{align-items:center;display:flex;font-size:14px;font-weight:800;gap:6px;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.appt-patient-details{align-items:center;display:flex;flex-direction:column;width:100%}.appt-p-name{color:#64748b;font-size:.75rem;font-weight:700;line-height:1.2;text-transform:uppercase;transition:color .2s}.status-pill:hover .appt-p-id,.status-pill:hover .appt-p-name{color:inherit}.appt-p-id{color:#94a3b8;font-size:.625rem;font-weight:600;transition:color .2s}.status-pill.available{background-color:#fff;border:1.5px solid #dcfce7;color:#10b981}.toggle-btn.active{background:#fff;box-shadow:0 2px 8px #0000000d;color:#0ea5e9}.header-left h1{color:#1e293b;font-size:1.5rem;font-weight:700;margin-bottom:1.25rem}.date-picker-nav{gap:12px}.date-picker-nav,.nav-icon-btn{align-items:center;display:flex}.nav-icon-btn{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;height:32px;justify-content:center;transition:all .2s;width:32px}.nav-icon-btn:hover{background-color:#f8fafc;color:#1e293b}.current-date{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 2px 4px #00000005;overflow:hidden;padding:0;position:relative}.date-picker-trigger{align-items:center;color:#1e293b;cursor:pointer;display:flex;font-size:.875rem;font-weight:700;gap:10px;padding:.5rem 1.25rem;transition:all .2s}.date-picker-trigger:hover{background-color:#f8fafc}.hidden-date-input{cursor:pointer;height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;width:100%}.add-appointment-btn{background-color:#0ea5e9;border:none;border-radius:12px;box-shadow:0 4px 14px #0ea5e966;color:#fff;font-size:.875rem;font-weight:700;padding:.75rem 1.75rem;transition:all .2s}.add-appointment-btn:hover{box-shadow:0 6px 20px #0ea5e980;transform:translateY(-1px)}.scheduling-grid-wrapper{background:#fff;border:1px solid #f1f5f9;border-radius:20px;box-shadow:0 10px 30px #0000000d;overflow:hidden}.grid-header-row{background-color:#fff;border-bottom:1px solid #f1f5f9;display:grid;grid-template-columns:220px repeat(2,1fr)}.machine-col-header,.slot-col-header{align-items:center;color:#94a3b8;display:flex;font-size:.75rem;font-weight:700;gap:8px;padding:1.25rem;text-transform:uppercase}.slot-col-header{border-left:1px solid #f1f5f9;justify-content:center}.grid-row{border-bottom:1px solid #f1f5f9;display:grid;grid-template-columns:220px repeat(2,1fr);transition:background .2s}.grid-row:hover{background-color:#fafbfc}.machine-info-cell{gap:16px}.machine-info-cell:before{bottom:10%;top:10%;width:4px}.machine-info-cell.hiv:before{background-color:#ef4444}.machine-info-cell.hcv:before{background-color:#a855f7}.machine-info-cell.hiv_hcv:before{background-color:#701a75}.machine-info-cell.standard:before{background-color:#3b82f6}.m-text{display:flex;flex-direction:column}.m-name{color:#1e293b;font-size:.9375rem;font-weight:700}.m-type{color:#94a3b8;font-size:.75rem;font-weight:600}.slot-cell{border-left:1px solid #f1f5f9}.empty-slot-btn{align-items:center;background:#f8fafc;border:1px dashed #e2e8f0;border-radius:12px;color:#94a3b8;display:flex;font-size:.8125rem;font-weight:600;height:54px;justify-content:center;transition:all .2s;width:100%}.empty-slot-btn:hover{background-color:#f0f9ff;border-color:#0ea5e9;border-style:solid;color:#0ea5e9}.appointment-card{border:1px solid #0000;border-radius:12px;display:flex;flex-direction:column;gap:4px;padding:.75rem 1rem;width:100%}.appointment-card.in-progress{background-color:#f0fdf4;border-color:#dcfce7}.appointment-card.upcoming{background-color:#eff6ff;border-color:#dbeafe}.appt-top{align-items:center;color:#166534;display:flex;gap:8px}.upcoming .appt-top{color:#1e40af}.appt-patient{font-size:.875rem;font-weight:700}.appt-status{font-size:.75rem;font-weight:600;padding-left:22px}.in-progress .appt-status{color:#166534}.upcoming .appt-status{color:#1e40af}.grid-header-row.daily-standard{background-color:#fff;border-bottom:2px solid #f1f5f9;display:grid;grid-template-columns:220px repeat(2,1fr)}.grid-row.daily-standard{border-bottom:1px solid #f1f5f9;display:grid;grid-template-columns:220px repeat(2,1fr);min-height:80px;position:relative}.machine-info-cell{position:relative}.machine-info-cell:before{border-radius:0 4px 4px 0;content:"";height:40px;left:0;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s;width:5px;z-index:10}.standard .machine-info-cell:before{background-color:#3b82f6}.hiv .machine-info-cell:before{background-color:#ef4444}.hcv .machine-info-cell:before{background-color:#a855f7}.hiv_hcv .machine-info-cell:before{background-color:#701a75}.unit-number-circle{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:16px;color:#64748b;display:flex;font-size:.75rem;font-weight:800;height:32px;justify-content:center;min-width:32px;padding:0 8px;white-space:nowrap}.machine-info-cell{background-color:#fcfdfe;gap:12px;padding:1.25rem}.machine-info-cell,.slot-cell{align-items:center;border-right:1px solid #f1f5f9;display:flex}.slot-cell{justify-content:center;padding:1rem}.slot-cell:last-child{border-right:none}.status-pill{border:none;border-radius:10px;display:flex;font-size:.8125rem;height:auto;max-width:140px;min-height:40px;padding:8px;transition:all .2s;white-space:nowrap;width:100%}.status-pill.available{background:#0000;border:none;color:#22c55e;cursor:pointer;font-size:14px;font-weight:800}.status-pill.available:hover{background:#f0fdf4;border:1px solid #dcfce7;box-shadow:0 4px 12px #22c55e1a;color:#22c55e;transform:translateY(-2px)}.status-pill.available.placeholder{opacity:.6}.status-pill.available.placeholder:hover{opacity:1}.status-pill.unavailable{background:#0000;border:none;color:#94a3b8;cursor:not-allowed;font-size:13px;font-weight:800;letter-spacing:.04em;transition:all .2s ease}.status-pill.unavailable:hover{background:#f1f5f9;color:#64748b}.status-pill.occupied{background:#0000;color:#0ea5e9;font-size:14px}.status-pill.occupied:hover{background:#f0f9ff;border:1px solid #e0f2fe;color:#0ea5e9}.status-pill.in-progress{border:1px solid #dcfce7;color:#22c55e}.status-pill.in-progress:hover{background:#22c55e;color:#fff}.status-pill.completed{color:#64748b;opacity:.8}.status-pill.completed:hover{background:#64748b;color:#fff;opacity:1}.status-content{align-items:center;display:flex;gap:6px}.pulse-icon{animation:iconPulse 2s infinite}@keyframes iconPulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.status-pill.out-of-service{background:#0000;border:none;color:#ef4444;cursor:pointer;font-size:14px;font-weight:800;transition:all .2s ease}.status-pill.out-of-service:hover{background:#fef2f2;border:1px solid #fee2e2;box-shadow:0 4px 12px #ef44441a;color:#ef4444;transform:translateY(-2px)}.status-pill.maintenance{background:#0000;border:none;color:#f59e0b;cursor:pointer;font-size:14px;font-weight:800;transition:all .2s ease}.status-pill.maintenance:hover{background:#fff7ed;border:1px solid #ffedd5;box-shadow:0 4px 12px #f59e0b1a;color:#f59e0b;transform:translateY(-2px)}.status-pill.offline{background:#f8fafc;border-color:#f1f5f9;color:#cbd5e1;cursor:not-allowed}.scheduling-grid-wrapper.weekly{overflow-x:auto}.grid-header-row.weekly,.grid-row.weekly{grid-template-columns:180px repeat(7,minmax(120px,1fr))!important}.grid-row.weekly{min-height:80px}.slot-col-header.weekly{flex-direction:column;gap:2px;padding:.75rem}.w-day{color:#94a3b8;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.w-date{color:#1e293b;font-size:1.125rem;font-weight:800}.slot-cell.weekly{align-items:center;border-left:1px solid #f1f5f9;display:flex;justify-content:center;padding:.75rem}.session-indicators{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,1fr)}.s-dot{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-size:.75rem;font-weight:800;height:28px;justify-content:center;transition:all .2s;width:28px}.s-dot.free{background:#f0f9ff;border:1px solid #bae6fd;color:#0ea5e9}.s-dot.free:hover{background:#0ea5e9;color:#fff;transform:translateY(-2px)}.s-dot.booked{background:#fee2e2;border:1px solid #fecaca;color:#ef4444;cursor:not-allowed}.status-alert-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a66;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.status-alert-modal{animation:slideUp .3s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:24px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:400px;padding:2.5rem;text-align:center;width:90%}.status-alert-icon{align-items:center;border-radius:20px;display:flex;height:72px;justify-content:center;margin:0 auto 1.5rem;width:72px}.status-alert-icon.orange{background:#fff7ed;color:#f97316}.status-alert-icon.red{background:#fef2f2;color:#ef4444}.status-alert-modal h3{color:#1e293b;font-size:1.25rem;font-weight:800;margin-bottom:.75rem}.status-alert-modal p{color:#64748b;font-size:.9375rem;line-height:1.6;margin-bottom:2rem}.status-alert-btn{background:#1e293b;border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:700;padding:.875rem 2.5rem;transition:all .2s;width:100%}.status-alert-btn:hover{background:#0f172a;transform:translateY(-1px)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1}}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a66;bottom:0;left:0;right:0;top:0;z-index:2000}.modal-content{border-radius:24px;box-shadow:0 20px 50px #00000026;max-width:850px!important;width:90%!important}.modal-header h2{font-size:1.25rem;font-weight:800;margin:0}.modal-body{flex:1 1;overflow-y:auto;padding:2rem}.form-grid{grid-gap:1.25rem 2rem;gap:1.25rem 2rem;grid-template-columns:repeat(2,1fr)}.form-group label{color:#475569;gap:8px;letter-spacing:.04em;margin-bottom:.25rem}.form-group label svg{color:#0ea5e9;height:16px;width:16px}.form-group.full-width,.form-row{grid-column:span 2}.form-row{grid-gap:2rem;gap:2rem;grid-template-columns:repeat(2,1fr)}.form-group input,.form-group select{background:#fcfdfe;border:1.5px solid #e2e8f0;font-size:.9375rem;font-weight:600;padding:.75rem 1rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e91a}.form-group textarea{background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;color:#1e293b;font-size:.9375rem;font-weight:600;padding:.75rem 1rem;resize:vertical}.modal-footer{background:#fff;border-top:1px solid #f1f5f9;padding:1rem 2rem}.cancel-btn{background:#f8fafc}.cancel-btn:hover{background:#f1f5f9}.save-btn{align-items:center;background:#0ea5e9;border:none;border-radius:12px;box-shadow:0 4px 12px #0ea5e933;color:#fff;cursor:pointer;display:flex;flex:2 1;font-size:.875rem;font-weight:700;gap:8px;justify-content:center;padding:.75rem;transition:all .2s}.save-btn:hover{background:#0284c7;box-shadow:0 6px 15px #0ea5e94d;transform:translateY(-1px)}.service-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a66;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;position:fixed;right:0;top:0;z-index:2000}.service-modal-content{background:#fff;border-radius:24px;box-shadow:0 20px 50px #00000026;max-width:500px;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.service-header{background:#f8fafc;border-bottom:1px solid #f1f5f9;justify-content:space-between;padding:2rem}.header-title,.service-header{align-items:center;display:flex}.header-title{gap:1.25rem}.icon-badge{align-items:center;background:#eef2ff;border-radius:14px;color:#4338ca;display:flex;height:48px;justify-content:center;width:48px}.header-title h2{color:#1e293b;font-size:1.25rem;font-weight:800;margin:0}.header-title p{color:#64748b;font-size:.875rem;font-weight:600;margin:2px 0 0}.close-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#64748b;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.close-btn:hover{background:#f8fafc;color:#1e293b}.service-form{padding:2rem}.form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.form-group{gap:.5rem}.form-group.full-width{grid-column:1/-1}.form-group label{align-items:center;display:flex;gap:6px}.form-group input,.form-group select,.form-group textarea{background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;color:#1e293b;font-size:.9375rem;font-weight:500;padding:.75rem 1rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#fff;border-color:#4338ca;box-shadow:0 0 0 4px #4338ca0d;outline:none}.modal-footer{display:flex;gap:1rem;margin-top:2rem}.cancel-btn,.submit-btn{padding:.875rem}.submit-btn{background:#4338ca}.submit-btn:hover{background:#3730a3;box-shadow:0 4px 12px #4338ca4d}.success-state{align-items:center;display:flex;flex-direction:column;padding:4rem 2rem;text-align:center}.success-icon-ring{align-items:center;background:#f0fdf4;border-radius:100%;color:#16a34a;display:flex;height:80px;justify-content:center;margin-bottom:1.5rem;width:80px}.success-state h3{color:#0f172a;font-size:1.5rem;font-weight:800;margin:0 0 .5rem}.success-state p{color:#64748b;font-weight:500}.animate-pop{animation:popIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fadeIn .4s ease-out}.machines-page{background-color:#f8fafc;min-height:100vh;padding:1rem}.page-header-minimal{margin-bottom:3rem}.header-tag{color:#f59e0b;font-size:.75rem;font-weight:800;letter-spacing:.1em;margin-bottom:.5rem}.header-main{align-items:center;gap:2rem}.search-group-modern{align-items:center;display:flex;flex:1 1;max-width:500px;position:relative}.search-group-modern input{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 4px #00000005;color:#1e293b;font-size:.9375rem;font-weight:600;padding:.875rem 1rem .875rem 3.25rem;transition:all .2s;width:100%}.search-group-modern input:focus{background:#fff;border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e91a,0 4px 12px #0000000d;outline:none}.search-icon{color:#94a3b8;left:1.25rem;pointer-events:none;position:absolute;z-index:1}.header-actions-group{gap:1.25rem}.modern-title{color:#0f172a;font-size:2.5rem;font-weight:800;margin:0}.title-group p{color:#64748b;font-size:.95rem;margin:.5rem 0 0}.add-unit-btn{align-items:center;background:#0f172a;border:none;border-radius:12px;color:#fff;display:flex;font-weight:700;gap:8px;padding:.75rem 1.5rem;transition:all .2s}.add-unit-btn:hover{box-shadow:0 4px 12px #0f172a33;transform:translateY(-2px)}.machine-group-section{margin-bottom:4rem}.group-header{gap:1.25rem;margin-bottom:2rem}.group-header,.group-icon-box{align-items:center;display:flex}.group-icon-box{background:#fff;border-radius:14px;box-shadow:0 2px 8px #0000000d;color:#ef4444;height:48px;justify-content:center;width:48px}.group-info h2{color:#1e293b;font-size:1.25rem;font-weight:800;margin:0}.group-info span{color:#94a3b8;font-size:.875rem;font-weight:500}.machines-grid-modern{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.machine-card-premium{background:#fff;border:1px solid #f1f5f9;border-radius:24px;padding:1.75rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.machine-card-premium:hover{box-shadow:0 12px 24px #0000000a;transform:translateY(-4px)}.card-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.machine-type-badge{background:#fef2f2;border-radius:8px;color:#ef4444;font-size:.65rem;font-weight:900;padding:4px 10px}.unit-number{color:#1e293b;font-size:1.75rem;font-weight:800;letter-spacing:-.02em;margin:0}.status-badge-modern{align-items:center;background:#f8fafc;border:1px solid #f1f5f9;border-radius:8px;display:flex;gap:8px;padding:4px 10px}.status-badge-modern span{color:#64748b;font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.status-orb{border-radius:50%;height:8px;position:relative;width:8px}.status-orb:after{animation:pulse-orb 2s infinite;border:1px solid;border-radius:50%;bottom:-2px;content:"";left:-2px;opacity:.3;position:absolute;right:-2px;top:-2px}@keyframes pulse-orb{0%{opacity:.5;transform:scale(1)}70%{opacity:0;transform:scale(1.8)}to{opacity:0;transform:scale(1.8)}}.status-orb.in-use{background:#10b981;color:#10b981}.status-orb.maintenance{background:#f59e0b;color:#f59e0b}.status-orb.out-of-service{background:#ef4444;color:#ef4444}.status-pill-vibrant{align-items:center;border-radius:12px;display:inline-flex;font-size:.8125rem;font-weight:700;gap:8px;margin-bottom:1.5rem;padding:6px 14px}.status-pill-vibrant.in-use{background:#eff6ff;color:#2563eb}.status-pill-vibrant.out-of-service{background:#fee2e2;color:#991b1b}.status-pill-vibrant.maintenance{background:#fff7ed;color:#9a3412}.unit-label{color:#64748b;font-size:.75rem;font-weight:800;letter-spacing:.08em;opacity:.8;text-transform:uppercase}.service-info{align-items:center;color:#94a3b8;display:flex;font-size:.8125rem;font-weight:600;gap:10px;margin-bottom:1.5rem}.service-info svg{color:#cbd5e1}.quick-actions{background:#f8fafc;border-radius:14px;display:flex;margin-bottom:1.5rem;padding:4px}.q-btn{background:#0000;border:none;border-radius:10px;color:#64748b;flex:1 1;font-size:.65rem;font-weight:800;padding:8px 4px;transition:all .2s}.q-btn:hover{background:#fff;color:#0f172a}.q-btn.active{box-shadow:0 4px 12px #0000001f;color:#fff}.q-btn:first-child.active{background:#059669;box-shadow:0 4px 12px #0596694d}.q-btn:nth-child(2).active{background:#d97706;box-shadow:0 4px 12px #d977064d}.q-btn:nth-child(3).active{background:#dc2626;box-shadow:0 4px 12px #dc26264d}.q-btn:first-child:hover{background:#ecfdf5;color:#059669}.q-btn:nth-child(2):hover{background:#fffbeb;color:#d97706}.q-btn:nth-child(3):hover{background:#fef2f2;color:#dc2626}.configure-link{align-items:center;background:none;border:1px solid #f1f5f9;border-radius:12px;color:#64748b;cursor:pointer;display:flex;flex:1 1;font-size:.8125rem;font-weight:700;height:48px;justify-content:center;transition:all .2s}.configure-link:hover{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.footer-service-btn{align-items:center;background:#eef2ff;border:1px solid #e0e7ff;border-radius:12px;color:#4338ca;cursor:pointer;display:flex;flex-shrink:0;height:48px;justify-content:center;transition:all .2s;width:48px}.footer-service-btn:hover{background:#4338ca;border-color:#4338ca;box-shadow:0 4px 12px #4338ca33;color:#fff;transform:translateY(-2px)}.footer-delete-btn{align-items:center;background:#fff1f2;border:1px solid #ffe4e6;border-radius:12px;color:#e11d48;cursor:pointer;display:flex;flex-shrink:0;height:48px;justify-content:center;transition:all .2s;width:48px}.footer-delete-btn:hover{background:#be123c;border-color:#be123c;box-shadow:0 4px 12px #be123c33;color:#fff;transform:translateY(-2px)}.loading-state{color:#94a3b8;font-weight:600;padding:5rem;text-align:center}.card-footer-actions{align-items:center;border-top:1px solid #f1f5f9;display:flex;gap:12px;justify-content:space-between;margin-top:1.5rem;padding-top:1rem}.delete-machine-btn{align-items:center;background:#fef2f2;border:1px solid #fee2e2;border-radius:8px;color:#ef4444;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.delete-machine-btn:hover{background:#ef4444;color:#fff;transform:scale(1.05)}.configure-link{margin-top:0!important}.absolute-delete-btn{align-items:center;background:#fff;border:2px solid #fee2e2;border-radius:50%;box-shadow:0 4px 12px #0000001a;color:#ef4444;cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:-10px;top:-10px;transition:all .2s cubic-bezier(.4,0,.2,1);width:36px;z-index:999}.absolute-delete-btn:hover{background:#ef4444!important;border-color:#ef4444;color:#fff!important;transform:scale(1.1) rotate(90deg)}.header-actions-group{align-items:center;display:flex;gap:1rem}.clear-all-btn{align-items:center;background:#0000;border:1px solid #fee2e2;border-radius:12px;color:#ef4444;cursor:pointer;display:flex;font-size:.875rem;font-weight:700;gap:8px;padding:.75rem 1.25rem;transition:all .2s}.clear-all-btn:hover{background:#ef4444;border-color:#ef4444;color:#fff;transform:translateY(-2px)}.confirm-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a99;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.confirm-box{background:#fff;border-radius:24px;box-shadow:0 25px 50px #00000026;max-width:440px;padding:2.5rem;position:relative;text-align:center;width:100%}.confirm-close{align-items:center;background:#f1f5f9;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:1.25rem;top:1.25rem;transition:all .2s;width:36px}.confirm-close:hover{background:#e2e8f0;color:#0f172a}.confirm-icon{align-items:center;background:#fef2f2;border-radius:50%;display:flex;height:64px;justify-content:center;margin:0 auto 1.5rem;width:64px}.confirm-title{color:#0f172a;font-size:1.375rem;font-weight:800;margin:0 0 .75rem}.confirm-message{color:#64748b;font-size:.9375rem;line-height:1.6;margin:0 0 2rem}.confirm-actions{display:flex;gap:1rem}.confirm-cancel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;color:#64748b;cursor:pointer;flex:1 1;font-size:.9375rem;font-weight:700;padding:.875rem;transition:all .2s}.confirm-cancel:hover{background:#f8fafc;color:#0f172a}.confirm-delete{background:#ef4444;border:none;border-radius:14px;color:#fff;cursor:pointer;flex:1 1;font-size:.9375rem;font-weight:700;padding:.875rem;transition:all .2s}.confirm-delete:hover{background:#dc2626;transform:translateY(-1px)}.spin-icon{animation:spin 1s linear infinite}.staff-container{display:flex;flex-direction:column;gap:1.5rem}.staff-header{align-items:center;display:flex;justify-content:flex-end}.staff-header h1{color:#1e293b;font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.add-staff-btn{background-color:#0ea5e9;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;gap:8px;padding:.625rem 1.25rem;transition:all .2s}.add-staff-btn,.staff-controls{align-items:center;display:flex}.staff-controls{gap:1rem;justify-content:space-between}.search-staff{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#64748b;display:flex;gap:10px;padding:.6rem 1rem;width:300px}.search-staff input{background:#0000;border:none;color:#1e293b;font-size:.875rem;outline:none;width:100%}.role-filters{align-items:center;display:flex;gap:12px}.filter-label{color:#94a3b8;font-size:.75rem;font-weight:800;letter-spacing:.05em}.role-select{appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:1px solid #e2e8f0;border-radius:999px;color:#1e293b;cursor:pointer;font-size:.8125rem;font-weight:700;min-width:150px;outline:none;padding:.5rem 2.25rem .5rem 1rem;transition:all .2s}.role-select:hover{background-color:#f8fafc;border-color:#0ea5e9}.staff-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.staff-card{background:#fff;border:1px solid #f1f5f9;border-radius:24px;box-shadow:0 4px 6px -1px #00000005,0 2px 4px -1px #00000003;display:flex;flex-direction:column;gap:1.5rem;overflow:hidden;padding:1.75rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.staff-card:hover{border-color:#0ea5e9;box-shadow:0 20px 25px -5px #0ea5e91a,0 10px 10px -5px #0ea5e90a;transform:translateY(-8px)}.staff-card-header{align-items:flex-start;display:flex;justify-content:space-between}.staff-avatar{height:64px;position:relative;width:64px}.staff-avatar img{background-color:#f8fafc;border:2px solid #fff;border-radius:20px;box-shadow:0 8px 16px #0000000d;height:100%;object-fit:cover;width:100%}.status-indicator{border:2px solid #fff;border-radius:50%;bottom:-2px;height:14px;position:absolute;right:-2px;width:14px}.status-indicator.on-duty{background-color:#10b981}.status-indicator.off-duty{background-color:#94a3b8}.more-btn{color:#94a3b8}.staff-info h3{color:#1e293b;font-size:1.125rem;font-weight:800;letter-spacing:-.01em;margin-bottom:4px}.staff-role{background:#0ea5e914;border-radius:6px;color:#0ea5e9;display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase}.stat-content{text-align:left}.staff-contact{display:flex;flex-direction:column;gap:8px;margin:12px 0}.contact-item{align-items:center;color:#64748b;display:flex;font-size:.8125rem;gap:8px}.status-pill{border-radius:8px;font-size:.625rem;font-weight:700;gap:6px;padding:3px 8px;transition:all .2s ease;width:fit-content}.status-pill:before{border-radius:50%;content:"";height:6px;width:6px}.status-pill.on-duty{background:#f0fdf4;border:1px solid #dcfce7;color:#10b981}.status-pill.on-duty:before{background-color:#10b981;box-shadow:0 0 8px #10b98166}.status-pill.off-duty{background:#f8fafc;border:1px solid #e2e8f0;color:#64748b}.status-pill.off-duty:before{background-color:#94a3b8}.view-profile-btn{align-items:center;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;color:#1e293b;display:flex;font-size:.875rem;font-weight:700;gap:8px;justify-content:center;padding:.75rem;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.view-profile-btn:hover{background-color:#0ea5e9;border-color:#0ea5e9;box-shadow:0 10px 15px -3px #0ea5e933;color:#fff}.stat-icon-circle{border-radius:14px;height:48px;width:48px}.modal-tabs{background-color:#f1f5f9;border-radius:10px;display:flex;gap:4px;margin:0 2rem .75rem;padding:4px}.tab-btn{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;flex:1 1;font-size:.75rem;font-weight:700;padding:.5rem;transition:all .2s}.tab-btn.active{background-color:#fff;border:1px solid #e2e8f0;box-shadow:0 2px 8px #0000000d;color:#0ea5e9}.staff-form{display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:0}.form-group input:not([type=checkbox]),.form-group select{background:#f8fafc;border:1.5px solid #f1f5f9;border-radius:12px;color:#1e293b;font-size:.875rem;outline:none;padding:.875rem 1rem;transition:all .2s;width:100%}.tab-content{display:flex;flex-direction:column;gap:2rem;padding-bottom:1rem}.pg-toggle-container{align-items:center;background:#f8fafc;border:1.5px solid #f1f5f9;border-radius:12px;cursor:pointer;display:flex;gap:12px;margin-top:1rem;padding:1rem;transition:all .2s}.pg-toggle-container:hover{background:#f0f9ff;border-color:#0ea5e9}.pg-toggle-container input[type=checkbox]{accent-color:#0ea5e9;cursor:pointer;height:18px!important;width:18px!important}.pg-toggle-container span{color:#475569;font-size:.8125rem;font-weight:700;letter-spacing:.025em;text-transform:uppercase}.section-title-small{align-items:center;border-bottom:1px solid #f1f5f9;color:#0ea5e9;display:flex;font-size:.8125rem;font-weight:800;letter-spacing:.05em;margin-bottom:1rem;margin-top:2.5rem;padding-bottom:.75rem;text-transform:uppercase}.section-title-small:first-of-type{margin-top:0}.document-upload-row{background:#f8fafc;border:1px dashed #e2e8f0;border-radius:16px;padding:1.25rem;transition:all .2s}.document-upload-row:hover{background:#f0f9ff;border-color:#0ea5e9}.staff-upload-box{cursor:pointer;display:block;width:100%}.upload-box-content{align-items:center;display:flex;gap:12px;padding:.5rem 0}.upload-box-content span{color:#475569;font-size:.875rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-group select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%230ea5e9' stroke-width='3'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m19.5 8.25-7.5 7.5-7.5-7.5'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:1.1rem;cursor:pointer;padding-right:2.8rem}.form-group input::placeholder{color:#94a3b8}.form-group input:focus,.form-group select:focus,.form-textarea:focus{background:#fff;border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e91a}.form-textarea{line-height:1.5;min-height:100px;resize:vertical}.form-row{width:100%}.form-actions{justify-content:space-between}.left-actions,.right-actions{align-items:center;display:flex;gap:1rem}.cancel-btn{border:none;padding:.875rem 1.5rem}.cancel-btn:hover{background:#e2e8f0}.back-btn{background:#f1f5f9;border:none;color:#475569;padding:.875rem 1.5rem}.back-btn:hover{background:#e2e8f0;color:#1e293b}.submit-btn{min-width:160px;padding:.875rem 2rem}.action-container{position:relative}.action-dropdown{background:#fff;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;display:flex;flex-direction:column;gap:2px;min-width:160px;padding:.5rem;position:absolute;right:0;top:calc(100% + 5px);z-index:50}.action-dropdown button{align-items:center;background:#0000;border:none;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:.8125rem;font-weight:600;gap:10px;outline:none;padding:.625rem .75rem;text-align:left;transition:all .2s;width:100%}.action-dropdown button:hover{background:#f1f5f9;color:#0ea5e9}.action-dropdown button.delete-action{color:#ef4444}.action-dropdown button.delete-action:hover{background:#fef2f2;color:#ef4444}.photo-capture-section{align-items:center;background:#f8fafc;border:2px dashed #e2e8f0;display:flex;flex-direction:column;gap:1.25rem;justify-content:center;margin-bottom:1.5rem;transition:all .2s}.photo-capture-section,.stat-box{border-radius:20px;padding:1.5rem}.stat-box{box-shadow:0 4px 6px -1px #00000005,0 2px 4px -1px #00000003}.photo-options{align-items:center;display:flex;flex-direction:column;gap:1rem;width:100%}.staff-photo-trigger{align-items:center;background:#0ea5e9;border:none;border-radius:12px;box-shadow:0 4px 12px #0ea5e933;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:700;gap:10px;padding:.75rem 1.5rem;transition:all .2s}.staff-photo-trigger:hover{background:#0284c7;box-shadow:0 8px 20px #0ea5e94d;transform:translateY(-2px)}.photo-divider{align-items:center;color:#94a3b8;display:flex;font-size:.75rem;font-weight:800;gap:1rem;width:60%}.photo-divider:after,.photo-divider:before{background:#e2e8f0;content:"";flex:1 1;height:1px}.upload-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#64748b;cursor:pointer;display:flex;font-size:.875rem;font-weight:700;gap:10px;padding:.625rem 1.25rem;transition:all .2s}.upload-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b}.camera-view{align-items:center;display:flex;flex-direction:column;gap:1rem;width:100%}.live-video{background:#000;border-radius:16px;box-shadow:0 8px 30px #0003;height:240px;max-width:320px;object-fit:cover;width:100%}.camera-controls{display:flex;gap:1rem}.staff-snap-btn{align-items:center;background:#10b981;color:#fff;display:flex;font-weight:700;gap:8px;padding:.625rem 1.25rem}.cancel-snap,.staff-snap-btn{border:none;border-radius:10px;cursor:pointer}.cancel-snap{background:#f1f5f9;color:#64748b;padding:.625rem}.photo-preview-container{align-items:center;display:flex;flex-direction:column;gap:1rem}.photo-preview{border:4px solid #fff;border-radius:50%;box-shadow:0 8px 25px #0000001a;height:120px;object-fit:cover;width:120px}.retake-btn{align-items:center;background:#fff;border:1px solid #fee2e2;border-radius:10px;color:#ef4444;cursor:pointer;display:flex;font-size:.8125rem;font-weight:700;gap:8px;padding:.5rem 1rem}.retake-btn:hover{background:#fef2f2}.existing-doc-hint{background:#f0f9ff;border:1px dashed #0ea5e9;border-radius:8px;margin-top:.75rem;padding:.5rem 1rem;text-align:center}.existing-doc-hint a{align-items:center;color:#0ea5e9;display:flex;font-size:.8125rem;font-weight:600;gap:6px;justify-content:center;text-decoration:none}.existing-doc-hint a:hover{text-decoration:underline}.existing-doc-hint a:before{content:"👁️";font-size:1rem}.profile-page-container{display:flex;flex-direction:column;gap:1.5rem;padding-bottom:3rem}.profile-nav-header{align-items:center;display:flex}.back-btn{border-radius:10px;display:flex;font-weight:600;gap:8px;padding:.5rem 1rem;transition:all .2s}.profile-layout{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:320px 1fr}@media (max-width:992px){.profile-layout{grid-template-columns:1fr}}.profile-sidebar{display:flex;flex-direction:column;gap:1.5rem;height:fit-content;position:sticky;top:5.5rem}.profile-main-card{padding:2.5rem 1.5rem;text-align:center}.profile-avatar-large{height:120px;margin:0 auto 1.5rem;position:relative;width:120px}.profile-avatar-large img{background:#f1f5f9;border:4px solid #fff;border-radius:24px;box-shadow:0 10px 15px -3px #0000001a;height:100%;object-fit:cover;width:100%}.status-tag{border-radius:20px;bottom:-10px;box-shadow:0 4px 6px -1px #0000001a;color:#fff;font-size:.75rem;font-weight:700;left:50%;padding:.25rem .75rem;position:absolute;transform:translateX(-50%);white-space:nowrap}.status-tag.on-duty{background:#10b981}.status-tag.off-duty{background:#94a3b8}.profile-basic-info h1{color:#1e293b;font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.role-text{color:#0ea5e9;font-size:.875rem;font-weight:600;margin-bottom:.75rem}.specialty-badge{background:#f0f9ff;border-radius:8px;color:#0369a1;display:inline-block;font-size:.75rem;font-weight:600;margin-bottom:1.5rem;padding:.35rem .85rem}.profile-contact-list{background:#f8fafc;border-radius:12px;display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;padding:1.25rem;text-align:left}.contact-row{align-items:center;color:#475569;display:flex;font-size:.8125rem;gap:12px}.contact-row svg{color:#94a3b8}.edit-profile-btn{background:#0ea5e9;border:none;border-radius:10px;color:#fff;font-size:.875rem;font-weight:600;padding:.75rem;transition:background .2s;width:100%}.edit-profile-btn:hover{background:#0284c7}.animate-fade-in{animation:fadeIn .3s ease-out}.schedule-table-wrapper{background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;overflow:hidden}.schedule-table{border-collapse:collapse;font-size:.875rem;width:100%}.schedule-table td,.schedule-table th{padding:1rem;text-align:left;vertical-align:middle}.schedule-table th{background:#f1f5f9;color:#64748b;font-size:.75rem;font-weight:700;text-transform:uppercase}.schedule-table td{border-top:1px solid #f1f5f9;color:#334155;font-weight:500}.schedule-table td:first-child{white-space:nowrap;width:100px}.schedule-table td:nth-child(2){white-space:nowrap;width:160px}.schedule-table td:nth-child(3){width:auto}.schedule-table td:nth-child(4){width:100px}.schedule-table td:nth-child(5){text-align:right;width:120px}.schedule-table th:last-child{text-align:right}.status-pill{align-items:center;background:#0000!important;border:none!important;display:inline-flex;font-size:.7rem;font-weight:800;justify-content:center;letter-spacing:.05em;padding:0;text-transform:uppercase}.status-pill.upcoming{color:#0ea5e9;font-size:11px}.status-pill.active{background:#ecfdf5;color:#059669}.docs-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.doc-item{align-items:center;display:flex;gap:1rem;padding:1.25rem;transition:all .2s}.doc-item:hover{background:#f0f9ff;border-color:#0ea5e9}.doc-icon{color:#0ea5e9;flex-shrink:0}.doc-info{flex:1 1;min-width:0}.doc-name{color:#1e293b;font-size:.875rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-meta{color:#94a3b8;font-size:.75rem}.download-btn{background:#0000;color:#0ea5e9;font-size:.75rem;font-weight:700;padding:4px 8px}.download-btn:hover{text-decoration:underline}.profile-stats-card{padding:1.5rem}.profile-stats-card h3{color:#1e293b;font-size:.9375rem;font-weight:700;margin-bottom:1.25rem}.stats-list{display:flex;flex-direction:column;gap:1.25rem}.mini-stat{gap:12px}.mini-icon,.mini-stat{align-items:center;display:flex}.mini-icon{border-radius:8px;height:36px;justify-content:center;width:36px}.mini-icon.amber{background:#fffbeb;color:#d97706}.mini-icon.sky{background:#f0f9ff;color:#0284c7}.mini-icon.emerald{background:#ecfdf5;color:#059669}.stat-val{color:#334155;font-size:1rem;font-weight:700}.profile-main-content{display:flex;flex-direction:column}.content-card{min-height:400px;padding:0}.card-header-tabs{border-bottom:1px solid #f1f5f9;display:flex;gap:2rem;padding:0 2rem}.tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#64748b;font-size:.875rem;font-weight:600;padding:1.25rem 0;transition:all .2s}.tab.active{border-bottom-color:#0ea5e9;color:#0ea5e9}.tab:hover:not(.active){color:#475569}.tab-content{overflow:hidden;padding:1.5rem}.profile-section{margin-bottom:1.5rem}.profile-section h3{color:#1e293b;font-size:1rem;font-weight:700;margin-bottom:1rem}.about-text{color:#475569;font-size:.9375rem;line-height:1.6}.details-grid{grid-gap:1.5rem;background:#f8fafc;border-radius:12px;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:1.5rem}.detail-item label{color:#94a3b8;display:block;font-size:.75rem;font-weight:600;margin-bottom:.5rem;text-transform:uppercase}.detail-item p{color:#334155;font-weight:600}.activity-timeline{display:flex;flex-direction:column;gap:1.5rem;padding-left:.75rem}.timeline-item{padding-left:1.5rem;position:relative}.timeline-marker{background:#0ea5e9;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 4px #f0f9ff;height:10px;left:0;position:absolute;top:5px;width:10px;z-index:1}.timeline-item:not(:last-child):after{background:#f1f5f9;content:"";height:calc(100% + .5rem);left:4px;position:absolute;top:15px;width:2px}.timeline-info h4{color:#1e293b;font-size:.875rem;font-weight:600;margin-bottom:2px}.timeline-info p{color:#94a3b8;font-size:.75rem}.education-timeline{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-top:1.5rem}.edu-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.edu-card:before{background:#0ea5e9;content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .3s ease;width:4px}.edu-card:hover{border-color:#0000;box-shadow:0 10px 25px -5px #0000000d,0 8px 10px -6px #0000000d;transform:translateY(-4px)}.edu-card:hover:before{opacity:1}.edu-card.secondary{background:#f8fafc}.edu-card.secondary:before{background:#94a3b8}.edu-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.edu-header h4{color:#0ea5e9;font-size:.75rem;font-weight:800;letter-spacing:.1em;margin:0;text-transform:uppercase}.edu-card.secondary .edu-header h4{color:#64748b}.edu-year{background:#f1f5f9;border-radius:8px;color:#1e293b;font-size:.75rem;font-weight:700;padding:.35rem .75rem}.edu-degree{color:#0f172a;font-size:1.125rem;font-weight:700;line-height:1.4;margin-bottom:.5rem}.edu-college,.edu-school{color:#64748b;font-size:.9375rem;font-weight:500;margin-bottom:1.25rem}.edu-score{align-items:center;background:#f0fdf4;border:1px solid #dcfce7;border-radius:10px;color:#10b981;display:inline-flex;font-size:.8125rem;font-weight:700;margin-top:auto;padding:.5rem .875rem;width:fit-content}.edu-score:before{content:"🎯";font-size:1rem;margin-right:6px}.profile-stats-row{grid-gap:1.25rem;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:.5rem}.stat-box{align-items:center;background:#fff;border:1px solid #f1f5f9;border-radius:16px;display:flex;flex-direction:row;gap:1rem;justify-content:space-between;overflow:hidden;padding:1.5rem 1.25rem;position:relative;text-align:left;transition:all .3s cubic-bezier(.4,0,.2,1)}.stat-box:hover{border-color:#e2e8f0;box-shadow:0 15px 20px -5px #0000000a,0 8px 8px -5px #00000008;transform:translateY(-4px)}.stat-box:after{background:linear-gradient(135deg,#0000 50%,#0ea5e905);border-radius:0 0 0 100%;content:"";height:60px;position:absolute;right:0;top:0;width:60px}.stat-icon-circle{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:44px;justify-content:center;margin-bottom:.25rem;transition:all .3s;width:44px}.stat-box:hover .stat-icon-circle{transform:scale(1.1) rotate(5deg)}.stat-icon-circle.amber{background:#fffbeb;color:#f59e0b}.stat-icon-circle.sky{background:#f0f9ff;color:#0ea5e9}.stat-icon-circle.emerald{background:#ecfdf5;color:#10b981}.stat-content{align-items:flex-start;display:flex;flex-direction:column;gap:4px}.stat-label{font-size:.7rem;font-weight:800;letter-spacing:.075em}.stat-val{color:#0f172a;font-size:1.5rem;font-weight:800;line-height:1}.machine-profile-page{background-color:#f8fafc;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.back-btn,.profile-header{margin-bottom:2rem}.back-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px #0000000d;color:#64748b;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:700;gap:10px;padding:.625rem 1.25rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.back-btn:hover{background:#f8fafc;border-color:#0ea5e9;box-shadow:0 4px 12px #0ea5e91a;color:#0ea5e9;transform:translateX(-4px)}.back-btn svg{transition:transform .2s ease}.header-main{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.type-meta{row-gap:8px}.profile-unit-tag{color:#0ea5e9;font-size:.75rem;font-weight:800;letter-spacing:.1em;margin-bottom:.25rem}.title-group h1{color:#0f172a;font-size:2.25rem;font-weight:800;letter-spacing:-.02em;margin:.5rem 0}.type-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.serial-pill,.unit-location-pill{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;font-size:.75rem;font-weight:700;padding:.4rem .75rem}.serial-pill strong{color:#0ea5e9;margin-left:4px}.unit-location-pill{background:#f0f9ff;border-color:#bae6fd;color:#0369a1}.type-pill{border-radius:8px;font-size:.75rem;font-weight:700;padding:4px 12px;text-transform:uppercase}.type-pill.standard{background:#e0f2fe;color:#0369a1}.type-pill.hiv{background:#fee2e2;color:#b91c1c}.type-pill.hcv{background:#f3e8ff;color:#7e22ce}.type-pill.hiv_hcv{background:#fdf2f8;color:#be185d}.status-dot{align-items:center;color:#64748b;display:flex;font-size:.8125rem;font-weight:600;gap:6px}.status-dot:before{border-radius:50%;content:"";height:8px;width:8px}.status-dot.in-use:before{background:#22c55e;box-shadow:0 0 0 4px #22c55e26}.status-dot.maintenance:before{background:#f59e0b}.status-dot.out-of-service:before{background:#ef4444}.service-trigger-btn{align-items:center;background:#0f172a;border:none;border-radius:14px;color:#fff;cursor:pointer;display:flex;font-weight:700;gap:10px;padding:.875rem 1.5rem;transition:all .2s}.service-trigger-btn:hover{box-shadow:0 8px 20px #0f172a33;transform:translateY(-2px)}.profile-grid{grid-gap:2rem;align-items:stretch;display:grid;gap:2rem;grid-template-columns:minmax(0,1fr) 400px}@media (max-width:960px){.profile-grid{grid-template-columns:1fr}}.profile-stats-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin-bottom:2rem}.stat-card{background:#fff;border-radius:20px;box-shadow:0 4px 12px #00000008;gap:1rem;padding:1.5rem}.stat-icon{border-radius:14px;height:48px;width:48px}.stat-icon.uptime{background:#ecfdf5;color:#059669}.stat-icon.sessions{background:#eff6ff;color:#2563eb}.stat-icon.service{background:#fff7ed;color:#d97706}.stat-label{color:#94a3b8;display:block;font-weight:700;margin-bottom:2px}.stat-value{font-size:1.125rem;font-weight:800}.specs-section{background:#fff;border-radius:24px;box-shadow:0 4px 12px #00000008;margin-bottom:2rem;padding:1.75rem}.specs-grid{grid-gap:1.5rem 2rem;display:grid;gap:1.5rem 2rem;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:.5rem}@media (max-width:1100px){.specs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.specs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.spec-item{display:flex;flex-direction:column;gap:.4rem;min-width:0}.spec-item.full-width{grid-column:1/-1}.spec-label{align-items:center;color:#94a3b8;display:inline-flex;font-size:.7rem;font-weight:700;gap:6px;letter-spacing:.06em;text-transform:uppercase}.spec-value{color:#0f172a;font-size:.9375rem;font-weight:700;word-break:break-word}.spec-text{background:#f8fafc;border-radius:12px;color:#475569;font-size:.875rem;line-height:1.55;margin:0;padding:.75rem 1rem}.schedule-section{background:#fff;border-radius:24px;box-shadow:0 4px 12px #00000008;padding:2rem}.section-header{align-items:center;color:#1e293b;display:flex;gap:12px;margin-bottom:1.5rem}.section-header h2{font-size:1.125rem;font-weight:800;margin:0}.schedule-list{display:flex;flex-direction:column;gap:12px}.schedule-item{align-items:center;background:#f8fafc;border-radius:16px;display:grid;grid-template-columns:100px 1fr 100px;padding:1.25rem}.time-col{color:#0ea5e9;font-size:.875rem;font-weight:800}.p-name{color:#1e293b;display:block;font-size:.9375rem;font-weight:700}.p-id{color:#94a3b8;font-size:.75rem;font-weight:600}.status-col{font-size:.75rem;font-weight:800;text-align:right;text-transform:uppercase}.status-col.confirmed{color:#059669}.status-col.upcoming{color:#2563eb}.status-col.completed{color:#10b981}.history-section{background:#fff;border-radius:24px;box-shadow:0 4px 12px #00000008;height:100%;padding:2rem}.history-timeline{display:flex;flex-direction:column;padding-left:20px;position:relative}.history-timeline:before{background:#f1f5f9;bottom:0;content:"";left:0;position:absolute;top:10px;width:2px}.timeline-entry{padding-bottom:2rem;position:relative}.entry-dot{background:#cbd5e1;border:2px solid #fff;border-radius:50%;height:10px;left:-24px;position:absolute;top:6px;width:10px;z-index:2}.entry-content{background:#f8fafc;border-radius:16px;padding:1.25rem}.entry-header{display:flex;justify-content:space-between;margin-bottom:8px}.entry-date{color:#1e293b;font-size:.8125rem;font-weight:700}.entry-type{border-radius:6px;font-size:.65rem;font-weight:800;padding:2px 8px;text-transform:uppercase}.entry-type.routine{background:#dcfce7;color:#166534}.entry-type.repair{background:#fee2e2;color:#991b1b}.entry-type.calibration{background:#fef9c3;color:#854d0e}.entry-tech{align-items:center;color:#64748b;display:flex;font-size:.75rem;font-weight:600;gap:6px;margin-bottom:10px}.entry-notes{color:#475569;font-size:.875rem;line-height:1.5;margin:0}.empty-history{color:#94a3b8;padding:4rem 0;text-align:center}.empty-history p{font-weight:600;margin-top:1rem}.empty-schedule{background:#f8fafc;border-radius:16px;color:#94a3b8;font-size:.9rem;font-weight:600;padding:2rem 0;text-align:center}.profile-error,.profile-loading{align-items:center;color:#64748b;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:5rem 1rem}.profile-error h2{color:#0f172a;margin:0}.profile-error button{background:#0ea5e9;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;padding:.625rem 1.25rem}.loader-spinner{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#0ea5e9;height:36px;width:36px}.inventory-container{display:flex;flex-direction:column;gap:1.5rem}.inventory-header{align-items:center;display:flex;justify-content:flex-end}.inventory-header h1{color:#1e293b;font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.header-actions{display:flex;gap:.75rem}.add-item-btn,.export-btn{align-items:center;border-radius:10px;display:flex;font-size:.875rem;font-weight:600;gap:8px;padding:.625rem 1.25rem;transition:all .2s}.export-btn{background:#fff;border:1px solid #e2e8f0;color:#475569}.add-item-btn{background:#0ea5e9;border:none;color:#fff}.inventory-stats{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{align-items:center;display:flex;justify-content:space-between;padding:1.25rem}.stat-label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.stat-value{color:#1e293b;font-size:1.5rem;font-weight:700;margin-top:.25rem}.stat-icon{align-items:center;border-radius:10px;display:flex;height:44px;justify-content:center;width:44px}.sky{background:#f0f9ff;color:#0ea5e9}.amber{background:#fffbeb;color:#f59e0b}.rose{background:#fff1f2;color:#f43f5e}.violet{background:#f5f3ff;color:#8b5cf6}.inventory-filters{align-items:center;display:flex;gap:1rem;justify-content:space-between}.search-box{padding:.6rem 1rem}.category-select-wrapper{min-width:180px;position:relative}.category-dropdown{appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m19 9-7 7-7-7'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem;border:1px solid #e2e8f0;border-radius:10px;color:#1e293b;cursor:pointer;font-size:.875rem;font-weight:600;outline:none;padding:.625rem 2rem .625rem 2.5rem;transition:all .2s;width:100%}.category-dropdown:hover{border-color:#cbd5e1}.category-dropdown:focus{border-color:#0ea5e9;box-shadow:0 0 0 3px #0ea5e91a}.filter-icon{z-index:1}.inventory-table-container{overflow-x:auto}.inventory-table{border-collapse:collapse;font-size:.875rem;width:100%}.inventory-table th{background:#f8fafc;color:#64748b;font-size:.75rem;font-weight:600;padding:1rem;text-align:left;text-transform:uppercase}.inventory-table td{border-top:1px solid #f1f5f9;color:#1e293b;padding:1rem}.item-id{color:#94a3b8;font-family:monospace}.item-name{font-weight:600}.stock-count{font-weight:500}.stock-min{color:#94a3b8;font-size:.75rem;margin-left:.5rem}.status-badge{border-radius:20px;font-size:.75rem;font-weight:600;padding:.25rem .625rem}.status-in-stock{background:#f0fdf4;color:#15803d}.status-low-stock{background:#fffbeb;color:#b45309}.status-out-of-stock{background:#fef2f2;color:#b91c1c}.inventory-table tr{transition:background .2s}.inventory-table tr:hover{background:#f8fafc}.modal-content{border-radius:16px;max-width:500px;padding:1.5rem}.modal-header{margin-bottom:1.5rem}.inventory-form{gap:.875rem;overflow-y:auto;padding-right:4px}.inventory-form::-webkit-scrollbar{width:5px}.inventory-form::-webkit-scrollbar-track{background:#0000}.inventory-form::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:10px}.form-group{gap:.35rem}.form-group label{font-size:.8125rem;font-weight:600}.form-group input,.form-group select{border:1px solid #e2e8f0;border-radius:10px;padding:.75rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-actions{margin-top:1rem}.cancel-btn{background:#f1f5f9;flex:1 1}.cancel-btn,.submit-btn{border-radius:10px;font-weight:600;padding:.75rem}.submit-btn{flex:2 1}.action-btn{transition:all .2s}.action-btn:hover{box-shadow:0 4px 6px -1px #0000001a}.edit-btn:hover{box-shadow:0 4px 6px -1px #0ea5e91a;transform:translateY(-2px)}.delete-btn:hover{box-shadow:0 4px 6px -1px #ef44441a;transform:translateY(-2px)}.inventory-form{display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:0}.form-row{margin-bottom:1.5rem}.form-group input,.form-group select{width:100%}.billing-container{display:flex;flex-direction:column;gap:1.5rem}.billing-header{align-items:center;display:flex;justify-content:flex-end}.billing-header h1{color:#1e293b;font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.billing-stats{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.billing-filters{gap:1rem;justify-content:space-between}.billing-filters,.search-box{align-items:center;display:flex}.search-box{background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#94a3b8;gap:10px;width:300px}.search-box input{background:#0000;border:none;color:#1e293b;flex:1 1;font-size:.875rem;outline:none}.search-box input::placeholder{color:#94a3b8}.search-box .search-icon{color:#94a3b8;flex-shrink:0;position:static}.status-select-wrapper{min-width:180px;position:relative}.status-dropdown{appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m19 9-7 7-7-7'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem;border:1px solid #e2e8f0;border-radius:10px;color:#1e293b;cursor:pointer;font-size:.875rem;font-weight:600;outline:none;padding:.625rem 2rem .625rem 2.5rem;transition:all .2s;width:100%}.status-dropdown:hover{border-color:#cbd5e1}.status-dropdown:focus{border-color:#0ea5e9;box-shadow:0 0 0 3px #0ea5e91a}.filter-icon{color:#94a3b8;left:.75rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:5}.billing-table-container{overflow-x:auto}.billing-table{border-collapse:collapse;font-size:.875rem;width:100%}.billing-table th{background:#f8fafc;color:#64748b;font-size:.75rem;font-weight:600;padding:1rem;text-align:left;text-transform:uppercase}.billing-table td{border-top:1px solid #f1f5f9;padding:1rem}.invoice-id{align-items:center;color:#64748b;display:flex;font-family:monospace;gap:8px}.patient-info .name{color:#1e293b;font-weight:600}.patient-info .pid{color:#94a3b8;font-size:.75rem}.amount-cell{color:#1e293b;font-weight:700;text-align:right}.badge{align-items:center;border-radius:30px;display:inline-flex;font-size:.75rem;font-weight:700;justify-content:center;letter-spacing:.025em;padding:.375rem .75rem;text-transform:uppercase}.badge-paid{background:#f0fdf4;color:#15803d}.badge-pending{background:#fffbeb;color:#b45309}.badge-overdue{background:#fef2f2;color:#b91c1c}.badge-draft{background:#f8fafc;color:#64748b}.billing-form{gap:1.25rem}.action-buttons{display:flex;gap:.5rem;justify-content:flex-end}.action-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);width:32px}.action-btn:hover{box-shadow:0 4px 12px -2px #0000001f;transform:translateY(-2px)}.edit-btn{background:#f0f9ff;border-color:#e0f2fe;color:#0ea5e9}.edit-btn:hover{background:#e0f2fe;border-color:#0ea5e9;color:#0ea5e9}.delete-btn{background:#fef2f2;border-color:#fee2e2;color:#ef4444}.delete-btn:hover{background:#fee2e2;border-color:#ef4444;color:#ef4444}.more-btn{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;justify-content:center;padding:4px}.more-btn.active{background:#f1f5f9;border-radius:8px;color:#0ea5e9}.searchable-select{position:relative;width:100%}.searchable-select .search-icon{color:#94a3b8;left:1rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:5}.searchable-select input{padding-left:2.8rem!important;width:100%}.patient-autocomplete-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;left:0;max-height:280px;overflow-y:auto;padding:.5rem!important;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.patient-option{border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:2px;margin-bottom:2px;padding:.75rem 1rem;transition:all .2s}.patient-option:last-child{margin-bottom:0}.patient-option:hover{background:#f0f9ff;transform:translateX(4px)}.patient-option .name{color:#1e293b;font-size:.875rem;font-weight:700}.patient-option .uid{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.025em;text-transform:uppercase}.no-results{color:#94a3b8;font-size:.875rem;font-weight:500;padding:1.5rem;text-align:center}.relative{position:relative}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172a66;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:1000}.modal-content{background:#fff;border-radius:20px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-height:90vh;max-width:850px;overflow:hidden;padding:0!important;width:100%}.modal-header{align-items:center;background:#f8fafc;border-bottom:1px solid #f1f5f9;display:flex;flex-shrink:0;justify-content:space-between;padding:1.5rem 2rem}.modal-header h2{color:#1e293b;font-size:1.125rem;font-weight:700}.modal-header button{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s}.modal-header button:hover{background:#f1f5f9;color:#ef4444}.billing-form{flex-direction:column;height:100%;overflow:hidden;padding:0}.billing-form,.form-body{display:flex;flex:1 1;min-height:0}.form-body{display:block;flex-direction:column;gap:1.5rem;overflow-y:auto;padding:2rem}.form-row{display:flex;gap:1.5rem}.form-row>.form-group{flex:1 1}.form-group{gap:.625rem}.form-group label{font-weight:700;letter-spacing:.025em}.form-group input,.form-group select{background:#f8fafc;border:1.5px solid #f1f5f9;border-radius:12px;color:#1e293b;font-size:.875rem;outline:none;padding:.875rem 1rem;transition:all .2s}.form-group input:focus,.form-group select:focus{background:#fff;border-color:#0ea5e9;box-shadow:0 0 0 4px #0ea5e91a}.form-actions{align-items:center;background:#f8fafc;border-top:1px solid #f1f5f9;flex-shrink:0;gap:1rem;justify-content:flex-end;padding:1.5rem 2rem}.cancel-btn{background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:700;padding:.75rem 1.5rem;transition:all .2s}.cancel-btn:hover{background:#f8fafc;color:#1e293b}.submit-btn{background:#0ea5e9;border:none;border-radius:12px;box-shadow:0 4px 6px -1px #0ea5e966;color:#fff;cursor:pointer;font-size:.875rem;font-weight:700;padding:.75rem 2rem;transition:all .2s}.submit-btn:hover{background:#0284c7;box-shadow:0 10px 15px -3px #0ea5e94d;transform:translateY(-1px)}.submit-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.empty-state-container{align-items:center;color:#94a3b8;display:flex;flex-direction:column;gap:1.25rem;justify-content:center;padding:5rem 2rem}.empty-icon{color:#64748b;filter:drop-shadow(0 4px 6px rgba(0,0,0,.05));opacity:.15}.empty-state-container p{color:#64748b;font-size:1rem;font-weight:600;margin:0}.read-only-input{background-color:#f8fafc!important;border-color:#e2e8f0!important;color:#64748b!important;cursor:not-allowed;font-family:JetBrains Mono,Fira Code,monospace;font-weight:600;letter-spacing:.05em}.read-only-input:focus{border-color:#e2e8f0!important;box-shadow:none!important}.view-btn{background:#eef2ff;border-color:#e0e7ff;color:#6366f1}.view-btn:hover{background:#e0e7ff;border-color:#6366f1;color:#6366f1}.att-container{animation:att-fade .3s ease;color:#1e293b;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:1.5rem}@keyframes att-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.att-header{flex-wrap:wrap;justify-content:space-between}.att-header,.att-header-left{align-items:center;display:flex;gap:1rem}.att-date-block{align-items:center;background:linear-gradient(135deg,#0ea5e914,#4f46e50f);border:1px solid #0ea5e92e;border-radius:14px;display:flex;gap:12px;padding:12px 18px}.att-cal-ico{color:#0ea5e9;flex-shrink:0}.att-date-label{color:#0f172a;font-size:.95rem;font-weight:700;letter-spacing:-.01em}.att-date-sub{color:#64748b;font-size:.75rem;font-weight:500;margin-top:2px}.att-header-right{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.att-date-picker{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#64748b;display:inline-flex;gap:8px;padding:8px 12px;transition:border-color .18s ease}.att-date-picker:hover{border-color:#cbd5e1}.att-date-picker input{background:#0000;border:none;color:#0f172a;font-size:.875rem;outline:none}.att-btn,.att-date-picker input{font-family:inherit;font-weight:600}.att-btn{align-items:center;border:1px solid #0000;border-radius:10px;cursor:pointer;display:inline-flex;font-size:.8125rem;gap:8px;padding:.625rem 1rem;transition:transform .12s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease}.att-btn:disabled{cursor:not-allowed;opacity:.55}.att-btn-ghost{background:#fff;border-color:#e2e8f0;color:#475569}.att-btn-ghost:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.att-btn-primary{background:linear-gradient(135deg,#0ea5e9,#4f46e5);box-shadow:0 6px 14px -6px #4f46e58c;color:#fff}.att-btn-primary:hover:not(:disabled){box-shadow:0 10px 18px -8px #4f46e5a6;transform:translateY(-1px)}.att-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.att-stat-card{align-items:center;background:#fff;border:1px solid #f1f5f9;border-radius:20px;box-shadow:0 1px 3px #00000005;display:flex;flex-direction:row;gap:1rem;justify-content:space-between;padding:1.25rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.att-stat-card:hover{border-color:#e2e8f0;box-shadow:0 12px 24px -10px #0f172a1f;transform:translateY(-4px)}.att-stat-text{display:flex;flex-direction:column;gap:4px}.att-stat-ico{align-items:center;border-radius:12px;display:inline-flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.att-stat-value{color:#0f172a;font-size:1.75rem;font-weight:900;letter-spacing:-.03em;line-height:1}.att-stat-label{color:#94a3b8;font-size:.7rem;font-weight:800;letter-spacing:.05em;margin:0;text-align:left;text-transform:uppercase}.tone-slate .att-stat-ico{background:#f1f5f9;color:#475569}.tone-present .att-stat-ico{background:#dcfce7;color:#16a34a}.tone-absent .att-stat-ico{background:#fee2e2;color:#dc2626}.tone-late .att-stat-ico{background:#fef3c7;color:#d97706}.tone-halfday .att-stat-ico{background:#ede9fe;color:#7c3aed}.tone-leave .att-stat-ico{background:#e0f2fe;color:#0284c7}.att-controls-wrap{align-items:center;display:flex;flex-direction:row;gap:1rem;justify-content:space-between}.att-search-standalone{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#94a3b8;display:flex;gap:10px;margin-bottom:20px;padding:.6rem 1rem;width:300px}.att-search-standalone input{background:#0000;border:none;color:#0f172a;flex:1 1;font-family:inherit;font-size:.875rem;outline:none}.att-search,.att-search-standalone input::placeholder{color:#94a3b8}.att-search{align-items:center;display:flex;flex:1 1;gap:10px;min-width:240px}.att-search input{background:#0000;border:none;color:#0f172a;flex:1 1;font-family:inherit;font-size:.875rem;outline:none}.att-search input::placeholder{color:#94a3b8}.att-filter-row{align-items:center;display:flex;flex-shrink:0;gap:1rem}.att-filter-group{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.att-filter-ico{color:#94a3b8}.att-filter-label{font-size:.75rem;letter-spacing:.05em;margin-right:2px;text-transform:uppercase}.att-filter-label,.att-pill{color:#64748b;font-weight:600}.att-pill{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.8125rem;padding:.4rem .85rem;transition:all .18s ease}.att-pill:hover{background:#f1f5f9;color:#0f172a}.att-pill.active{background:#0ea5e9;border-color:#0ea5e9;box-shadow:0 4px 10px -4px #0ea5e980;color:#fff}.att-select{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#0f172a;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:600;outline:none;padding:.45rem .75rem}.att-select:focus{background:#fff;border-color:#0ea5e9;box-shadow:0 0 0 3px #0ea5e91f}.att-table-wrap{background:#fff;border:1px solid #f1f5f9;border-radius:18px;box-shadow:0 1px 2px #0f172a08;overflow:visible}.att-table{border-collapse:initial;border-spacing:0;font-size:.875rem;width:100%}.att-table thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#475569;font-size:.7rem;font-weight:700;letter-spacing:.08em;padding:14px 18px;position:sticky;text-align:left;text-transform:uppercase;top:0}.att-table tbody td{border-bottom:1px solid #f1f5f9;color:#0f172a;padding:14px 18px;vertical-align:middle}.att-table tbody tr{position:relative;transition:background .15s ease}.att-table tbody tr:hover{background:#fafbff}.att-table tbody tr:last-child td{border-bottom:none}.att-table tbody tr.is-saving{opacity:.65;pointer-events:none}.att-actions-col{text-align:right;white-space:nowrap;width:1%}.att-staff-cell{align-items:center;display:flex;gap:12px}.att-avatar{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;flex-shrink:0;height:38px;object-fit:cover;width:38px}.att-staff-name{color:#0f172a;font-size:.9rem;font-weight:600}.att-staff-sub{color:#94a3b8;font-size:.75rem;margin-top:2px}.att-role-chip{background:#f1f5f9;border-radius:999px;color:#475569;display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.07em;padding:4px 10px;text-transform:uppercase}.att-time{color:#334155}.att-hours,.att-time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.att-hours{color:#94a3b8}.att-hours.has-value{color:#0ea5e9}.att-status-cell{align-items:center;display:flex;justify-content:flex-start;position:relative;width:140px;z-index:1}.att-status-cell:has(.att-status-menu){z-index:150}.att-status-pill{align-items:center;border:1.5px solid #0000;border-radius:999px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.8125rem;font-weight:700;gap:8px;justify-content:center;padding:8px 12px;transition:all .2s ease;white-space:nowrap;width:130px}.att-status-pill:hover{box-shadow:0 4px 12px -4px #0000001f;transform:translateY(-1px)}.att-status-pill .att-chev{opacity:.6;transition:transform .2s ease}.att-status-pill:hover .att-chev{opacity:1}.att-status-pill.present{background:#dcfce7;border-color:#bbf7d0;color:#15803d}.att-status-pill.absent{background:#fee2e2;border-color:#fecaca;color:#b91c1c}.att-status-pill.late{background:#fef3c7;border-color:#fde68a;color:#b45309}.att-status-pill.halfday{background:#ede9fe;border-color:#ddd6fe;color:#6d28d9}.att-status-pill.leave{background:#e0f2fe;border-color:#bae6fd;color:#0369a1}.att-status-pill.unmarked{background:#f1f5f9;border-color:#e2e8f0;color:#64748b}.att-status-menu{animation:att-pop .2s cubic-bezier(.16,1,.3,1);background:#fff;border:1px solid #e2e8f0;border-radius:14px;bottom:calc(100% + 8px);box-shadow:0 -10px 30px -5px #0000001a,0 -8px 12px -6px #0000000d;display:flex;flex-direction:column;gap:4px;min-width:180px;padding:8px;position:absolute;right:0;z-index:100}@keyframes att-pop{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.att-status-menu-item{align-items:center;background:#0000;border:none;border-radius:10px;color:#334155;cursor:pointer;display:flex;font-family:inherit;font-size:.875rem;font-weight:700;gap:10px;padding:10px 14px;text-align:left;transition:all .15s ease;width:100%}.att-status-menu-item:hover{transform:translateX(2px)}.att-status-menu-item:hover.present{background:#f0fdf4;color:#15803d}.att-status-menu-item:hover.absent{background:#fef2f2;color:#b91c1c}.att-status-menu-item:hover.late{background:#fffbeb;color:#b45309}.att-status-menu-item:hover.halfday{background:#f5f3ff;color:#6d28d9}.att-status-menu-item:hover.leave{background:#f0f9ff;color:#0369a1}.att-actions{gap:8px;justify-content:flex-end}.att-action-btn,.att-actions{align-items:center;display:inline-flex}.att-action-btn{border:1px solid #0000;border-radius:8px;cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:600;gap:6px;padding:7px 12px;transition:all .15s ease}.att-action-btn:disabled{cursor:not-allowed;opacity:.45}.att-checkin{background:#ecfeff;border-color:#a5f3fc;color:#0e7490}.att-checkin:hover:not(:disabled){background:#cffafe;color:#155e75}.att-checkout{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.att-checkout:hover:not(:disabled){background:#ffedd5;color:#9a3412}.att-readonly-tag{color:#94a3b8;font-size:.7rem;font-style:italic;letter-spacing:.04em}.att-empty{color:#94a3b8;font-size:.95rem;font-weight:500;padding:4rem 1.5rem;text-align:center}.att-footer{background:#fff;border-top:1px solid #f1f5f9;display:flex;justify-content:flex-end;padding:1rem 1.5rem}.att-pagination{gap:12px}.att-pagination,.pag-btn{align-items:center;display:flex}.pag-btn{background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#64748b;cursor:pointer;height:34px;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);width:34px}.pag-btn:hover:not(:disabled){background:#f0f9ff;border-color:#0ea5e9;color:#0ea5e9;transform:scale(1.05)}.pag-btn:disabled{cursor:not-allowed;opacity:.35}.pag-number{color:#0f172a;font-size:.875rem;font-weight:800;min-width:28px;text-align:center}@media (max-width:880px){.att-controls,.att-filter-row,.att-header{align-items:stretch;flex-direction:column}.att-header-right{justify-content:flex-start}.att-table-wrap{overflow-x:auto}.att-table{min-width:760px}}@media (max-width:560px){.att-stats{grid-template-columns:repeat(2,1fr)}}.auth-page{align-items:center;background:radial-gradient(1200px 600px at -10% -20%,#6366f12e,#0000 60%),radial-gradient(1000px 600px at 110% 120%,#0ea5e92e,#0000 60%),linear-gradient(135deg,#f8fafc,#eef2ff);color:#0f172a;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:center;min-height:100vh;padding:24px;width:100%}.auth-shell{background:#fff;border:1px solid #e2e8f0cc;border-radius:24px;box-shadow:0 30px 80px -20px #0f172a40,0 12px 24px -10px #0f172a1f;display:grid;grid-template-columns:1.05fr 1fr;max-width:1080px;min-height:640px;overflow:hidden;width:100%}.auth-brand{background:radial-gradient(800px 400px at 20% 0,#ffffff2e,#0000 60%),linear-gradient(160deg,#0ea5e9,#2563eb 50%,#4f46e5);color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:48px 44px;position:relative}.brand-overlay{background-image:radial-gradient(circle at 80% 20%,#ffffff26 0,#0000 40%),radial-gradient(circle at 10% 90%,#ffffff1a 0,#0000 40%);inset:0;pointer-events:none;position:absolute}.brand-content{position:relative;z-index:1}.brand-logo{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #ffffff40;border-radius:14px;display:inline-flex;height:52px;justify-content:center;margin-bottom:28px;width:52px}.brand-title{font-size:28px;font-weight:700;letter-spacing:-.02em;margin:0 0 12px}.brand-tagline{color:#ffffffd9;font-size:15px;line-height:1.6;margin:0 0 36px;max-width:380px}.brand-features{display:flex;flex-direction:column;gap:18px;list-style:none;margin:0;padding:0}.brand-features li{align-items:flex-start;display:flex;gap:14px}.brand-features strong{display:block;font-size:14.5px;font-weight:600;margin-bottom:2px}.brand-features p{color:#ffffffc7;font-size:13px;line-height:1.5;margin:0}.feat-ico{align-items:center;background:#ffffff26;border:1px solid #fff3;border-radius:10px;display:inline-flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.brand-footer{color:#ffffffa6;font-size:12px;letter-spacing:.02em;position:relative;z-index:1}.auth-form-panel{align-items:center;background:#fff;display:flex;justify-content:center;padding:48px 44px}.auth-form-wrap{max-width:400px;width:100%}.auth-form-header{margin-bottom:28px;text-align:center}.mobile-logo{align-items:center;background:linear-gradient(135deg,#0ea5e9,#4f46e5);border-radius:12px;color:#fff;display:none;height:48px;justify-content:center;margin:0 auto 16px;width:48px}.auth-form-header h2{color:#0f172a;font-size:26px;font-weight:700;letter-spacing:-.02em;margin:0 0 8px}.auth-form-header p{color:#64748b;font-size:14px;margin:0}.auth-alert{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#b91c1c;display:flex;font-size:13.5px;gap:10px;line-height:1.4;margin-bottom:18px;padding:12px 14px}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-grid-2{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-label{color:#334155;font-size:13px;font-weight:500;letter-spacing:.01em}.auth-input-wrap{align-items:center;display:flex;position:relative}.auth-input-icon{color:#94a3b8;left:14px;pointer-events:none;position:absolute}.auth-input-wrap input{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;color:#0f172a;font-family:inherit;font-size:14.5px;height:46px;outline:none;padding:0 42px;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;width:100%}.auth-input-wrap input::placeholder{color:#94a3b8}.auth-input-wrap input:hover{background:#f1f5f9}.auth-input-wrap input:focus{background:#fff;border-color:#4f46e5;box-shadow:0 0 0 4px #4f46e51f}.auth-input-wrap input:disabled{cursor:not-allowed;opacity:.6}.auth-eye{align-items:center;background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:inline-flex;height:30px;justify-content:center;position:absolute;right:10px;transition:background .15s ease,color .15s ease;width:30px}.auth-eye:hover{background:#f1f5f9;color:#0f172a}.auth-row{align-items:center;display:flex;justify-content:space-between;margin-top:-4px}.auth-check{align-items:center;color:#475569;cursor:pointer;display:inline-flex;font-size:13px;gap:8px;-webkit-user-select:none;user-select:none}.auth-check input[type=checkbox]{accent-color:#4f46e5;cursor:pointer;height:16px;width:16px}.auth-link-btn{background:none;border:none;color:#4f46e5;cursor:pointer;font-size:13px;font-weight:500;padding:0}.auth-link-btn:hover{text-decoration:underline}.auth-submit{align-items:center;background:linear-gradient(135deg,#0ea5e9,#4f46e5);border:none;border-radius:10px;box-shadow:0 8px 20px -8px #4f46e599;color:#fff;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:10px;height:48px;justify-content:center;letter-spacing:.01em;margin-top:4px;transition:transform .12s ease,box-shadow .18s ease,opacity .15s ease}.auth-submit:hover:not(:disabled){box-shadow:0 12px 24px -10px #4f46e5b3;transform:translateY(-1px)}.auth-submit:active:not(:disabled){transform:translateY(0)}.auth-submit:disabled{cursor:progress;opacity:.75}.spin{animation:auth-spin .9s linear infinite}@keyframes auth-spin{to{transform:rotate(1turn)}}.auth-divider{align-items:center;color:#94a3b8;display:flex;font-size:12px;gap:12px;letter-spacing:.12em;margin:22px 0 16px;text-transform:uppercase}.auth-divider:after,.auth-divider:before{background:#e2e8f0;content:"";flex:1 1;height:1px}.auth-footer-text{color:#475569;font-size:14px;margin:0;text-align:center}.auth-link{color:#4f46e5;font-weight:600;text-decoration:none}.auth-link:hover{text-decoration:underline}@media (max-width:880px){.auth-page{padding:0}.auth-shell{border:none;border-radius:0;box-shadow:none;grid-template-columns:1fr;min-height:100vh}.auth-brand{display:none}.mobile-logo{display:inline-flex}.auth-form-panel{padding:32px 24px}}@media (max-width:420px){.auth-grid-2{grid-template-columns:1fr}}.user-mgmt-container{animation:fadeIn .4s ease-out;margin:0 auto;max-width:1200px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mgmt-content{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:2fr 1fr;margin-top:2rem}.creation-card{background:#fff;border:1px solid #f1f5f9;border-radius:20px;box-shadow:0 10px 25px -5px #0000000d;padding:2.5rem}.card-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:16px;margin-bottom:2.5rem;padding-bottom:1.5rem}.card-header h2{color:#0f172a;font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.card-header .text-primary{align-items:center;background:#007b3d;border-radius:50%;color:#fff!important;display:flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.mgmt-form .form-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column;gap:10px}.form-group label{color:#64748b;font-size:.75rem;font-weight:800;letter-spacing:.05em;padding-left:2px;text-transform:uppercase}.input-with-icon{position:relative;width:100%}.field-icon{color:#94a3b8;left:16px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:5}.input-with-icon input{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;color:#1e293b;font-size:.9375rem;font-weight:500;height:52px;padding:0 3.5rem!important;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.input-with-icon input::placeholder{color:#cbd5e1;opacity:1}.input-with-icon input:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1a;outline:none}.password-toggle{align-items:center;background:none;border:none;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;justify-content:center;padding:8px;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:all .2s;z-index:10}.password-toggle:hover{background:#f1f5f9;color:#2563eb}.form-actions{display:flex;justify-content:center;margin-top:2rem}.btn-primary{align-items:center;background:#0000;border:2px solid #0f172a;border-radius:12px;color:#0f172a;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:12px;height:52px;padding:0 2.5rem;transition:all .2s}.btn-primary:hover{background:#0f172a;box-shadow:0 8px 20px #0f172a33;color:#fff;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.alert{align-items:center;border-radius:12px;display:flex;font-size:.9375rem;font-weight:600;gap:14px;margin-bottom:2rem;padding:1.25rem}.alert.error{background-color:#fff1f2;border:1px solid #ffe4e6;color:#be123c}.alert.success{background-color:#f0fdf4;border:1px solid #dcfce7;color:#15803d}.mgmt-info-panel .info-card{background:#f8fafc;border:1px solid #f1f5f9;border-radius:20px;padding:2.5rem;position:sticky;top:2rem}.info-card h3{color:#0f172a;font-size:1.25rem;font-weight:800;letter-spacing:-.01em;margin-bottom:1.25rem}.info-card p{color:#64748b;font-size:.9375rem;line-height:1.6;margin-bottom:2rem}.privilege-list{display:flex;flex-direction:column;gap:16px;list-style:none;padding:0}.privilege-list li{align-items:center;color:#334155;display:flex;font-size:.875rem;font-weight:600;gap:12px;padding:8px 0}.privilege-list li:before{background:#10b981;border-radius:50%;content:"";flex-shrink:0;height:6px;width:6px}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:992px){.mgmt-content{grid-template-columns:1fr}}@media (max-width:640px){.mgmt-form .form-grid{grid-template-columns:1fr}}.hmod-overlay{align-items:center;animation:hmod-fade .2s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a66;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}@keyframes hmod-fade{0%{opacity:0}to{opacity:1}}.hmod-content{animation:hmod-slide .3s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:24px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-height:85vh;max-width:650px;overflow:hidden;width:100%}@keyframes hmod-slide{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.hmod-header{align-items:center;background:#fafbff;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:1.5rem 1.75rem}.hmod-header-title{align-items:center;display:flex;gap:14px}.hmod-header-ico{align-items:center;background:#eff6ff;border-radius:12px;color:#2563eb;display:flex;height:42px;justify-content:center;width:42px}.hmod-header-title h3{color:#0f172a;font-size:1.1rem;font-weight:700;margin:0}.hmod-header-title p{align-items:center;color:#64748b;display:flex;font-size:.85rem;gap:8px;margin:2px 0 0}.hmod-type-tag{background:#eef2ff;border-radius:999px;color:#4f46e5;font-size:.7rem;font-weight:700;padding:1px 8px;text-transform:uppercase}.hmod-close{align-items:center;background:#f1f5f9;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.hmod-close:hover{background:#fee2e2;color:#ef4444;transform:rotate(90deg)}.hmod-body{background:#fff;flex:1 1;overflow-y:auto;padding:1.5rem 1.75rem}.hmod-timeline{display:flex;flex-direction:column;gap:1.5rem;padding-left:1rem;position:relative}.hmod-timeline:before{background:#f1f5f9;bottom:0;content:"";left:1rem;position:absolute;top:0;width:2px}.hmod-item{padding-left:1.5rem;position:relative}.hmod-dot{background:#cbd5e1;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #f1f5f9;height:12px;left:-5px;position:absolute;top:10px;width:12px;z-index:1}.hmod-dot.tone-create{background:#22c55e}.hmod-dot.tone-update{background:#f59e0b}.hmod-dot.tone-delete{background:#ef4444}.hmod-dot.tone-login{background:#3b82f6}.hmod-card{background:#f8fafc;border:1px solid #f1f5f9;border-radius:16px;padding:1rem 1.25rem}.hmod-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.hmod-actor-info{align-items:center;color:#475569;display:flex;gap:6px}.hmod-actor{color:#1e293b;font-size:.85rem;font-weight:700}.hmod-badge{border-radius:999px;font-size:.65rem;font-weight:800;padding:2px 8px;text-transform:uppercase}.hmod-badge.tone-create{background:#dcfce7;color:#15803d}.hmod-badge.tone-update{background:#fef3c7;color:#b45309}.hmod-badge.tone-delete{background:#fee2e2;color:#b91c1c}.hmod-badge.tone-login{background:#dbeafe;color:#1d4ed8}.hmod-time{color:#94a3b8;font-size:.75rem;font-weight:500}.hmod-desc{color:#334155;font-size:.875rem;line-height:1.5;margin:0}.hmod-expand-btn{align-items:center;background:none;border:none;color:#6366f1;cursor:pointer;display:flex;font-size:.75rem;font-weight:700;gap:4px;margin-top:8px;padding:0}.hmod-diff{background:#fff;border:1px solid #f1f5f9;border-radius:10px;gap:6px;margin-top:10px;padding:10px}.hmod-diff,.hmod-diff-row{display:flex;flex-direction:column}.hmod-diff-row{gap:4px}.hmod-field{color:#64748b;font-size:.7rem;font-weight:700;text-transform:uppercase}.hmod-diff-vals{align-items:center;display:flex;font-size:.8rem;gap:8px}.hmod-val-from{background:#fef2f2;color:#991b1b;opacity:.8;text-decoration:line-through}.hmod-val-from,.hmod-val-to{border-radius:4px;padding:2px 6px}.hmod-val-to{background:#f0fdf4;color:#166534;font-weight:600}.hmod-arrow{color:#94a3b8}.hmod-empty,.hmod-loading{align-items:center;color:#94a3b8;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:4rem 2rem}.hmod-spinner{animation:hmod-spin .8s linear infinite;border:3px solid #f1f5f9;border-radius:50%;border-top-color:#3b82f6;height:24px;width:24px}@keyframes hmod-spin{to{transform:rotate(1turn)}}.hmod-empty-val{font-style:italic;opacity:.6}.hist-container{animation:hist-fade .3s ease;color:#1e293b;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:1.5rem}@keyframes hist-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.hist-header{background:linear-gradient(135deg,#0ea5e90f,#4f46e50d);border:1px solid #0ea5e926;border-radius:18px;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1.25rem 1.5rem}.hist-header,.hist-hero{align-items:center;display:flex}.hist-hero{gap:14px}.hist-hero-ico{align-items:center;background:linear-gradient(135deg,#0ea5e9,#4f46e5);border-radius:14px;box-shadow:0 8px 18px -8px #0ea5e98c;color:#fff;display:inline-flex;height:46px;justify-content:center;width:46px}.hist-hero-title{color:#0f172a;font-size:1.15rem;font-weight:800;letter-spacing:-.02em;margin:0}.hist-hero-sub{color:#64748b;font-size:.825rem;font-weight:500;margin:4px 0 0}.hist-live-dot{align-items:center;background:#dcfce7;border-radius:999px;color:#16a34a;display:inline-flex;font-size:.7rem;font-weight:700;letter-spacing:.08em;margin-left:8px;padding:2px 8px;position:relative;text-transform:uppercase}.hist-live-dot:before{animation:hist-pulse 1.5s ease infinite;background:#16a34a;border-radius:50%;content:"";height:6px;margin-right:6px;width:6px}@keyframes hist-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.hist-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.hist-toggle{align-items:center;cursor:pointer;display:inline-flex;gap:8px;-webkit-user-select:none;user-select:none}.hist-toggle input{display:none}.hist-toggle-slider{background:#cbd5e1;border-radius:999px;height:18px;position:relative;transition:background .18s ease;width:34px}.hist-toggle-slider:after{background:#fff;border-radius:50%;box-shadow:0 1px 2px #00000026;content:"";height:14px;left:2px;position:absolute;top:2px;transition:transform .18s ease;width:14px}.hist-toggle input:checked+.hist-toggle-slider{background:#0ea5e9}.hist-toggle input:checked+.hist-toggle-slider:after{transform:translateX(16px)}.hist-toggle-text{color:#475569}.hist-btn,.hist-toggle-text{font-size:.8125rem;font-weight:600}.hist-btn{align-items:center;border:1px solid #0000;border-radius:10px;cursor:pointer;display:inline-flex;font-family:inherit;gap:8px;padding:.55rem .95rem;transition:transform .12s ease,background .18s ease,border-color .18s ease}.hist-btn:disabled{cursor:not-allowed;opacity:.55}.hist-btn-ghost{background:#fff;border-color:#e2e8f0;color:#475569}.hist-btn-ghost:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.spin{animation:hist-spin 1s linear infinite}@keyframes hist-spin{to{transform:rotate(1turn)}}.hist-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.hist-stat-card{align-items:center;background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 1px 2px #0f172a08;display:flex;gap:12px;padding:1rem 1.1rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.hist-stat-card:hover{border-color:#e2e8f0;box-shadow:0 12px 20px -16px #0f172a2e;transform:translateY(-2px)}.hist-stat-ico{align-items:center;border-radius:11px;display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.hist-stat-value{color:#0f172a;font-size:1.4rem;font-weight:800;letter-spacing:-.02em;line-height:1.1}.hist-stat-label{color:#64748b;font-size:.7rem;font-weight:700;letter-spacing:.07em;margin-top:3px;text-transform:uppercase}.hist-stat-card.tone-total .hist-stat-ico{background:#ede9fe;color:#7c3aed}.hist-stat-card.tone-today .hist-stat-ico{background:#e0f2fe;color:#0284c7}.hist-stat-card.tone-week .hist-stat-ico{background:#ecfeff;color:#0e7490}.hist-stat-card.tone-create .hist-stat-ico{background:#dcfce7;color:#16a34a}.hist-stat-card.tone-update .hist-stat-ico{background:#fef3c7;color:#d97706}.hist-stat-card.tone-delete .hist-stat-ico{background:#fee2e2;color:#dc2626}.hist-controls{background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 1px 2px #0f172a08;display:flex;flex-direction:column;gap:.9rem;padding:1rem 1.25rem}.hist-search{align-items:center;color:#94a3b8;display:flex;gap:10px}.hist-search input{background:#0000;border:none;color:#0f172a;flex:1 1;font-family:inherit;font-size:.875rem;outline:none}.hist-search input::placeholder{color:#94a3b8}.hist-filter-row{border-top:1px dashed #e2e8f0;gap:1.25rem;padding-top:.75rem}.hist-filter-group,.hist-filter-row{align-items:center;display:flex;flex-wrap:wrap}.hist-filter-group{gap:6px}.hist-filter-ico{color:#94a3b8}.hist-filter-label{color:#64748b;font-size:.7rem;font-weight:700;letter-spacing:.07em;margin-right:2px;text-transform:uppercase}.hist-pill{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:600;padding:.4rem .8rem;transition:all .18s ease}.hist-pill:hover{background:#f1f5f9;color:#0f172a}.hist-pill.active{background:linear-gradient(135deg,#0ea5e9,#4f46e5);border-color:#0000;box-shadow:0 4px 10px -4px #4f46e580;color:#fff}.hist-date,.hist-select{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#0f172a;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:600;outline:none;padding:.4rem .7rem}.hist-date:focus,.hist-select:focus{background:#fff;border-color:#0ea5e9;box-shadow:0 0 0 3px #0ea5e91f}.hist-date-group{margin-left:auto}.hist-link-btn{background:none;border:none;color:#4f46e5;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:600}.hist-link-btn:hover{text-decoration:underline}.hist-timeline{display:flex;flex-direction:column;gap:1.25rem}.hist-day{background:#fff;border:1px solid #f1f5f9;border-radius:18px;box-shadow:0 1px 2px #0f172a08;overflow:hidden}.hist-day-header{align-items:center;background:#f8fafc;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:14px 20px}.hist-day-label{color:#0f172a;font-size:.825rem;font-weight:700;letter-spacing:-.01em}.hist-day-count{background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;font-size:.7rem;font-weight:700;letter-spacing:.06em;padding:3px 10px;text-transform:uppercase}.hist-day-body{padding:1rem 1.25rem 1.25rem;position:relative}.hist-day-body:before{background:linear-gradient(180deg,#e2e8f0 0,#f1f5f9);bottom:1.4rem;content:"";left:30px;position:absolute;top:1.4rem;width:2px}.hist-item{display:flex;gap:16px;padding:10px 0;position:relative}.hist-dot{align-items:center;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #e2e8f0;display:inline-flex;flex-shrink:0;height:30px;justify-content:center;margin-left:16px;position:relative;width:30px;z-index:1}.hist-dot.tone-create{background:#dcfce7;color:#16a34a}.hist-dot.tone-update{background:#fef3c7;color:#b45309}.hist-dot.tone-delete{background:#fee2e2;color:#dc2626}.hist-dot.tone-login{background:#e0f2fe;color:#0369a1}.hist-dot.tone-logout{background:#f1f5f9;color:#475569}.hist-card{background:#fafbff;border:1px solid #f1f5f9;border-radius:14px;flex:1 1;min-width:0;padding:14px 16px;transition:border-color .18s ease,background .18s ease,transform .18s ease}.hist-card:hover{background:#fff;border-color:#e2e8f0;transform:translateX(2px)}.hist-card-top{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.hist-actor{align-items:center;display:flex;gap:10px;min-width:0}.hist-avatar{align-items:center;background:linear-gradient(135deg,#0ea5e9,#4f46e5);border-radius:10px;color:#fff;display:inline-flex;flex-shrink:0;font-size:.75rem;font-weight:800;height:34px;justify-content:center;letter-spacing:.02em;width:34px}.hist-actor-meta{min-width:0}.hist-actor-name{align-items:center;color:#0f172a;display:flex;flex-wrap:wrap;font-size:.875rem;font-weight:700;gap:8px}.hist-actor-sub{color:#94a3b8;font-size:.72rem;font-weight:500;margin-top:2px}.hist-ip{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hist-chip{align-items:center;border-radius:999px;display:inline-flex;font-size:.65rem;font-weight:800;letter-spacing:.06em;padding:3px 8px;text-transform:uppercase}.hist-chip.tone-create{background:#dcfce7;color:#15803d}.hist-chip.tone-update{background:#fef3c7;color:#b45309}.hist-chip.tone-delete{background:#fee2e2;color:#b91c1c}.hist-chip.tone-login{background:#e0f2fe;color:#0369a1}.hist-chip.tone-logout,.hist-entity-chip{background:#f1f5f9;color:#475569}.hist-entity-chip{align-items:center;border-radius:999px;display:inline-flex;font-size:.65rem;font-weight:700;gap:4px;letter-spacing:.05em;padding:3px 8px;text-transform:uppercase}.hist-desc{color:#334155;font-size:.875rem;line-height:1.5;margin:8px 0 0}.hist-expand{align-items:center;background:#eef2ff;border:1px solid #e0e7ff;border-radius:8px;color:#4f46e5;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.72rem;font-weight:700;gap:6px;padding:5px 10px;transition:background .15s ease;white-space:nowrap}.hist-expand:hover{background:#e0e7ff}.hist-diff{background:#fff;border:1px dashed #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:6px;margin-top:12px;padding:12px}.hist-diff-row{grid-gap:10px;align-items:center;display:grid;font-size:.8rem;gap:10px;grid-template-columns:160px 1fr auto 1fr}.hist-diff-field{color:#475569;font-size:.75rem;font-weight:700;text-transform:capitalize}.hist-diff-from{background:#fef2f2;color:#b91c1c}.hist-diff-from,.hist-diff-to{border-radius:6px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem;overflow:hidden;padding:3px 8px;text-overflow:ellipsis;white-space:nowrap}.hist-diff-to{background:#f0fdf4;color:#166534}.hist-diff-arrow{color:#94a3b8;font-size:.9rem}.hist-empty-val{color:#94a3b8;font-style:italic}.hist-empty{align-items:center;background:#fff;border:1px dashed #e2e8f0;border-radius:18px;color:#94a3b8;display:flex;flex-direction:column;gap:12px;padding:4rem 1.5rem;text-align:center}.hist-empty h3{color:#475569;font-size:1rem;font-weight:700;margin:0}.hist-empty p{font-size:.875rem;line-height:1.5;margin:0;max-width:420px}@media (max-width:920px){.hist-filter-row,.hist-header{align-items:stretch;flex-direction:column}.hist-date-group{flex-wrap:wrap;margin-left:0}.hist-diff-row{grid-template-columns:1fr}.hist-diff-arrow{display:none}}.hist-card.clickable{cursor:pointer;position:relative}.hist-card.clickable:after{color:#94a3b8;content:"View entire history";font-size:.65rem;font-weight:700;opacity:0;pointer-events:none;position:absolute;right:16px;top:10px;transform:translateX(4px);transition:opacity .2s ease,transform .2s ease}.hist-card.clickable:hover:after{opacity:1;transform:translateX(0)}.hist-username{color:#64748b;font-size:.75rem;font-weight:500;margin-left:-2px}.hist-focus-banner{align-items:center;animation:hist-slide-down .3s ease;background:#e0f2fe;border:1px solid #bae6fd;border-radius:10px;display:flex;justify-content:space-between;margin-top:12px;padding:10px 14px}@keyframes hist-slide-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.hist-focus-info{align-items:center;color:#0369a1;display:flex;font-size:.85rem;gap:10px}.hist-focus-info strong{color:#0c4a6e}.hist-focus-clear{background:#fff;border:1px solid #bae6fd;border-radius:6px;color:#0369a1;cursor:pointer;font-size:.75rem;font-weight:700;padding:4px 10px;transition:all .15s ease}.hist-focus-clear:hover{background:#f0f9ff;border-color:#7dd3fc;color:#0c4a6e}.notif-page{animation:notif-fade .3s ease;color:#1e293b;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:1.5rem}@keyframes notif-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.notif-page-header{background:linear-gradient(135deg,#0ea5e90f,#4f46e50d);border:1px solid #0ea5e926;border-radius:18px;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1.25rem 1.5rem}.notif-hero,.notif-page-header{align-items:center;display:flex}.notif-hero{gap:14px}.notif-hero-ico{align-items:center;background:linear-gradient(135deg,#0ea5e9,#4f46e5);border-radius:14px;box-shadow:0 8px 18px -8px #0ea5e98c;color:#fff;display:inline-flex;height:46px;justify-content:center;width:46px}.notif-hero-title{color:#0f172a;font-size:1.15rem;font-weight:800;letter-spacing:-.02em;margin:0}.notif-hero-sub{color:#64748b;font-size:.825rem;font-weight:500;margin:4px 0 0}.notif-page-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.notif-btn{align-items:center;border:1px solid #0000;border-radius:10px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.8125rem;font-weight:600;gap:8px;padding:.55rem .95rem;transition:transform .12s ease,background .18s ease,border-color .18s ease}.notif-btn-ghost{background:#fff;border-color:#e2e8f0;color:#475569}.notif-btn-ghost:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.notif-btn-primary{background:linear-gradient(135deg,#0ea5e9,#4f46e5);box-shadow:0 6px 14px -6px #4f46e58c;color:#fff}.notif-btn-primary:hover{transform:translateY(-1px)}.notif-btn-danger{background:#fff;border-color:#fecaca;color:#dc2626}.notif-btn-danger:hover{background:#fef2f2;border-color:#fca5a5}.notif-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.notif-stat-card{align-items:center;background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 1px 2px #0f172a08;display:flex;gap:12px;padding:1rem 1.1rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.notif-stat-card:hover{border-color:#e2e8f0;box-shadow:0 12px 20px -16px #0f172a2e;transform:translateY(-2px)}.notif-stat-ico{align-items:center;border-radius:11px;display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.notif-stat-value{color:#0f172a;font-size:1.4rem;font-weight:800;letter-spacing:-.02em;line-height:1.1}.notif-stat-label{color:#64748b;font-size:.7rem;font-weight:700;letter-spacing:.07em;margin-top:3px;text-transform:uppercase}.notif-stat-card.tone-total .notif-stat-ico{background:#e0f2fe;color:#0284c7}.notif-stat-card.tone-unread .notif-stat-ico{background:#ede9fe;color:#7c3aed}.notif-stat-card.tone-critical .notif-stat-ico{background:#fee2e2;color:#dc2626}.notif-stat-card.tone-warning .notif-stat-ico{background:#fef3c7;color:#d97706}.notif-filter-bar{background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 1px 2px #0f172a08;gap:1.25rem;padding:.9rem 1.25rem}.notif-filter-bar,.notif-filter-group{align-items:center;display:flex;flex-wrap:wrap}.notif-filter-group{gap:6px}.notif-filter-ico{color:#94a3b8}.notif-filter-label{color:#64748b;font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.notif-pill{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:600;padding:.4rem .85rem;transition:all .18s ease}.notif-pill:hover{background:#f1f5f9;color:#0f172a}.notif-pill.active{background:linear-gradient(135deg,#0ea5e9,#4f46e5);border-color:#0000;box-shadow:0 4px 10px -4px #4f46e580;color:#fff}.notif-select{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#0f172a;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:600;outline:none;padding:.4rem .7rem}.notif-select:focus{background:#fff;border-color:#0ea5e9;box-shadow:0 0 0 3px #0ea5e91f}.notif-list-wrap{background:#fff;border:1px solid #f1f5f9;border-radius:18px;box-shadow:0 1px 2px #0f172a08;overflow:hidden}.notif-list{display:flex;flex-direction:column}.notif-row{align-items:flex-start;border-bottom:1px solid #f8fafc;cursor:pointer;display:flex;gap:14px;padding:16px 20px;position:relative;transition:background .15s ease}.notif-row:last-child{border-bottom:none}.notif-row:hover{background:#f8fafc}.notif-row.unread{background:#f0f9ff}.notif-row.unread:hover{background:#e0f2fe}.notif-row-ico{align-items:center;border-radius:12px;display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.notif-row-ico.tone-info{background:#e0f2fe;color:#0284c7}.notif-row-ico.tone-success{background:#dcfce7;color:#16a34a}.notif-row-ico.tone-warning{background:#fef3c7;color:#d97706}.notif-row-ico.tone-critical{background:#fee2e2;color:#dc2626}.notif-row-body{flex:1 1;min-width:0}.notif-row-top{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.notif-row-title{color:#0f172a;font-size:.9rem;font-weight:700}.notif-row-sev{border-radius:999px;font-size:.62rem;font-weight:800;letter-spacing:.07em;padding:3px 8px;text-transform:uppercase}.notif-row-sev.tone-info{background:#e0f2fe;color:#0369a1}.notif-row-sev.tone-success{background:#dcfce7;color:#15803d}.notif-row-sev.tone-warning{background:#fef3c7;color:#b45309}.notif-row-sev.tone-critical{background:#fee2e2;color:#b91c1c}.notif-row-cat{align-items:center;background:#f1f5f9;border-radius:999px;color:#475569;display:inline-flex;font-size:.62rem;font-weight:700;gap:4px;letter-spacing:.06em;padding:3px 8px;text-transform:uppercase}.notif-row-msg{color:#334155;font-size:.85rem;line-height:1.5;margin:6px 0 0}.notif-row-time{color:#94a3b8;display:block;font-size:.7rem;font-weight:500;margin-top:6px}.notif-row-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.notif-icon-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:inline-flex;font-family:inherit;height:28px;justify-content:center;transition:all .15s ease;width:28px}.notif-icon-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#0f172a}.notif-icon-btn.danger:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.notif-row-dot{background:#0ea5e9;border-radius:50%;box-shadow:0 0 0 3px #0ea5e92e;height:6px;left:8px;position:absolute;top:18px;width:6px}.notif-page-empty{align-items:center;color:#94a3b8;display:flex;flex-direction:column;gap:12px;padding:4rem 1.5rem;text-align:center}.notif-page-empty h3{color:#475569;font-size:1rem;font-weight:700;margin:0}.notif-page-empty p{font-size:.875rem;line-height:1.5;margin:0;max-width:380px}@media (max-width:720px){.notif-row-actions{flex-direction:column}.notif-filter-bar,.notif-page-header{align-items:stretch;flex-direction:column}}.stethoscope-loader-overlay{align-items:center;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);background-color:#fff0;bottom:0;display:flex;justify-content:center;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:background-color .3s ease,backdrop-filter .3s ease,-webkit-backdrop-filter .3s ease,opacity .3s ease;z-index:999999}.stethoscope-loader-overlay.visible{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:#ffffffd9;opacity:1;pointer-events:all}.stethoscope-loader-container{flex-direction:column;gap:1.5rem}.stethoscope-loader-container,.stethoscope-pulse-circle{align-items:center;display:flex;justify-content:center;position:relative}.stethoscope-pulse-circle{animation:heart-beat 1.4s cubic-bezier(.215,.61,.355,1) infinite;background:linear-gradient(135deg,#0ea5e9,#3b82f6);border-radius:50%;box-shadow:0 10px 25px #0ea5e966;color:#fff;height:90px;width:90px;z-index:10}.stethoscope-loader-icon{animation:icon-float 2.8s ease-in-out infinite}.pulse-wave{animation:pulse-ring 1.4s cubic-bezier(.215,.61,.355,1) infinite;border:2px solid #0ea5e9;border-radius:50%;height:90px;left:0;opacity:0;position:absolute;top:0;width:90px;z-index:1}.wave-delayed{animation-delay:.35s}.stethoscope-loader-text{animation:text-pulse 1.4s ease-in-out infinite;color:#1e293b;font-size:.95rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}@keyframes heart-beat{0%{transform:scale(.95)}15%{transform:scale(1.1)}30%{transform:scale(.98)}45%{transform:scale(1.15)}60%{transform:scale(.95)}to{transform:scale(.95)}}@keyframes pulse-ring{0%{opacity:.8;transform:scale(.95)}80%,to{opacity:0;transform:scale(2.2)}}@keyframes text-pulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.App{text-align:left}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin-bottom:.5rem}p{color:var(--text-secondary);margin-bottom:1rem}
/*# sourceMappingURL=main.530e82b1.css.map*/