/* Thermal Sign-off flagship page */

.signoff-deliver {
  display: grid; gap: var(--space-7);
  grid-template-columns: 1.05fr 1fr;
  align-items: start;
}
@media (max-width: 1000px) { .signoff-deliver { grid-template-columns: 1fr; } }
.signoff-deliver h2 { margin: var(--space-3) 0 var(--space-3); }
.signoff-deliver > div > p { color: var(--fg-1); margin: 0 0 var(--space-5); }

.signoff-list {
  list-style: none; padding: 0; margin: 0;
  display: grid; gap: var(--space-3);
}
.signoff-list li {
  display: grid; grid-template-columns: 44px 1fr; gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  background: var(--bg-1);
  border: 1px solid var(--border-0);
  border-radius: var(--r-2);
  align-items: center;
}
.signoff-list .mono {
  display: inline-grid; place-items: center;
  width: 36px; height: 36px; border-radius: var(--r-full);
  background: var(--bg-2); border: 1px solid var(--accent);
  color: var(--accent); font-size: var(--fs-12);
}
.signoff-list strong { display: block; color: var(--fg-0); font-size: var(--fs-16); }
.signoff-list span { color: var(--fg-2); font-size: var(--fs-12); }

/* ---------- Mock report card ---------- */
.signoff-mock { position: sticky; top: 96px; }
.signoff-mock__paper {
  background:
    linear-gradient(180deg, var(--bg-1) 0%, var(--bg-0) 100%);
  border: 1px solid var(--border-1);
  border-radius: var(--r-3);
  padding: var(--space-5);
  box-shadow: var(--shadow-3);
  display: grid; gap: var(--space-4);
}
.signoff-mock__head { display: flex; justify-content: space-between; align-items: center; }
.signoff-mock__head strong { display: block; color: var(--fg-0); font-size: var(--fs-14); }
.signoff-mock__head span { display: block; color: var(--fg-2); font-size: var(--fs-12); margin-top: 2px; }
.signoff-mock__stamp {
  background: rgba(52,211,153,.12);
  color: var(--good);
  border: 1px solid var(--good);
  padding: 6px 12px; border-radius: var(--r-2);
  font-family: var(--font-mono); font-size: var(--fs-12);
  letter-spacing: var(--tracking-wide);
}
.signoff-mock__rows {
  display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-2);
}
.signoff-mock__rows > div {
  background: var(--bg-2);
  border: 1px solid var(--border-0);
  border-radius: var(--r-2);
  padding: var(--space-2) var(--space-3);
  display: flex; justify-content: space-between; align-items: center;
}
.signoff-mock__rows span { color: var(--fg-2); font-size: var(--fs-12); }
.signoff-mock__rows strong { color: var(--fg-0); font-size: var(--fs-16); }
.signoff-mock__heatmap {
  height: 160px; border-radius: var(--r-2); border: 1px solid var(--border-0);
  background:
    radial-gradient(circle at 65% 45%, rgba(255,106,44,.85) 0%, rgba(225,29,72,.5) 15%, rgba(109,40,217,.4) 38%, rgba(30,58,138,.4) 65%, rgba(10,14,26,.7) 95%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.05) 0 1px, transparent 1px 24px),
    repeating-linear-gradient(0deg,  rgba(255,255,255,.05) 0 1px, transparent 1px 24px);
}
.signoff-mock__foot {
  display: flex; justify-content: space-between;
  color: var(--fg-2); font-size: var(--fs-12);
  border-top: 1px solid var(--border-0); padding-top: var(--space-3);
}
.signoff-mock__foot strong { color: var(--fg-0); }

/* ---------- When-to-bring-us ---------- */
.signoff-when { background: var(--bg-1); border-block: 1px solid var(--border-0); }
.when-grid {
  display: grid; gap: var(--space-4);
  grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 1100px) { .when-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 540px)  { .when-grid { grid-template-columns: 1fr; } }
.when__icon {
  font-family: var(--font-display); font-size: 32px; line-height: 1;
  color: var(--accent); margin-bottom: var(--space-3);
}
.when h3 { margin: 0 0 var(--space-2); font-size: var(--fs-18); }
.when p { color: var(--fg-1); margin: 0; font-size: var(--fs-14); }

/* ---------- Case detail ---------- */
.case-detail {
  display: grid; gap: var(--space-7);
  grid-template-columns: 1.5fr 1fr;
  align-items: start;
}
@media (max-width: 1000px) { .case-detail { grid-template-columns: 1fr; } }
.case-detail h3 { margin: var(--space-5) 0 var(--space-2); font-size: var(--fs-18); color: var(--fg-0); }
.case-detail h3:first-child { margin-top: 0; }
.case-detail p { color: var(--fg-1); margin: 0 0 var(--space-3); }
.case-detail__list { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--space-2); color: var(--fg-1); font-size: var(--fs-14); }
.case-detail__list li::before { content: "▸ "; color: var(--accent-2); margin-right: 4px; }
.case-detail__list li sub { font-size: 0.75em; }

.case-detail__stats {
  background: var(--bg-1); border: 1px solid var(--border-0);
  border-radius: var(--r-3); padding: var(--space-5);
  display: grid; gap: var(--space-4);
  position: sticky; top: 96px;
}
.case-detail__stats > div {
  display: flex; justify-content: space-between; align-items: baseline;
  padding-bottom: var(--space-3); border-bottom: 1px solid var(--border-0);
}
.case-detail__stats > div:last-child { border-bottom: none; padding-bottom: 0; }
.case-detail__stats .mono {
  font-size: var(--fs-28); font-weight: 700;
  background: var(--grad-trace);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.case-detail__stats span:last-child { color: var(--fg-2); font-size: var(--fs-14); }
