.cc-reperfusion-preview {
  min-width: 0;
  padding: .85rem;
  border: 1px solid #638b97;
  border-radius: .75rem;
  background: #142e38;
  color: #eaf5f6;
  box-shadow: 0 .65rem 1.8rem #061b2452;
}
.cc-reperfusion-preview * { box-sizing: border-box; }
.cc-reperfusion-preview :is(h4, h5, p) { margin-top: 0; }
.cc-reperfusion-kicker { display: block; margin-bottom: .25rem; color: #a8dbd5; font-size: .69rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.cc-reperfusion-head h4 { margin-bottom: .3rem; color: #f7fbfa; font-size: clamp(1.08rem, 2vw, 1.3rem); line-height: 1.2; }
.cc-reperfusion-head p { margin-bottom: .6rem; color: #d0e1e3; font-size: .78rem; line-height: 1.4; }
.cc-reperfusion-times { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .3rem; }
.cc-reperfusion-preview button { min-width: 0; padding: .4rem .5rem; border: 1px solid #7caab2; border-radius: .38rem; background: #28535e; color: #f7fbfa; font: inherit; font-size: .76rem; font-weight: 700; line-height: 1.3; cursor: pointer; }
.cc-reperfusion-preview button:hover { background: #376774; }
.cc-reperfusion-preview button:focus-visible { outline: 3px solid #ffd88f; outline-offset: 2px; }
.cc-reperfusion-time { text-align: left; }
.cc-reperfusion-time[aria-pressed="true"] { border-color: #d0f0db; background: #3d715f; }
.cc-reperfusion-time[data-in-draft="true"]::after { content: " · in draft"; color: #cff5d7; font-size: .7rem; }
.cc-reperfusion-record { margin-top: .6rem; padding: .6rem; border: 1px solid #628a92; border-radius: .5rem; background: #1e3c46; }
.cc-reperfusion-record-head { display: flex; justify-content: space-between; flex-wrap: wrap; gap: .15rem .5rem; margin-bottom: .42rem; }
.cc-reperfusion-record-head strong { color: #fff; font-size: .84rem; }
.cc-reperfusion-record-head span { color: #bfe0df; font-size: .7rem; }
.cc-reperfusion-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .35rem; }
.cc-reperfusion-source { min-width: 0; padding: .4rem; border-left: 3px solid #91bcc2; background: #17313a; }
.cc-reperfusion-source.patient { grid-column: auto; }
.cc-reperfusion-source.ecg { grid-column: 1 / -1; }
.cc-reperfusion-source span { display: block; margin-bottom: .12rem; color: #b8d9db; font-size: .66rem; font-weight: 750; text-transform: uppercase; }
.cc-reperfusion-source strong { display: block; overflow-wrap: anywhere; color: #f4fafa; font-size: .79rem; line-height: 1.35; }
.cc-reperfusion-observation { margin: .42rem 0 0; color: #e0eeee; font-size: .76rem; line-height: 1.38; }
.cc-reperfusion-add { width: 100%; margin-top: .43rem; }
.cc-reperfusion-receiver { margin-top: .55rem; padding: .55rem; border-top: 2px solid #688d96; background: #102a33; }
.cc-reperfusion-receiver h5 { margin-bottom: .28rem; color: #f1f9f9; font-size: .87rem; }
.cc-reperfusion-draft { max-height: 5.7rem; margin: 0 0 .45rem; padding-left: 1.35rem; overflow: auto; color: #dce9eb; font-size: .73rem; line-height: 1.38; }
.cc-reperfusion-draft li + li { margin-top: .28rem; }
.cc-reperfusion-empty { list-style: none; margin-left: -1.1rem; }
.cc-reperfusion-gaps p { margin-bottom: .28rem; padding: .35rem .45rem; border-left: 3px solid #8eccc2; color: #eaf5f6; background: #21404a; font-size: .75rem; line-height: 1.36; }
.cc-reperfusion-gaps .cc-reperfusion-missing, .cc-reperfusion-gaps .cc-reperfusion-pending { border-left-color: #e8bc83; }
.cc-reperfusion-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .35rem; margin-top: .42rem; }
.cc-reperfusion-feedback { margin: .42rem 0 0; padding: .4rem .5rem; border-radius: .28rem; color: #f2faf7; background: #315548; font-size: .75rem; line-height: 1.4; }
.cc-reperfusion-boundary { margin: .48rem 0 0; color: #bed9da; font-size: .7rem; line-height: 1.38; }
@media (max-width: 390px) {
  .cc-reperfusion-preview { padding: .55rem; }
  .cc-reperfusion-preview button { font-size: .73rem; }
  .cc-reperfusion-actions { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 720px) {
  .cc-reperfusion-facts { grid-template-columns: minmax(0, 1fr); }
}
