
.recovery-hero {
  background:
    linear-gradient(120deg, rgba(247,251,254,.99), rgba(234,246,255,.96) 52%, rgba(255,243,229,.98));
}
.recovery-hero .sdm-hero__grid { min-height: 42rem; }

.recovery-layout {
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(22rem,.85fr);
  gap:2rem;
  align-items:start;
}

.recovery-shell {
  overflow:hidden;
  border:1px solid var(--sdm-gray-300);
  border-radius:var(--sdm-radius-xl);
  background:#fff;
  box-shadow:var(--sdm-shadow-md);
}

.recovery-shell__header {
  padding:1rem 1.25rem;
  background:linear-gradient(135deg,var(--sdm-navy-900),var(--sdm-navy-700));
  color:#fff;
}

.recovery-shell__header strong { display:block; }
.recovery-shell__header span { color:#b9dff4; font-size:.8rem; }

.recovery-tabs {
  display:flex;
  gap:.35rem;
  overflow-x:auto;
  padding:.75rem;
  border-bottom:1px solid var(--sdm-gray-300);
  background:var(--sdm-gray-050);
}

.recovery-tab {
  flex:0 0 auto;
  padding:.65rem .8rem;
  border:1px solid var(--sdm-gray-300);
  border-radius:999px;
  background:#fff;
  color:var(--sdm-navy-800);
  font:inherit;
  font-weight:850;
  cursor:pointer;
}

.recovery-tab.is-active {
  border-color:var(--sdm-blue-600);
  background:var(--sdm-blue-100);
  color:var(--sdm-blue-700);
}

.recovery-body {
  min-height:42rem;
  padding:1.25rem;
}

.recovery-section {
  display:grid;
  gap:1rem;
}

.recovery-section[hidden] { display:none; }

.recovery-section h2 {
  margin:0;
  color:var(--sdm-navy-800);
}

.recovery-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}

.recovery-field {
  display:grid;
  gap:.35rem;
}

.recovery-field label {
  color:var(--sdm-navy-800);
  font-weight:850;
}

.recovery-field input,
.recovery-field select,
.recovery-field textarea {
  width:100%;
  min-height:3rem;
  padding:.75rem .85rem;
  border:1px solid var(--sdm-gray-300);
  border-radius:var(--sdm-radius-md);
  background:#fff;
  color:var(--sdm-navy-800);
  font:inherit;
}

.recovery-field textarea {
  min-height:7rem;
  resize:vertical;
}

.recovery-field--full {
  grid-column:1 / -1;
}

.recovery-classification {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.75rem;
}

.recovery-classification__item {
  padding:.9rem;
  border:1px solid var(--sdm-gray-300);
  border-radius:var(--sdm-radius-md);
  background:var(--sdm-gray-050);
}

.recovery-classification__item strong {
  display:block;
  margin-bottom:.3rem;
  color:var(--sdm-navy-800);
}

.recovery-label {
  display:inline-flex;
  margin-bottom:.45rem;
  padding:.3rem .55rem;
  border-radius:999px;
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.recovery-label--reported { background:var(--sdm-blue-100); color:var(--sdm-blue-700); }
.recovery-label--inferred { background:var(--sdm-orange-100); color:#7a4a18; }
.recovery-label--unknown { background:var(--sdm-gray-200); color:var(--sdm-gray-700); }

.recovery-timeline {
  display:grid;
  gap:.75rem;
}

.recovery-timeline__row {
  display:grid;
  grid-template-columns:9rem minmax(0,1fr) auto;
  gap:.75rem;
  align-items:start;
  padding:.85rem;
  border:1px solid var(--sdm-gray-300);
  border-radius:var(--sdm-radius-md);
  background:#fff;
}

.recovery-timeline__row input,
.recovery-timeline__row textarea {
  width:100%;
  padding:.65rem;
  border:1px solid var(--sdm-gray-300);
  border-radius:.5rem;
  font:inherit;
}

.recovery-timeline__row textarea { min-height:4.5rem; }

.recovery-remove {
  border:0;
  background:transparent;
  color:#9b1c1c;
  font:inherit;
  font-weight:850;
  cursor:pointer;
}

.recovery-actions {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.65rem;
  margin-top:1rem;
}

.recovery-sidebar {
  position:sticky;
  top:calc(var(--sdm-header-height) + 1.5rem);
  display:grid;
  gap:1rem;
}

.recovery-status {
  padding:.9rem 1rem;
  border-radius:var(--sdm-radius-md);
  background:var(--sdm-blue-100);
  color:var(--sdm-blue-700);
  font-weight:750;
}

.recovery-status[hidden] { display:none; }

.recovery-summary {
  display:grid;
  gap:1rem;
}

.recovery-summary__card {
  padding:1rem;
  border:1px solid var(--sdm-gray-300);
  border-radius:var(--sdm-radius-md);
  background:var(--sdm-gray-050);
}

.recovery-summary__card h3 {
  margin:0 0 .5rem;
  color:var(--sdm-navy-800);
}

.recovery-output-select {
  display:grid;
  gap:.65rem;
}

.recovery-output-select button {
  width:100%;
  text-align:left;
}

.recovery-danger {
  border:1px solid #efb3b3;
  background:#fff6f6;
}

.recovery-privacy {
  display:grid;
  gap:.7rem;
  margin-top:.9rem;
}

.recovery-privacy div {
  padding:.8rem;
  border:1px solid var(--sdm-gray-300);
  border-radius:var(--sdm-radius-md);
  background:#fff;
}

.recovery-print-report { display:none; }

@media(max-width:68rem){
  .recovery-layout{grid-template-columns:1fr}
  .recovery-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:47.5rem){
  .recovery-grid,.recovery-classification,.recovery-actions,.recovery-sidebar{grid-template-columns:1fr}
  .recovery-timeline__row{grid-template-columns:1fr}
}

@media print {
  body.is-printing-recovery-notebook > *:not(.recovery-print-report) {
    display:none !important;
  }

  body.is-printing-recovery-notebook .recovery-print-report {
    display:block !important;
    width:100% !important;
    color:#10263d !important;
    background:#fff !important;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
  }

  .recovery-print-report h1 {
    margin:0 0 .15in !important;
    padding-bottom:.12in !important;
    border-bottom:3px solid #f28c28 !important;
    font-size:24pt !important;
  }

  .recovery-print-report h2 {
    margin:.18in 0 .08in !important;
    font-size:14pt !important;
  }

  .recovery-print-report section {
    break-inside:avoid !important;
    page-break-inside:avoid !important;
    margin-bottom:.15in !important;
    padding:.12in !important;
    border:1px solid #cbd5df !important;
    border-radius:.05in !important;
  }

  .recovery-print-report dl {
    display:grid !important;
    grid-template-columns:2.1in minmax(0,1fr) !important;
    gap:.05in .12in !important;
  }

  .recovery-print-report dt { font-weight:850 !important; }
  .recovery-print-report dd { margin:0 !important; overflow-wrap:anywhere !important; }
}
