/* Resumo Clínico Longitudinal (doc 15) — visão do médico. Prefixo cs-*. Denso mas hierárquico; reaproveita
   tokens --vt-*. Cor sempre pareada a rótulo (nunca só cor). */
.cs-page { display: flex; flex-direction: column; gap: 14px; }
.cs-state { background: var(--vt-surface); border: 1px solid var(--vt-border); border-radius: var(--vt-radius-lg); box-shadow: var(--vt-shadow-soft); padding: 24px; text-align: center; color: var(--vt-text-secondary); }
.cs-state__actions { display: flex; gap: 8px; justify-content: center; margin-top: 12px; flex-wrap: wrap; }
.cs-skel { height: 90px; border-radius: var(--vt-radius-lg); background: linear-gradient(90deg, var(--vt-surface-muted), #eef1f4, var(--vt-surface-muted)); }

.cs-head { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; background: var(--vt-surface); border: 1px solid var(--vt-border); border-radius: var(--vt-radius-lg); box-shadow: var(--vt-shadow-soft); padding: 14px 20px; }
.cs-head__name { font-size: 1.05rem; font-weight: 700; color: var(--vt-text-primary); }
.cs-head__sub { font-size: .8rem; color: var(--vt-text-muted); }
.cs-head__facts { display: flex; gap: 18px; margin-left: auto; flex-wrap: wrap; }
.cs-fact { display: flex; flex-direction: column; }
.cs-fact__k { font-size: .64rem; text-transform: uppercase; letter-spacing: .04em; color: var(--vt-text-muted); }
.cs-fact__v { font-size: .84rem; font-weight: 600; color: var(--vt-text-primary); font-variant-numeric: tabular-nums; }
.cs-head__actions { display: flex; gap: 6px; flex-wrap: wrap; }

.cs-summary { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.cs-stat { background: var(--vt-surface); border: 1px solid var(--vt-border); border-top: 3px solid var(--vt-border-strong); border-radius: var(--vt-radius-lg); box-shadow: var(--vt-shadow-soft); padding: 12px 14px; display: flex; flex-direction: column; gap: 2px; }
.cs-stat--change { border-top-color: var(--vt-info); }
.cs-stat--up { border-top-color: #1c8b3e; }
.cs-stat--down { border-top-color: #c0353a; }
.cs-stat--stable { border-top-color: var(--vt-border-strong); }
.cs-stat--incon { border-top-color: #8a94a3; }
.cs-stat__n { font-size: 1.5rem; font-weight: 700; color: var(--vt-text-primary); font-variant-numeric: tabular-nums; line-height: 1; }
.cs-stat__l { font-size: .74rem; color: var(--vt-text-muted); }

.cs-card { background: var(--vt-surface); border: 1px solid var(--vt-border); border-radius: var(--vt-radius-lg); box-shadow: var(--vt-shadow-soft); padding: 14px 18px; }
.cs-card__h { display: flex; align-items: center; gap: 8px; font-size: .92rem; font-weight: 700; color: var(--vt-text-primary); margin-bottom: 10px; }
.cs-badge { min-width: 18px; height: 18px; padding: 0 6px; display: inline-flex; align-items: center; justify-content: center; background: var(--vt-info); color: #fff; border-radius: 9px; font-size: .68rem; font-weight: 700; }

.cs-insight { padding: 9px 0 9px 10px; border-left: 3px solid var(--vt-border-strong); border-top: 1px solid var(--vt-border); margin-top: 2px; }
.cs-insight:first-of-type { border-top: none; }
.cs-insight--crit { border-left-color: #c0353a; }
.cs-insight--high { border-left-color: #d97706; }
.cs-insight--mod { border-left-color: #e0a400; }
.cs-insight--low { border-left-color: var(--vt-info); }
.cs-insight__t { font-size: .88rem; font-weight: 600; color: var(--vt-text-primary); display: flex; justify-content: space-between; gap: 10px; }
.cs-insight__conf { font-size: .7rem; font-weight: 500; color: var(--vt-text-muted); white-space: nowrap; }
.cs-insight__s { font-size: .82rem; color: var(--vt-text-secondary); margin-top: 2px; }
.cs-insight__meta { font-size: .7rem; color: var(--vt-text-muted); margin-top: 3px; }

.cs-sys { display: flex; flex-direction: column; }
.cs-sysrow { display: flex; align-items: center; gap: 10px; padding: 8px 0; border-top: 1px solid var(--vt-border); font-size: .84rem; }
.cs-sysrow:first-child { border-top: none; }
.cs-sysrow__ico { color: var(--vt-text-secondary); flex: none; }
.cs-sysrow__name { font-weight: 600; color: var(--vt-text-primary); min-width: 150px; }
.cs-chip { padding: 2px 9px; border-radius: 999px; font-size: .72rem; font-weight: 600; border: 1px solid var(--vt-border); background: var(--vt-surface-muted); color: var(--vt-text-secondary); white-space: nowrap; }
.cs-chip--preserved { background: var(--cm-preserved-bg, rgba(52,199,89,.14)); color: #1c8b3e; border-color: rgba(52,199,89,.4); }
.cs-chip--mild { background: rgba(224,164,0,.14); color: #9a7100; border-color: rgba(224,164,0,.4); }
.cs-chip--moderate { background: rgba(255,159,10,.14); color: #b56d00; border-color: rgba(255,159,10,.4); }
.cs-chip--marked { background: rgba(255,90,95,.14); color: #c0353a; border-color: rgba(255,90,95,.45); }
.cs-chip--indeterminate { background: var(--vt-surface-muted); color: var(--vt-text-secondary); }
.cs-sysrow__trend { font-size: .76rem; }
.cs-sysrow__trend--up { color: #1c8b3e; }
.cs-sysrow__trend--down { color: #c0353a; }
.cs-sysrow__trend--stable { color: var(--vt-text-muted); }
.cs-sysrow__conf { font-size: .72rem; color: var(--vt-text-muted); }
.cs-sysrow__mk { font-size: .74rem; color: var(--vt-text-muted); margin-left: auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 220px; }

.cs-events { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.cs-events li { display: flex; align-items: center; gap: 8px; padding: 6px 0; border-top: 1px solid var(--vt-border); font-size: .82rem; color: var(--vt-text-secondary); }
.cs-events li:first-child { border-top: none; }
.cs-events__d { font-variant-numeric: tabular-nums; color: var(--vt-text-muted); flex: none; min-width: 78px; }
.cs-events__t { color: var(--vt-text-primary); }
.cs-events__ba { color: var(--vt-text-muted); margin-left: auto; }
.cs-events__lk { color: var(--vt-info); flex: none; display: inline-flex; }

.cs-nar { font-size: .86rem; color: var(--vt-text-secondary); line-height: 1.55; margin: 0 0 8px; }
.cs-chiprow { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.cs-tag { font-size: .7rem; color: var(--vt-text-muted); background: var(--vt-surface-muted); border-radius: 999px; padding: 2px 9px; }
.cs-note { display: flex; align-items: center; gap: 6px; font-size: .74rem; color: var(--vt-text-muted); margin: 8px 0 0; }

.cs-limits { display: flex; gap: 12px; background: var(--vt-tint-warning, rgba(217,119,6,.06)); border: 1px solid rgba(217,119,6,.25); border-radius: var(--vt-radius-lg); padding: 14px 18px; }
.cs-limits__ico { color: #b45309; flex: none; }
.cs-limits__t { font-weight: 700; color: var(--vt-text-primary); font-size: .86rem; margin-bottom: 4px; }
.cs-limits ul { margin: 0; padding-left: 18px; font-size: .82rem; color: var(--vt-text-secondary); }

.cs-disclaimer { display: flex; align-items: center; gap: 7px; font-size: .78rem; color: var(--vt-text-muted); background: var(--vt-surface-muted); border-radius: var(--vt-radius-md); padding: 10px 14px; margin: 0; }
.cs-disclaimer .clinical-icon { color: var(--vt-info); flex: none; }

@media (max-width: 980px) { .cs-summary { grid-template-columns: repeat(2, 1fr); } .cs-head__facts { margin-left: 0; } }
