/* Recovery Monitor System — ui/patient.css
   Patient PWA Additional Styles
   ──────────────────────────────────────────── */

/* ── PATIENT APP SHELL ───────────────────────── */
.rms-pt-app {
  display:        flex;
  flex-direction: column;
  min-height:     100vh;
  background:     var(--bg-base);
}

/* ── TOP BAR ADDITIONS ───────────────────────── */
.rms-pt-dot--ok    { background: #34d399 !important; box-shadow: 0 0 8px #34d399 !important; }
.rms-pt-dot--warn  { background: #f59e0b !important; box-shadow: 0 0 8px #f59e0b !important; }
.rms-pt-dot--alert { background: #e05c6e !important; box-shadow: 0 0 8px #e05c6e !important; }

.rms-pt-topbar-info {
  display:        flex;
  flex-direction: column;
  align-items:    flex-end;
  gap:            2px;
}

.rms-pt-topbar-name {
  font-size:   0.875rem;
  font-weight: 600;
  color:       #e8ecf4;
}

.rms-pt-topbar-time {
  font-size: 0.75rem;
  color:     #5a6180;
}

/* ── LAYOUT ──────────────────────────────────── */
.rms-pt-layout {
  display:    flex;
  flex:       1;
  overflow:   hidden;
  height:     calc(100vh - 62px);
}

.rms-pt-main {
  flex:         1;
  overflow-y:   auto;
  padding:      24px;
  display:      flex;
  flex-direction: column;
  gap:          16px;
}

/* ── WELCOME BANNER ──────────────────────────── */
.rms-pt-welcome {
  display:         flex;
  justify-content: space-between;
  align-items:     center;
  background:      linear-gradient(135deg, #131c30 0%, #1a2240 100%);
  border:          1px solid #2a3654;
  border-radius:   14px;
  padding:         18px 22px;
  gap:             12px;
}

.rms-pt-welcome__greeting {
  font-size:   1.1rem;
  font-weight: 700;
  color:       #e8ecf4;
}

.rms-pt-welcome__prog {
  font-size:  0.8rem;
  color:      #5b72e8;
  margin-top: 4px;
  font-weight: 500;
}

.rms-pt-badge--ok    { background: rgba(52,211,153,0.12); color: #34d399; border: 1px solid rgba(52,211,153,0.3); padding: 6px 14px; border-radius: 8px; font-size: 0.8125rem; font-weight: 600; white-space: nowrap; }
.rms-pt-badge--warn  { background: rgba(245,158,11,0.12);  color: #f59e0b; border: 1px solid rgba(245,158,11,0.3);  padding: 6px 14px; border-radius: 8px; font-size: 0.8125rem; font-weight: 600; white-space: nowrap; }
.rms-pt-badge--alert { background: rgba(224,92,110,0.12);  color: #e05c6e; border: 1px solid rgba(224,92,110,0.3);  padding: 6px 14px; border-radius: 8px; font-size: 0.8125rem; font-weight: 600; white-space: nowrap; }

/* ── STATS ROW ───────────────────────────────── */
.rms-pt-stats-row {
  display:               grid;
  grid-template-columns: repeat(4, 1fr);
  gap:                   10px;
}

.rms-pt-stat-card {
  background:    var(--bg-card);
  border:        1px solid var(--border);
  border-radius: 12px;
  padding:       14px;
  text-align:    center;
}

.rms-pt-stat-card__icon { font-size: 1.3rem; margin-bottom: 4px; }
.rms-pt-stat-card__val  { font-size: 1.3rem; font-weight: 700; color: var(--text-primary); }
.rms-pt-stat-card__lbl  { font-size: 0.75rem; color: var(--text-muted); margin-top: 2px; }

/* ── TASK CARD DONE STATE ────────────────────── */
.ndos-task-card--done {
  opacity: 0.55;
}

.ndos-task-card--done .ndos-task-card__name {
  text-decoration: line-through;
  color: var(--text-muted);
}

/* ── RESPONSIVE ──────────────────────────────── */
@media (max-width: 700px) {
  .rms-pt-main         { padding: 12px; }
  .rms-pt-stats-row    { grid-template-columns: repeat(2, 1fr); }
  .rms-pt-welcome      { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 480px) {
  .rms-pt-stats-row { grid-template-columns: repeat(2, 1fr); }
}
