/* HYBRI8 Recovery V2 — module-local premium calm. */
.recovery-v2-screen{
  --recovery-panel:rgba(10,24,31,.78);
  --recovery-line:rgba(255,255,255,.10);
  --recovery-muted:rgba(231,241,245,.70);
  --recovery-accent:#e7b98f;
  padding-bottom:calc(112px + env(safe-area-inset-bottom));
}
.recovery-v2-screen .hero{
  position:relative;
  overflow:hidden;
  border:1px solid var(--recovery-line);
  border-radius:28px;
  background:linear-gradient(150deg,rgba(21,45,51,.92),rgba(8,18,24,.96));
  box-shadow:0 24px 70px rgba(0,0,0,.22);
}
.recovery-v2-screen .hero::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-64px;
  top:-72px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(231,185,143,.16),rgba(231,185,143,0) 70%);
  pointer-events:none;
}
.recovery-v2-screen #summary .card,
.recovery-v2-screen #next-action .card,
.recovery-v2-screen .recovery-panel{
  border-color:var(--recovery-line);
  background:var(--recovery-panel);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.recovery-v2-screen #summary .card small{
  display:block;
  margin-top:10px;
  color:var(--recovery-muted);
  line-height:1.45;
}
.recovery-v2-screen #trends{
  margin-top:14px;
  gap:12px;
}
.recovery-v2-screen #trends .item{
  min-width:0;
  display:grid;
  gap:7px;
  align-content:start;
  padding:15px;
  border:1px solid var(--recovery-line);
  border-radius:18px;
  background:rgba(255,255,255,.035);
}
.recovery-v2-screen #trends .trend-empty{
  grid-column:1/-1;
  padding:18px;
}
.recovery-v2-screen .trend-evidence{
  justify-self:start;
  font-size:.74rem;
  letter-spacing:.02em;
}
.recovery-v2-screen .trend-evidence.good{border-color:rgba(231,185,143,.35)}
.recovery-v2-screen .trend-evidence.medium{opacity:.86}
.recovery-v2-screen .trend-evidence.low,
.recovery-v2-screen .trend-evidence.empty{opacity:.68}
.recovery-v2-screen .data-note{
  padding:9px 11px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.035);
}
.recovery-v2-screen #next-action .card{
  border-color:rgba(231,185,143,.24);
}
.recovery-v2-screen .next-recovery-card{
  display:grid;
  gap:10px;
}
.recovery-v2-screen .next-meta,
.recovery-v2-screen .completion-note{
  display:block;
  color:var(--recovery-muted);
  line-height:1.45;
}
.recovery-v2-screen .next-meta{
  width:max-content;
  max-width:100%;
  padding:7px 10px;
  border:1px solid rgba(231,185,143,.18);
  border-radius:999px;
  background:rgba(231,185,143,.06);
}
.recovery-v2-screen #next-action .btn,
.recovery-v2-screen .recovery-actions .btn{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  touch-action:manipulation;
}
.recovery-v2-screen .recovery-choices{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.recovery-v2-screen .recovery-choice{
  min-width:0;
  min-height:112px;
  display:grid;
  align-content:start;
  gap:6px;
  padding:15px;
  border:1px solid var(--recovery-line);
  border-radius:18px;
  background:rgba(255,255,255,.035);
  color:inherit;
  text-decoration:none;
  touch-action:manipulation;
}
.recovery-v2-screen .recovery-choice strong{
  font-size:1rem;
  line-height:1.25;
}
.recovery-v2-screen .recovery-choice span{
  color:var(--recovery-accent);
  font-size:.82rem;
  font-weight:700;
}
.recovery-v2-screen .recovery-choice small{
  color:var(--recovery-muted);
  line-height:1.45;
}
.recovery-v2-screen .recovery-choice:hover,
.recovery-v2-screen .recovery-choice:focus-visible{
  border-color:rgba(231,185,143,.34);
  background:rgba(231,185,143,.06);
}
.recovery-v2-screen .recovery-choice:focus-visible{
  outline:2px solid var(--recovery-accent);
  outline-offset:3px;
}
.recovery-v2-screen[aria-busy="true"] #summary,
.recovery-v2-screen[aria-busy="true"] #trends,
.recovery-v2-screen[aria-busy="true"] #next-action{
  opacity:.72;
}
@media(max-width:760px){
  .recovery-v2-screen .recovery-choices{grid-template-columns:1fr}
  .recovery-v2-screen .recovery-choice{min-height:44px}
}
@media(max-width:640px){
  .recovery-v2-screen .grid.two{grid-template-columns:1fr}
  .recovery-v2-screen .hero{border-radius:22px}
  .recovery-v2-screen .recovery-actions{display:grid;grid-template-columns:1fr}
  .recovery-v2-screen .recovery-actions .btn{width:100%}
  .recovery-v2-screen #next-action .btn{width:100%}
}
@media(max-width:380px){
  .recovery-v2-screen #trends .item{padding:13px}
  .recovery-v2-screen .hero h1{font-size:clamp(2rem,12vw,3.2rem)}
  .recovery-v2-screen .recovery-choice{padding:13px}
}
@media(prefers-reduced-motion:reduce){
  .recovery-v2-screen *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
@media(prefers-contrast:more){
  .recovery-v2-screen #trends .item,
  .recovery-v2-screen #summary .card,
  .recovery-v2-screen #next-action .card,
  .recovery-v2-screen .recovery-choice{border-color:rgba(255,255,255,.34)}
}


/* RECOVERY DESKTOP WORKSPACE X4 — calm two-column signal + action layout, mobile flow untouched */
@media(min-width:1180px){
  .recovery-v2-screen{
    display:grid;
    grid-template-columns:minmax(0,1.22fr) minmax(360px,.78fr);
    gap:18px;
    align-items:start;
  }
  .recovery-v2-screen>.top,
  .recovery-v2-screen>.hero{
    grid-column:1/-1;
  }
  .recovery-v2-screen>#summary{
    grid-column:1;
    margin-top:0;
    align-self:stretch;
  }
  .recovery-v2-screen>section[aria-labelledby="readiness-trend-title"]{
    grid-column:2;
    margin-top:0!important;
    align-self:stretch;
  }
  .recovery-v2-screen>#next-action{
    grid-column:1;
    margin-top:0!important;
  }
  .recovery-v2-screen>section[aria-labelledby="recovery-options-title"]{
    grid-column:2;
    margin-top:0!important;
  }
  .recovery-v2-screen>section[aria-labelledby="recovery-lab-title"]{
    grid-column:1/-1;
    margin-top:0!important;
  }
  .recovery-v2-screen #summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .recovery-v2-screen #summary .card{
    min-height:100%;
  }
  .recovery-v2-screen .recovery-choices{
    grid-template-columns:1fr;
  }
  .recovery-v2-screen .recovery-choice{
    min-height:92px;
  }
  .recovery-v2-screen #trends{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
