*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{height:100%;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#F5F7FA;color:#172033}
:root{
  /* Trackmond unified clinical theme */
  --bg:#F5F7FA;--bg1:#FAFBFC;--bg2:#EEF2F6;
  --white:#FFFFFF;
  --navy:#0B1F33;--navy2:#12314D;
  --teal:#087F73;--teal2:#06685F;--teal-light:#E8F5F2;--teal-dim:rgba(8,127,115,.1);
  --red:#C62828;--red-light:#FFF1F1;--red-dim:rgba(198,40,40,.1);
  --amber:#B76A00;--amber-light:#FFF7E8;--amber-dim:rgba(183,106,0,.1);
  --blue:#2563EB;--blue-light:#EFF6FF;--blue-dim:rgba(37,99,235,.1);
  --purple:#6D4AFF;--purple-light:#F4F1FF;--purple-dim:rgba(109,74,255,.1);
  --green:#16803C;--green-light:#EFFAF3;--green-dim:rgba(22,128,60,.1);
  --gold:#F59E0B;
  --t1:#172033;--t2:#526176;--t3:#7A8799;
  --border:#DCE3EB;--border2:#C7D1DD;
  --shadow-sm:0 1px 2px rgba(11,31,51,.05);
  --shadow:0 6px 18px rgba(11,31,51,.07);
  --shadow-lg:0 16px 42px rgba(11,31,51,.12);
  --shadow-xl:0 24px 64px rgba(0,0,0,.15);
  --r1:6px;--r2:10px;--r3:14px;--r4:18px;--r5:24px;
  --sw:256px;
}

/* ══ PRELOADER ══ */
#preloader{
  position:fixed;inset:0;z-index:9999;
  background:var(--navy);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;
  transition:opacity .5s ease,transform .5s ease;
}
#preloader.hide{
  opacity:0;
  pointer-events:none;
  transform:scale(1.03);
  display:none !important;
}
.pl-wrap{display:flex;flex-direction:column;align-items:center;gap:20px}
.pl-logo{display:flex;align-items:center;gap:12px}
.pl-logo img{width:48px;height:48px;border-radius:12px;filter:drop-shadow(0 0 16px rgba(11,123,114,.6))}
.pl-logo-name{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:26px;font-weight:800;color:#fff;letter-spacing:-.02em}
.pl-ecg{width:220px;height:40px}
.pl-ecg path{stroke:#0B7B72;stroke-width:2;fill:none;stroke-linecap:round;
  stroke-dasharray:600;stroke-dashoffset:600;
  animation:plEcg 1.8s ease-in-out infinite;
  filter:drop-shadow(0 0 6px rgba(11,123,114,.8))}
@keyframes plEcg{0%{stroke-dashoffset:600;opacity:0}10%{opacity:1}75%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
.pl-progress{width:200px;height:3px;background:rgba(255,255,255,.1);border-radius:2px;overflow:hidden}
.pl-bar{height:100%;width:0;background:linear-gradient(90deg,var(--teal2),#0FC5B8);border-radius:2px;transition:width .15s linear}
.pl-msg{font-size:13px;color:rgba(255,255,255,.4);letter-spacing:.02em}

/* ══ LAYOUT ══ */
.dash{display:flex;height:100vh;overflow:hidden}

/* ══ SIDEBAR ══ */
.sidebar{
  width:var(--sw);flex-shrink:0;
  background:var(--navy);
  display:flex;flex-direction:column;
  height:100vh;overflow:hidden;
  position:relative;z-index:10;
}
.sb-head{
  padding:24px 20px 20px;
  border-bottom:1px solid rgba(255,255,255,.06);
  flex-shrink:0;
}
.sb-logo{display:flex;align-items:center;gap:10px}
.sb-logo img{width:34px;height:34px;border-radius:9px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 8px rgba(11,123,114,.4))}
.sb-logo-text{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;font-weight:800;color:#fff;letter-spacing:-.01em}
.sb-hospital{
  margin-top:12px;padding:10px 12px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--r2);
}
.sb-hospital-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.35);margin-bottom:3px}
.sb-hospital-name{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-hospital-badge{display:inline-block;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:20px;margin-top:4px}
.badge-superadmin{background:rgba(245,158,11,.15);color:var(--gold)}
.badge-hospital{background:rgba(11,123,114,.2);color:#0FC5B8}
.sb-nav{flex:1;padding:12px 10px;overflow-y:auto}
.sb-nav::-webkit-scrollbar{display:none}
.nav-group-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.25);padding:10px 10px 5px}
.nav-item{
  display:flex;align-items:center;gap:11px;
  padding:10px 12px;border-radius:var(--r2);
  color:rgba(255,255,255,.5);font-size:13px;font-weight:500;
  cursor:pointer;width:100%;border:none;background:transparent;text-align:left;
  transition:all .15s;margin-bottom:1px;position:relative;
}
.nav-item i{width:17px;font-size:14px;flex-shrink:0;text-align:center}
.nav-item .n-label{flex:1}
.nav-item .n-badge{background:var(--red);color:#fff;font-size:9px;font-weight:700;padding:1px 6px;border-radius:10px}
.nav-item:hover{background:rgba(255,255,255,.06);color:rgba(255,255,255,.8)}
.nav-item.on{background:rgba(11,123,114,.2);color:#fff}
.nav-item.on i{color:#0FC5B8}
.nav-item.on::before{content:'';position:absolute;left:0;top:15%;height:70%;width:3px;background:#0FC5B8;border-radius:0 2px 2px 0}
/* Admin restricted — hides revenue and sensitive settings */
.is-admin-restricted .admin-only{display:none!important}
.is-admin-restricted #satab-pricing{display:none!important}
.is-admin-restricted #satab-payment{display:none!important}
.is-admin-restricted #satab-data{display:none!important}
.is-admin-restricted #satab-maintenance{display:none!important}
.is-admin-restricted [data-sec="sa-revenue"]{display:none!important}
.is-admin-restricted #add-staff-btn{display:none!important}
.sa-only{display:none!important}
.ha-only{display:block}
.is-superadmin .sa-only{display:block!important}
.is-superadmin .ha-only{display:none!important}
.is-superadmin #founder-chip{display:block!important}
.clinical-staff-only{display:none!important}
.show-clinical-alerts .nav-item.clinical-staff-only{display:flex!important}
.show-clinical-alerts .section.clinical-staff-only.on{display:block!important}
.clinical-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}
.ca-toolbar{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:12px}
.ca-toolbar .filter-bar{display:grid;grid-template-columns:minmax(220px,2fr) minmax(140px,1fr) minmax(140px,1fr) auto auto;gap:10px;flex:1;align-items:end}
.ca-toggle{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border);background:var(--bg);border-radius:8px;color:var(--t2);font-size:13px;font-weight:600;cursor:pointer}
.ca-toggle.on{background:rgba(11,123,114,.08);border-color:rgba(11,123,114,.35);color:var(--teal)}
.ca-primary-card{min-height:116px;display:flex;flex-direction:column;justify-content:space-between}
.ca-primary-card .stat-lbl{font-size:10px;letter-spacing:.08em}
.ca-workflow-strip{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.ca-workflow-item{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--border);background:var(--white);border-radius:8px;color:var(--t2);font-size:12px;font-weight:600;cursor:pointer}
.ca-workflow-item b{color:var(--t1);font-size:13px}
.ca-workflow-item:hover{border-color:rgba(11,123,114,.28);color:var(--teal);background:var(--teal-light)}
.ca-filter-main{display:grid;grid-template-columns:minmax(220px,2fr) minmax(140px,1fr) minmax(140px,1fr) auto auto;gap:10px;align-items:center}
.ca-advanced-filters{display:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.ca-advanced-filters.on{display:grid}
.ca-advanced-filters .ca-toggle{justify-content:center}
.ca-list-header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border)}
.ca-list-title{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:18px;font-weight:800;color:var(--t1)}
.ca-list-sub{font-size:12px;color:var(--t3);margin-top:3px}
.ca-list-section{padding:14px 18px}
.ca-section-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--t3);margin:4px 0 10px}
.ca-alert-card{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;border:1px solid var(--border);border-radius:8px;padding:14px 16px;margin-bottom:10px;background:var(--white)}
.ca-alert-card:hover{border-color:rgba(11,123,114,.24);box-shadow:0 3px 12px rgba(15,23,42,.04)}
.ca-alert-card.on{border-color:rgba(11,123,114,.45);background:rgba(11,123,114,.035)}
.ca-alert-title{font-size:15px;font-weight:800;color:var(--t1);line-height:1.3;margin-top:7px}
.ca-alert-reason{font-size:13px;color:var(--t2);line-height:1.45;margin-top:4px}
.ca-alert-meta{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:8px;font-size:12px;color:var(--t3)}
.ca-alert-actions{display:flex;justify-content:flex-end;align-items:center}
.ca-empty-urgent{padding:28px 18px;text-align:center;color:var(--t2);border:1px dashed var(--border);border-radius:8px;background:var(--bg)}
.clinical-toolbar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}
.clinical-toolbar .card,.clinical-panel,.clinical-assign-box,.clinical-detail-meta div,.clinical-stat,.clinical-filters select,.clinical-filters input{border-radius:8px}
.clinical-stat{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;background:var(--bg);border:1px solid var(--border)}
.clinical-stat-label{font-size:11px;font-weight:700;color:var(--t3);text-transform:uppercase}
.clinical-stat-num{font-size:24px;font-weight:800;color:var(--t1);line-height:1}
.clinical-filters{display:grid;grid-template-columns:minmax(0,2fr) repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px;align-items:end}
.clinical-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
.clinical-panel{background:var(--bg);border:1px solid var(--border);padding:12px}
.clinical-panel-title{font-size:13px;font-weight:700;color:var(--t1);margin-bottom:10px}
.clinical-kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.clinical-kv-grid span,.clinical-detail-meta span,.clinical-comment-meta,.clinical-evidence-summary{color:var(--t3)}
.clinical-kv-grid span,.clinical-detail-meta span,.clinical-comment-meta{font-size:11px}
.clinical-kv-grid b,.clinical-detail-meta b{display:block;color:var(--t1);font-size:13px;line-height:1.35}
.clinical-detail-head{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}
.clinical-detail-overview{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.clinical-detail-eyebrow{font-size:11px;font-weight:700;color:var(--t3);text-transform:uppercase;margin-bottom:4px}
.clinical-detail-title{font-size:20px;font-weight:800;color:var(--t1);line-height:1.2}
.clinical-detail-summary{font-size:13px;color:var(--t2);line-height:1.45;margin-top:6px}
.clinical-detail-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.clinical-detail-meta div{background:var(--bg2);border:1px solid var(--border);padding:10px}
.clinical-actions-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;margin:12px 0}
.clinical-assign-box{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;padding:10px;background:var(--bg2);border:1px solid var(--border)}
.clinical-assign-box select{min-width:240px}
.clinical-evidence-row,.clinical-comment{padding:10px 0;border-bottom:1px solid var(--border)}
.clinical-evidence-row:last-child,.clinical-comment:last-child{border-bottom:0}
.clinical-evidence-summary,.clinical-comment-body{font-size:13px;line-height:1.45}
.ca-open{display:block;width:100%;padding:0;border:0;background:none;text-align:left;color:inherit;cursor:pointer;font:inherit}
.clinical-alerts-table tr.on td{background:rgba(11,123,114,.05)}
.pill.ca-s-info{background:rgba(14,165,233,.12);color:#0369a1}
.pill.ca-s-low{background:rgba(59,130,246,.12);color:#1d4ed8}
.pill.ca-s-med{background:rgba(245,158,11,.12);color:#b45309}
.pill.ca-s-high{background:rgba(249,115,22,.12);color:#c2410c}
.pill.ca-s-crit{background:rgba(220,38,38,.12);color:#b91c1c}
.pill.ca-st-new,.pill.ca-st-viewed,.pill.ca-st-ack,.pill.ca-st-assigned,.pill.ca-st-work,.pill.ca-st-resolved,.pill.ca-st-closed,.pill.ca-st-reopened,.pill.ca-st-muted{background:rgba(100,116,139,.12);color:#475569}
@media (max-width: 1180px){
  .clinical-toolbar,.clinical-stats-grid,.clinical-detail-meta,.clinical-panel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .clinical-filters,.ca-toolbar .filter-bar,.ca-filter-main,.ca-advanced-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 760px){
  .clinical-detail-overview,.clinical-actions-row{flex-direction:column}
  .clinical-detail-meta,.clinical-panel-grid,.clinical-toolbar,.clinical-stats-grid,.clinical-filters,.clinical-kv-grid,.ca-toolbar .filter-bar,.ca-filter-main,.ca-advanced-filters,.ca-alert-card{grid-template-columns:1fr}
  .clinical-assign-box select{min-width:0;width:100%}
  .ca-alert-actions{justify-content:flex-start}
  .report-metric-grid,.report-mini-grid{grid-template-columns:1fr}
  .report-section-head{align-items:flex-start;flex-direction:column}
  .report-bar-row{grid-template-columns:96px 1fr 40px}
}
.sb-footer{padding:14px 16px;border-top:1px solid rgba(255,255,255,.06);flex-shrink:0}
.doc-row{display:flex;align-items:center;gap:10px}
.doc-av-wrap{width:36px;height:36px;border-radius:9px;background:var(--teal-dim);border:1.5px solid rgba(11,123,114,.3);display:flex;align-items:center;justify-content:center;color:#0FC5B8;font-size:14px;flex-shrink:0;overflow:hidden}
.doc-name{font-size:12px;font-weight:600;color:#fff}
.doc-sub{font-size:10px;color:rgba(255,255,255,.35);margin-top:1px}

/* ══ MAIN ══ */
.main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}

/* ══ TOPBAR ══ */
.topbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:13px 24px;
  background:var(--white);
  border-bottom:1px solid var(--border);
  flex-shrink:0;
  box-shadow:var(--shadow-sm);
}
.tb-title{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:17px;font-weight:700;color:var(--t1);letter-spacing:-.01em}
.tb-right{display:flex;align-items:center;gap:10px}
.search-wrap{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r2);padding:8px 14px;width:230px;transition:.15s}
.search-wrap:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-dim)}
.search-wrap i{color:var(--t3);font-size:12px;flex-shrink:0}
.search-wrap input{background:transparent;border:none;outline:none;font-family:'Inter',sans-serif;font-size:13px;color:var(--t1);width:100%}
.search-wrap input::placeholder{color:var(--t3)}
.tb-icon-btn{width:36px;height:36px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r2);color:var(--t2);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s;position:relative}
.tb-icon-btn:hover{background:var(--bg2);color:var(--t1)}
.tb-bdg{position:absolute;top:-3px;right:-3px;width:15px;height:15px;background:var(--red);color:#fff;font-size:8px;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--white)}
.date-pill{font-size:12px;color:var(--t2);background:var(--bg);border:1px solid var(--border);padding:6px 12px;border-radius:var(--r2);display:flex;align-items:center;gap:6px;white-space:nowrap;cursor:pointer;transition:.15s;font-weight:500}
.date-pill:hover{border-color:var(--teal);color:var(--teal);background:var(--teal-dim)}
.date-pill.active{border-color:var(--teal);color:var(--teal);background:var(--teal-dim)}
.logout-btn{background:var(--red-light);border:1px solid rgba(220,38,38,.2);color:var(--red);font-family:'Inter',sans-serif;font-size:12px;font-weight:500;padding:7px 14px;border-radius:var(--r2);cursor:pointer;transition:.15s;display:flex;align-items:center;gap:6px}
.logout-btn:hover{background:var(--red);color:#fff}

/* ══ CONTENT ══ */
.content{flex:1;overflow-y:auto;padding:24px 28px;background:var(--bg)}
.content::-webkit-scrollbar{width:5px}
.content::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}

/* ══ SECTIONS ══ */
.section{display:none}
.section.on{display:block}
#sec-messages.on,#sec-hospitals.on{display:flex;flex-direction:column}

/* ══ AUTH SCREENS ══ */
#auth-screen{
  position:fixed;inset:0;z-index:100;
  background:var(--bg);
  display:none;
  align-items:center;justify-content:center;
  padding:20px;
  min-height:100vh;
  overflow-y: auto;
}
#auth-screen.show{display:flex}
.auth-wrap{width:100%;max-width:480px}
.auth-tabs{display:flex;background:var(--bg2);border-radius:var(--r3);padding:4px;border:1px solid var(--border);margin-bottom:24px}
.auth-tab{flex:1;text-align:center;padding:10px;border-radius:var(--r2);font-size:14px;font-weight:500;cursor:pointer;color:var(--t2);transition:all .2s}
.auth-tab.on{background:var(--white);color:var(--navy);font-weight:600;box-shadow:var(--shadow-sm)}
/* Login panel */
.auth-panel{display:none; overflow-y :auto}
.auth-panel.on{display:block}
.auth-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r5);padding:36px;box-shadow:var(--shadow-lg)}
.auth-logo{text-align:center;margin-bottom:28px}
.auth-logo img{width:56px;height:56px;border-radius:14px;margin-bottom:12px}
.auth-logo h1{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:20px;font-weight:800;color:var(--navy);margin-bottom:4px}
.auth-logo p{font-size:13px;color:var(--t3)}
.auth-field{margin-bottom:14px}
.auth-field label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--t2);margin-bottom:7px}
.auth-inp{width:100%;padding:12px 14px;background:var(--bg);border:1.5px solid var(--border);border-radius:var(--r2);color:var(--t1);font-family:'Inter',sans-serif;font-size:14px;outline:none;transition:.15s}
.auth-inp:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-dim);background:var(--white)}
.auth-inp::placeholder{color:var(--t3)}
.auth-inp-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.auth-err{color:var(--red);font-size:12px;margin-bottom:10px;min-height:16px;font-weight:500}
.auth-submit{width:100%;padding:13px;background:var(--navy);border:none;border-radius:var(--r2);color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:15px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:.2s;box-shadow:0 4px 16px rgba(10,37,64,.2)}
.auth-submit:hover{background:var(--navy2);transform:translateY(-1px)}
.auth-submit:active{transform:scale(.98)}
.auth-submit.teal{background:var(--teal);box-shadow:0 4px 16px rgba(11,123,114,.25)}
.auth-submit.teal:hover{background:var(--teal2)}
.auth-divider{text-align:center;font-size:12px;color:var(--t3);margin:16px 0;position:relative}
.auth-divider::before{content:'';position:absolute;left:0;top:50%;right:0;height:1px;background:var(--border)}
.auth-divider span{background:var(--white);padding:0 12px;position:relative}
.spin-sm{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;display:inline-block}
@keyframes spin{to{transform:rotate(360deg)}}

/* ══ STAT CARDS ══ */
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
.stat-card{
  background:var(--white);border:1px solid var(--border);border-radius:var(--r4);
  padding:20px;transition:.2s;cursor:pointer;position:relative;overflow:hidden;
  box-shadow:var(--shadow-sm);
}
.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.stat-card::after{content:'';position:absolute;top:0;right:0;width:4px;height:100%;border-radius:0 var(--r4) var(--r4) 0}
.sc-teal::after{background:var(--teal)}
.sc-red::after{background:var(--red)}
.sc-amber::after{background:var(--amber)}
.sc-blue::after{background:var(--blue)}
.sc-purple::after{background:var(--purple)}
.sc-green::after{background:var(--green)}
.sc-gold::after{background:var(--gold)}
.stat-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}
.stat-ico{width:40px;height:40px;border-radius:var(--r2);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.si-teal{background:var(--teal-dim);color:var(--teal)}
.si-red{background:var(--red-dim);color:var(--red)}
.si-amber{background:var(--amber-dim);color:var(--amber)}
.si-blue{background:var(--blue-dim);color:var(--blue)}
.si-purple{background:var(--purple-dim);color:var(--purple)}
.si-green{background:var(--green-dim);color:var(--green)}
.si-gold{background:rgba(245,158,11,.1);color:var(--gold)}
.stat-num{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:28px;font-weight:800;color:var(--t1);line-height:1;letter-spacing:-.02em;margin-bottom:4px}
.stat-lbl{font-size:11px;color:var(--t3);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.stat-sub{font-size:11px;color:var(--t3);margin-top:4px}

/* ══ CARDS ══ */
.card{background:var(--white);border:1px solid var(--border);border-radius:var(--r4);padding:20px;margin-bottom:20px;box-shadow:var(--shadow-sm)}
.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.card-title{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;font-weight:700;color:var(--t1);display:flex;align-items:center;gap:8px}
.card-title i{color:var(--teal);font-size:13px}
.card-action{font-size:12px;color:var(--teal);background:var(--teal-light);padding:5px 12px;border-radius:20px;cursor:pointer;font-weight:600;border:1px solid rgba(11,123,114,.15);transition:.15s}
.card-action:hover{background:var(--teal);color:#fff}

/* ══ TABLES ══ */
.tbl-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:13px}
th{text-align:left;padding:10px 14px;color:var(--t3);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid var(--border);white-space:nowrap}
td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--t1)}
tr:last-child td{border-bottom:none}
tr:hover td{background:var(--bg)}
.pat-cell{display:flex;align-items:center;gap:10px}
.pat-av{width:32px;height:32px;border-radius:8px;background:var(--teal-dim);border:1px solid rgba(11,123,114,.2);display:flex;align-items:center;justify-content:center;color:var(--teal);font-size:11px;font-weight:700;flex-shrink:0;overflow:hidden}
.pat-name{font-weight:600;font-size:13px;color:var(--t1)}
.pat-phone{font-size:11px;color:var(--t3);margin-top:1px}

/* ══ PILLS ══ */
.pill{display:inline-flex;align-items:center;padding:3px 9px;border-radius:20px;font-size:11px;font-weight:600}
.p-normal{background:var(--green-dim);color:var(--green)}
.p-moderate{background:var(--amber-dim);color:var(--amber)}
.p-abnormal{background:var(--red-dim);color:var(--red)}
.p-crisis{background:var(--red);color:#fff}
.p-low{background:var(--blue-dim);color:var(--blue)}
.tag{display:inline-block;padding:2px 8px;border-radius:20px;font-size:10px;font-weight:600;margin:1px}
.tag-htn{background:var(--red-dim);color:var(--red)}
.tag-dm{background:var(--purple-dim);color:var(--purple)}
.pay-badge{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 8px;border-radius:20px;font-size:10px;font-weight:700;background:var(--amber-dim);color:var(--amber);border:none;cursor:pointer;font-family:'Inter',sans-serif;vertical-align:middle;transition:.15s}
.pay-badge:hover{background:var(--amber);color:#fff}
.pay-badge i{font-size:9px}
.demo-badge{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 8px;border-radius:20px;font-size:10px;font-weight:700;background:var(--teal-dim);color:var(--teal);border:1px solid rgba(11,123,114,.20);font-family:'Inter',sans-serif;vertical-align:middle}
.demo-badge i{font-size:9px}
.adot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:5px}
.adot-on{background:var(--green);box-shadow:0 0 5px rgba(22,163,74,.5)}
.adot-off{background:var(--border2)}

/* ══ BUTTONS ══ */
.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:var(--r2);font-family:'Inter',sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:.15s}
.btn:active{transform:scale(.97)}
.btn-primary{background:var(--navy);color:#fff;box-shadow:0 2px 8px rgba(10,37,64,.15)}
.btn-primary:hover{background:var(--navy2)}
.btn-teal{background:var(--teal);color:#fff;box-shadow:0 2px 8px rgba(11,123,114,.2)}
.btn-teal:hover{background:var(--teal2)}
.btn-ghost{background:var(--white);color:var(--t1);border:1px solid var(--border)}
.btn-ghost:hover{background:var(--bg);border-color:var(--border2)}
.btn-danger{background:var(--red-light);color:var(--red);border:1px solid rgba(220,38,38,.2)}
.btn-danger:hover{background:var(--red);color:#fff}
.btn-green{background:var(--green-dim);color:var(--green);border:1px solid rgba(22,163,74,.2)}
.btn-sm{padding:5px 11px;font-size:12px;border-radius:var(--r1)}
.act-btn{background:var(--bg);border:1px solid var(--border);color:var(--t1);font-family:'Inter',sans-serif;font-size:12px;font-weight:500;padding:6px 12px;border-radius:var(--r2);cursor:pointer;transition:.15s;display:inline-flex;align-items:center;gap:5px}
.act-btn:hover{background:var(--teal-light);color:var(--teal);border-color:rgba(11,123,114,.2)}
.act-btn-locked{background:var(--amber-dim);color:var(--amber);border-color:rgba(217,119,6,.25)}
.act-btn-locked:hover{background:var(--amber);color:#fff;border-color:var(--amber)}
.act-btn-locked i{font-size:10px}

/* ══ FILTER BAR ══ */
.filter-bar{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap;align-items:center}
.filter-bar select,.filter-bar input{padding:8px 12px;border:1.5px solid var(--border);border-radius:var(--r2);font-size:12px;font-family:'Inter',sans-serif;outline:none;background:var(--white);color:var(--t1);transition:.15s}
.filter-bar select:focus,.filter-bar input:focus{border-color:var(--teal)}
.filter-tabs{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}
.ftab{padding:7px 14px;border-radius:20px;border:1.5px solid var(--border);font-size:12px;font-weight:500;cursor:pointer;background:var(--white);color:var(--t2);transition:.15s}
.filter-tabs button.ftab{font-family:inherit}
.ftab.on{background:var(--teal);color:#fff;border-color:var(--teal)}
.ftab:hover:not(.on){background:var(--bg2)}
.clinical-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:12px}
.clinical-stats-grid .stat-card{min-height:116px}
.ca-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ca-toolbar .filter-bar{margin-bottom:0;flex:1}
.ca-toolbar .filter-bar input,.ca-toolbar .filter-bar select{min-width:160px}
.ca-toggle{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 12px;border-radius:var(--r2);
  border:1.5px solid var(--border);background:var(--white);
  color:var(--t2);font-size:12px;font-weight:600;cursor:pointer;
  transition:.15s
}
.ca-toggle.on{background:var(--teal-light);border-color:rgba(11,123,114,.2);color:var(--teal)}
.ca-table-wrap{overflow-x:auto}
.ca-table{width:100%;border-collapse:collapse;font-size:13px}
.ca-table th,.ca-table td{padding:12px 14px;vertical-align:top}
.ca-table th{white-space:nowrap}
.ca-row{cursor:pointer;transition:.15s}
.ca-row:hover td{background:var(--bg)}
.ca-row.selected td{background:rgba(11,123,114,.06)}
.ca-title{font-weight:700;color:var(--t1);line-height:1.35}
.ca-sub{font-size:11px;color:var(--t3);margin-top:3px;line-height:1.45}
.ca-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}
.ca-sev-info{background:var(--blue-dim);color:var(--blue)}
.ca-sev-low{background:var(--green-dim);color:var(--green)}
.ca-sev-medium{background:var(--amber-dim);color:var(--amber)}
.ca-sev-high{background:rgba(220,38,38,.12);color:var(--red)}
.ca-sev-critical{background:var(--red);color:#fff}
.ca-status-new,.ca-status-viewed,.ca-status-reopened{background:var(--amber-dim);color:var(--amber)}
.ca-status-acknowledged,.ca-status-assigned,.ca-status-in_progress{background:var(--teal-dim);color:var(--teal)}
.ca-status-resolved,.ca-status-closed{background:var(--green-dim);color:var(--green)}
.ca-status-active{background:rgba(37,99,235,.1);color:var(--blue)}
.ca-detail-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px}
.ca-detail-stack{display:grid;gap:16px}
.ca-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--r3);padding:16px}
.ca-panel h4{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:13px;font-weight:700;color:var(--t1);margin-bottom:10px}
.ca-kv{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ca-kv > div{background:var(--white);border:1px solid var(--border);border-radius:var(--r2);padding:10px 12px}
.ca-k{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--t3);margin-bottom:4px}
.ca-v{font-size:13px;font-weight:600;color:var(--t1);line-height:1.45}
.ca-actions{display:flex;gap:8px;flex-wrap:wrap}
.ca-actions .btn,.ca-actions .act-btn{white-space:nowrap}
.ca-assign-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ca-assign-row select,.ca-assign-row input,.ca-assign-row textarea{max-width:100%}
.ca-list{display:grid;gap:10px}
.ca-item{background:var(--white);border:1px solid var(--border);border-radius:var(--r2);padding:12px 14px}
.ca-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.ca-item-meta{font-size:11px;color:var(--t3);margin-top:3px;line-height:1.45}
.ca-comment-box{width:100%;min-height:88px;padding:10px 12px;border:1.5px solid var(--border);border-radius:var(--r2);background:var(--white);color:var(--t1);font:inherit;resize:vertical}
.ca-comment-box:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-dim)}
.ca-trend-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ca-trend-list{display:grid;gap:8px}
.ca-trend-row{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;background:var(--white);border:1px solid var(--border);border-radius:var(--r2)}
.ca-trend-row strong{font-size:13px;color:var(--t1)}
.ca-trend-row span{font-size:11px;color:var(--t3)}
.ca-empty-note{font-size:12px;color:var(--t3);line-height:1.5}

/* ══ PROGRESS ══ */
.prog-item{margin-bottom:14px}
.prog-head{display:flex;justify-content:space-between;margin-bottom:6px;font-size:13px}
.prog-lbl{color:var(--t2);font-weight:500}
.prog-pct{color:var(--teal);font-weight:700}
.prog-bg{height:7px;background:var(--bg2);border-radius:4px;overflow:hidden}
.prog-fill{height:100%;background:linear-gradient(90deg,var(--teal2),var(--teal));border-radius:4px;width:0;transition:width .9s cubic-bezier(.4,0,.2,1)}

/* ══ MESSAGES ══ */
.msg-layout{display:grid;grid-template-columns:280px 1fr;height:100%;overflow:hidden}
.conv-panel{border-right:1px solid var(--border);overflow-y:auto;display:flex;flex-direction:column;background:var(--white)}
.conv-panel::-webkit-scrollbar{display:none}
.conv-head{padding:16px 18px;border-bottom:1px solid var(--border);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;font-weight:700;color:var(--t1);flex-shrink:0}
.conv-item{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;transition:.15s;border-bottom:1px solid var(--border)}
.conv-item:hover{background:var(--bg)}
.conv-item.on{background:var(--teal-light)}
.conv-av{width:38px;height:38px;border-radius:10px;background:var(--teal-dim);display:flex;align-items:center;justify-content:center;color:var(--teal);font-weight:700;font-size:12px;flex-shrink:0;overflow:hidden;border:1px solid rgba(11,123,114,.15)}
.conv-name{font-size:13px;font-weight:600;color:var(--t1)}
.conv-prev{font-size:11px;color:var(--t3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.conv-bdg{background:var(--teal);color:#fff;padding:2px 7px;border-radius:20px;font-size:10px;font-weight:700;margin-left:auto;flex-shrink:0}
.chat-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}
.chat-head-bar{padding:14px 18px;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--white)}
.chat-msgs{flex:1;overflow-y:auto;padding:18px;background:var(--bg);display:flex;flex-direction:column;gap:4px}
.chat-msgs::-webkit-scrollbar{width:4px}
.chat-msgs::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}
.msg-bubble{display:flex;flex-direction:column;margin-bottom:14px}
.msg-bubble.sent{align-items:flex-end}
.msg-bubble.recv{align-items:flex-start}
.msg-sender{font-size:10px;font-weight:600;color:var(--t3);margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em;padding:0 4px}
.bubble{max-width:66%;padding:11px 15px;border-radius:14px;font-size:13.5px;line-height:1.6;word-break:break-word}
.bubble.recv{background:var(--white);border:1px solid var(--border);border-bottom-left-radius:4px;color:var(--t1);box-shadow:var(--shadow-sm)}
.bubble.sent{background:var(--navy);color:#fff;border-bottom-right-radius:4px}
.bubble-time{font-size:10px;color:var(--t3);margin-top:4px;padding:0 4px}
.chat-inp-wrap{padding:12px 16px;border-top:1px solid var(--border);display:flex;gap:10px;background:var(--white);flex-shrink:0}
.chat-inp{flex:1;padding:10px 14px;background:var(--bg);border:1.5px solid var(--border);border-radius:var(--r2);color:var(--t1);font-family:'Inter',sans-serif;font-size:13px;outline:none;transition:.15s}
.chat-inp:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-dim)}
.chat-inp::placeholder{color:var(--t3)}
.send-btn{background:var(--teal);color:#fff;border:none;padding:10px 18px;border-radius:var(--r2);cursor:pointer;font-weight:600;font-size:13px;transition:.15s;display:flex;align-items:center;gap:6px}
.send-btn:hover{background:var(--teal2)}
.send-btn:disabled{opacity:.4;cursor:default}

/* ══ MODAL ══ */
.modal{display:none;position:fixed;inset:0;background:rgba(10,37,64,.5);z-index:1000;justify-content:center;align-items:center;padding:20px;backdrop-filter:blur(4px)}
.modal.on{display:flex}
.modal-box{background:var(--white);border:1px solid var(--border);border-radius:var(--r5);width:100%;max-width:920px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}
.modal-box::-webkit-scrollbar{width:5px}
.modal-box::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}
.modal-head{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--white);z-index:5}
.modal-body{padding:22px 24px}
.modal-close{width:32px;height:32px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r2);color:var(--t2);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s}
.modal-close:hover{background:var(--red-light);color:var(--red)}
.action-confirm-box{max-width:520px}
.action-confirm-note{width:100%;box-sizing:border-box;min-height:92px;padding:10px 12px;border:1.5px solid var(--border);border-radius:var(--r2);background:var(--bg);color:var(--t1);font:inherit;resize:vertical}

/* ══ READING CARDS ══ */
.reading-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}
.reading-card{border-radius:var(--r3);padding:16px;border-left:3px solid}
.rc-bp{background:var(--red-light);border-color:var(--red)}
.rc-gl{background:var(--purple-light);border-color:var(--purple)}
.rc-lbl{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--t3);margin-bottom:6px}
.rc-val{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:24px;font-weight:800;color:var(--t1);margin-bottom:6px}

/* ══ CLINICAL NOTES ══ */
.note-item{background:var(--bg);border-radius:var(--r2);padding:12px 14px;margin-bottom:8px;border-left:3px solid var(--teal)}
.note-meta{font-size:11px;color:var(--t3);margin-bottom:4px}
.note-text{font-size:13px;color:var(--t1);line-height:1.55}

/* ══ ALERTS ══ */
.alert-row{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border);transition:.15s}
.alert-row:hover{background:var(--bg)}
.alert-ico{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px}
.ai-crisis{background:var(--red);color:#fff}
.ai-warn{background:var(--amber-dim);color:var(--amber)}
.ai-miss{background:var(--blue-dim);color:var(--blue)}
.alert-name{font-size:13px;font-weight:600;color:var(--t1)}
.alert-desc{font-size:12px;color:var(--t2);margin-top:3px;line-height:1.45}
.alert-time{font-size:11px;color:var(--t3);margin-top:4px}
.alert-actions{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}

/* ══ ACTIVITY ══ */
.activity-item{display:flex;align-items:flex-start;gap:12px;padding:13px 16px;border-bottom:1px solid var(--border)}
.act-ico{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:13px}
.act-name{font-size:13px;font-weight:600;color:var(--t1)}
.act-desc{font-size:12px;color:var(--t2);margin-top:2px;line-height:1.4}
.act-time{font-size:11px;color:var(--t3);margin-top:3px}
.act-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:20px;margin-left:auto;flex-shrink:0;align-self:flex-start;margin-top:2px}

/* ══ REPORTS ══ */
.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.report-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--r4);padding:22px;text-align:center}
.report-icon{font-size:2rem;display:block;margin-bottom:10px}
.report-card h3{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:15px;font-weight:700;color:var(--t1);margin-bottom:6px}
.report-card p{font-size:12px;color:var(--t3);line-height:1.6;margin-bottom:16px}
.report-section{margin-bottom:20px}
.report-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 0 12px}
.report-section-title{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:18px;font-weight:800;color:var(--t1)}
.report-section-sub{font-size:12px;color:var(--t3);margin-top:3px}
.report-card-wide{grid-column:1/-1;text-align:left}
.report-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.report-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.report-metric{background:var(--white);border:1px solid var(--border);border-radius:8px;padding:12px;min-height:78px}
.report-metric-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--t3);line-height:1.3}
.report-metric-value{font-size:24px;font-weight:800;color:var(--t1);line-height:1;margin-top:8px}
.report-metric-note{font-size:11px;color:var(--t3);margin-top:6px;line-height:1.35}
.report-bar-row{display:grid;grid-template-columns:120px 1fr 48px;gap:10px;align-items:center;font-size:12px;margin:8px 0}
.report-bar-track{height:8px;background:var(--bg2);border-radius:999px;overflow:hidden}
.report-bar-fill{height:100%;border-radius:999px;background:var(--teal)}
.report-table{width:100%;border-collapse:collapse;font-size:12px}
.report-table th,.report-table td{padding:9px 8px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}
.report-table th{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--t3)}
.report-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}

/* ══ SETTINGS ══ */
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.settings-item{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid var(--border);font-size:13px;color:var(--t1)}
.settings-item:last-child{border-bottom:none}
.toggle{position:relative;display:inline-block;width:40px;height:22px}
.toggle input{opacity:0;width:0;height:0}
.toggle-sl{position:absolute;inset:0;background:var(--border2);border-radius:22px;transition:.3s;cursor:pointer}
.toggle-sl:before{content:'';position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;left:3px;bottom:3px;transition:.3s;box-shadow:var(--shadow-sm)}
.toggle input:checked+.toggle-sl{background:var(--teal)}
.toggle input:checked+.toggle-sl:before{transform:translateX(18px)}

/* ══ HOSPITAL LIST (super admin) ══ */
.hospital-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r4);padding:18px;display:flex;align-items:center;gap:14px;margin-bottom:12px;transition:.2s;box-shadow:var(--shadow-sm)}
.hospital-card:hover{box-shadow:var(--shadow);border-color:var(--teal)}
.hosp-av{width:46px;height:46px;border-radius:12px;background:var(--teal-dim);border:1.5px solid rgba(11,123,114,.2);display:flex;align-items:center;justify-content:center;color:var(--teal);font-size:20px;flex-shrink:0}
.hosp-name{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:15px;font-weight:700;color:var(--t1)}
.hosp-meta{font-size:12px;color:var(--t3);margin-top:2px}
.hosp-stats{display:flex;gap:14px;margin-left:auto;text-align:center;flex-shrink:0}
.hosp-stat-num{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:18px;font-weight:800;color:var(--t1)}
.hosp-stat-lbl{font-size:10px;color:var(--t3);text-transform:uppercase;letter-spacing:.04em}
.hosp-status-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 6px rgba(22,163,74,.5);flex-shrink:0}

/* ══ PRIORITY ══ */
.priority-item{background:var(--bg);border:1px solid var(--border);border-radius:var(--r3);padding:14px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.priority-item.crisis{border-left:3px solid var(--red);background:var(--red-light)}
.priority-item.abnormal{border-left:3px solid var(--amber);background:var(--amber-light)}

/* ══ CHART ══ */
.chart-wrap{position:relative;height:180px;margin-top:10px}
.trend-tabs{display:flex;gap:5px;margin-bottom:10px}
.ttab{padding:4px 10px;border-radius:20px;border:1px solid var(--border);font-size:11px;font-weight:600;cursor:pointer;background:var(--white);color:var(--t2);transition:.15s}
.ttab.on{background:var(--navy);color:#fff;border-color:var(--navy)}

/* ══ PAGINATION ══ */
.pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 0;font-size:12px;color:var(--t3)}
.page-btns{display:flex;gap:4px}
.page-btn{width:30px;height:30px;border:1.5px solid var(--border);border-radius:var(--r1);background:var(--white);cursor:pointer;font-size:12px;font-weight:600;color:var(--t2);transition:.15s}
.page-btn.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.page-btn:hover:not(.on){background:var(--bg2)}

/* ══ MINI FORM ══ */
.mini-form input,.mini-form select,.mini-form textarea{width:100%;padding:10px 13px;background:var(--bg);border:1.5px solid var(--border);border-radius:var(--r2);color:var(--t1);font-family:'Inter',sans-serif;font-size:13px;outline:none;margin-bottom:10px;transition:.15s}
.mini-form input:focus,.mini-form select:focus,.mini-form textarea:focus{border-color:var(--teal);background:var(--white)}
.mini-form textarea{height:70px;resize:vertical;line-height:1.5}

/* ══ OVERVIEW GRID ══ */
.avg-box{text-align:center;padding:16px;background:var(--bg);border-radius:var(--r3);border:1px solid var(--border)}
.avg-lbl{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.avg-val{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:22px;font-weight:800;letter-spacing:-.02em}
.avg-unit{font-size:11px;color:var(--t3);margin-top:3px}

/* ══ SECTION HEADER ══ */
.sec-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px;flex-wrap:wrap;gap:12px}
.sec-title{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:20px;font-weight:800;color:var(--t1);letter-spacing:-.02em}
.sec-sub{font-size:13px;color:var(--t3);margin-top:3px}

/* ══ PW RESET BANNER ══ */
.pw-banner{position:fixed;top:0;left:0;right:0;z-index:500;background:var(--teal);color:#fff;padding:11px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:var(--shadow);font-size:13px;font-weight:600}
.pw-banner-close{background:rgba(255,255,255,.2);border:none;color:#fff;padding:4px 10px;border-radius:6px;cursor:pointer}

/* ══ EMPTY ══ */
.empty{text-align:center;padding:40px 20px;color:var(--t3);font-size:13px}
.empty i{display:block;font-size:1.8rem;margin-bottom:8px;opacity:.3}

/* ══ DARK MODE ══ */
body.dark{
  --bg:#0F172A;--bg1:#1E293B;--bg2:#1E293B;
  --white:#1E293B;
  --t1:#F1F5F9;--t2:#CBD5E1;--t3:#64748B;
  --border:#334155;--border2:#475569;
  --shadow-sm:0 1px 3px rgba(0,0,0,.3);
  --shadow:0 4px 12px rgba(0,0,0,.4);
  --shadow-lg:0 12px 40px rgba(0,0,0,.5);
  --shadow-xl:0 24px 64px rgba(0,0,0,.6);
}
body.dark .topbar,body.dark .modal-box,body.dark .card,body.dark .auth-card{background:var(--white)}
body.dark .sidebar{background:#070F1E}
body.dark table tr:hover td{background:var(--bg2)}
.dark-toggle{width:36px;height:36px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r2);color:var(--t2);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s}
.dark-toggle:hover{background:var(--bg2)}

/* ══ RISK SCORE ══ */
.risk-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:20px;font-size:10px;font-weight:700;letter-spacing:.03em}
.risk-low{background:var(--green-dim);color:var(--green)}
.risk-moderate{background:var(--amber-dim);color:var(--amber)}
.risk-high{background:var(--red-dim);color:var(--red)}
.risk-critical{background:var(--red);color:#fff}

/* ══ AI INSIGHTS ══ */
.ai-insight-item{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);font-size:13px;line-height:1.55}
.ai-insight-item:last-child{border-bottom:none}
.ai-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px}

@media(max-width:1000px){
  :root{--sw:58px}
  .sb-logo-text,.sb-hospital,.nav-group-label,.n-label,.n-badge,.doc-name,.doc-sub{display:none}
  .nav-item{justify-content:center;padding:12px}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .clinical-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ca-detail-grid{grid-template-columns:1fr}
  .report-grid,.settings-grid,.reading-grid{grid-template-columns:1fr}
  #sec-settings > div[style*="grid-template-columns"]{grid-template-columns:1fr!important}
}

/* Clinical Alert Queue refresh status */
.ca-stale-banner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 10px;
  padding:11px 13px;
  border:1px solid rgba(217,119,6,.35);
  border-radius:10px;
  background:#fffbeb;
  color:#92400e;
  font-size:12px;
  font-weight:600;
}
.ca-stale-banner[hidden]{display:none}
.ca-stale-message{display:flex;align-items:center;gap:8px;line-height:1.45}
.ca-stale-retry{flex:0 0 auto;border-color:rgba(217,119,6,.45);color:#92400e;background:#fff}
.ca-last-updated{min-height:17px;margin:-2px 0 9px;text-align:right;color:var(--t3);font-size:11px}
@media(max-width:640px){
  .ca-stale-banner{align-items:flex-start;flex-direction:column}
}

/* Unified clinical-programme hub */
.programme-safety-note{display:flex;align-items:flex-start;gap:10px;margin-bottom:18px;padding:12px 14px;border:1px solid rgba(11,123,114,.18);border-radius:12px;background:rgba(11,123,114,.07);color:var(--t2);font-size:12px;line-height:1.55}
.programme-safety-note i{color:var(--teal);margin-top:2px}
.programme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}
.programme-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}
.programme-card{display:flex;flex-direction:column;min-height:280px;padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--white);box-shadow:var(--shadow-sm)}
.programme-card-primary{border-color:rgba(11,123,114,.25);background:linear-gradient(145deg,var(--white),rgba(11,123,114,.045))}
.programme-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:18px;border-radius:14px;background:var(--teal-dim);color:var(--teal);font-size:20px}
.programme-icon-purple{background:rgba(124,58,237,.1);color:#7C3AED}.programme-icon-coral{background:rgba(239,90,80,.1);color:var(--red)}
.programme-content{flex:1}.programme-kicker{display:block;margin-bottom:7px;color:var(--t3);font-size:10px;font-weight:700;letter-spacing:.08em}.programme-content h3{margin:0 0 9px;color:var(--t1);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:18px}.programme-content p{margin:0 0 20px;color:var(--t3);font-size:12px;line-height:1.65}.programme-card .btn{align-self:flex-start;text-decoration:none}
.programme-icon-blue{background:rgba(37,99,235,.09);color:#2563eb}
.programme-metric{display:flex;align-items:baseline;gap:7px;margin:0 0 18px;color:var(--t3);font-size:11px}.programme-metric strong{color:var(--t1);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:22px}
.nav-item-programme{padding-left:25px}.restricted-nav-lock{margin-left:auto;color:rgba(255,255,255,.42);font-size:9px}
[hidden]{display:none!important}
.programme-shortcuts{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.programme-shortcuts a{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid var(--border);border-radius:8px;color:var(--t2);font-size:10px;font-weight:600;text-decoration:none;transition:.15s}.programme-shortcuts a:hover,.programme-shortcuts a:focus-visible{border-color:var(--teal);color:var(--teal);outline:none}
.programme-principles{padding:18px}.programme-principles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.programme-principles-grid div{padding:12px;border-radius:10px;background:var(--bg)}.programme-principles-grid b,.programme-principles-grid span{display:block}.programme-principles-grid b{margin-bottom:5px;color:var(--t1);font-size:12px}.programme-principles-grid span{color:var(--t3);font-size:11px;line-height:1.5}
@media(max-width:1050px){.programme-grid,.programme-principles-grid{grid-template-columns:1fr}}
.environment-badge{margin-left:10px;padding:4px 8px;border:1px solid rgba(11,123,114,.25);border-radius:999px;background:var(--teal-dim);color:var(--teal);font-size:9px;font-weight:800;letter-spacing:.08em}.environment-badge.production{border-color:rgba(22,163,74,.25);background:var(--green-dim);color:var(--green)}
.programme-card .disabled-action{pointer-events:none;cursor:not-allowed;opacity:.6}

/* Unified clinical design system */
body{font-size:14px;line-height:1.5;font-variant-numeric:tabular-nums}
button,input,select,textarea{font-family:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(8,127,115,.22);outline-offset:2px}
.topbar{border-bottom-color:var(--border);box-shadow:0 1px 0 rgba(11,31,51,.03)}
.page-title,.sec-title{font-weight:700;letter-spacing:-.018em}
.sec-title{font-size:22px}.sec-sub{color:var(--t2);font-size:13px}
.card,.programme-card,.report-card,.hospital-card{border-color:var(--border);box-shadow:var(--shadow-sm)}
.card:hover,.programme-card:hover{border-color:#C9D5E1}
.btn,.send-btn,.act-btn{min-height:42px;border-radius:10px;font-weight:600;justify-content:center}
.btn-sm{min-height:34px}
.filter-bar select,.filter-bar input,.mini-form input,.mini-form select,.mini-form textarea,.chat-inp{min-height:44px;border-color:var(--border2)}
.filter-bar select:focus,.filter-bar input:focus,.mini-form input:focus,.mini-form select:focus,.mini-form textarea:focus{box-shadow:0 0 0 3px var(--teal-dim)}
th{position:sticky;top:0;z-index:1;background:var(--bg1);color:var(--t2);font-size:11px;font-weight:700;letter-spacing:.055em}
td{font-size:13px}.tbl-wrap{border-radius:14px}
.programme-card{min-height:300px;border-radius:14px;padding:22px}
.programme-card-primary{border-color:var(--border);background:linear-gradient(145deg,var(--white),rgba(198,40,40,.025))}
.programme-card[data-programme-card="hypertension"]{border-top:4px solid var(--red)}
.programme-card[data-programme-card="diabetes"]{border-top:4px solid var(--blue)}
.programme-card[data-programme-card="fertility"]{border-top:4px solid var(--purple)}
.programme-card[data-programme-card="hiv"]{border-top:4px solid var(--teal)}
.programme-card[data-programme-card="hypertension"] .programme-icon{background:var(--red-light);color:var(--red)}
.programme-card[data-programme-card="diabetes"] .programme-icon{background:var(--blue-light);color:var(--blue)}
.programme-card[data-programme-card="fertility"] .programme-icon{background:var(--purple-light);color:var(--purple)}
.programme-card[data-programme-card="hiv"] .programme-icon{background:var(--teal-light);color:var(--teal)}
.programme-content h3{font-size:18px;font-weight:700;letter-spacing:-.012em}
.programme-kicker{color:var(--t2);font-size:11px}
.restricted-nav-lock{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;background:rgba(255,255,255,.08)}
.pill,.status,.environment-badge{font-weight:700}
.stat-num,.avg-val,.rc-val,.programme-metric strong{font-variant-numeric:tabular-nums}
.modal-box{border-radius:18px}.modal-head{padding:18px 22px}
@media(max-width:720px){.sec-title{font-size:20px}.programme-card{min-height:auto}.btn{min-height:44px}}
