
/* === STAGE 4 COMPLETION LAYER: Full executive UX completion === */
:root{
  --stage4-bg:#F7FAF4;
  --stage4-mint:#ECFFF6;
  --stage4-card:#FFFFFF;
  --stage4-ink:#10211B;
  --stage4-muted:#64766F;
  --stage4-em:#00B884;
  --stage4-em2:#5AF0CE;
  --stage4-gold:#C99A2E;
  --stage4-line:rgba(16,33,27,.10);
  --stage4-shadow:0 18px 46px rgba(7,17,15,.10);
}
.stage4-app-shell,
.stage4-report-shell{
  margin:20px auto;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:18px;
}
.stage4-panel{
  background:#fff;
  border:1px solid var(--stage4-line);
  border-radius:30px;
  padding:26px;
  box-shadow:var(--stage4-shadow);
  color:var(--stage4-ink);
}
.stage4-panel.dark{
  background:linear-gradient(145deg,#07110F,#123024);
  color:#fff;
  border:1px solid rgba(201,154,46,.26);
}
.stage4-panel h2,
.stage4-panel h3{
  margin:0 0 12px;
  font-family:Inter,Arial,sans-serif;
  letter-spacing:-.9px;
}
.stage4-panel p{
  color:var(--stage4-muted);
  line-height:1.6;
  margin:0;
}
.stage4-panel.dark p{color:#CFE4DC}
.stage4-icon-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.stage4-icon-card{
  background:#F8FFFB;
  border:1px solid var(--stage4-line);
  border-radius:22px;
  padding:16px;
}
.stage4-icon{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:16px;
  background:#EAFFF6;
  color:var(--stage4-em);
  font-weight:950;
  margin-bottom:10px;
}
.stage4-icon-card b{display:block;color:var(--stage4-ink);margin-bottom:4px}
.stage4-icon-card span{color:var(--stage4-muted);font-size:13px;line-height:1.35}
.stage4-flow{
  margin-top:18px;
  display:grid;
  gap:10px;
}
.stage4-flow div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:12px;
  border-radius:16px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}
.stage4-report-score{
  display:grid;
  place-items:center;
  width:150px;height:150px;
  border-radius:50%;
  margin:10px auto 18px;
  background:#FFF8E3;
  border:5px solid var(--stage4-gold);
  color:var(--stage4-ink);
  font-size:42px;
  font-weight:950;
}
.stage4-risk-bars{
  display:grid;
  gap:12px;
  margin-top:18px;
}
.stage4-risk-bar{
  background:#F8FFFB;
  border:1px solid var(--stage4-line);
  border-radius:18px;
  padding:14px;
}
.stage4-risk-top{
  display:flex;
  justify-content:space-between;
  font-weight:900;
  color:var(--stage4-ink);
}
.stage4-track{
  height:10px;
  border-radius:999px;
  background:#E6F4EF;
  overflow:hidden;
  margin-top:9px;
}
.stage4-track i{
  display:block;
  height:100%;
  background:linear-gradient(90deg,var(--stage4-em),var(--stage4-gold));
}
.stage4-cta-band{
  margin:20px auto;
  background:linear-gradient(135deg,#fff,#F3FFF9,#FFF8E3);
  border:1px solid rgba(0,184,132,.16);
  border-radius:30px;
  padding:26px;
  box-shadow:var(--stage4-shadow);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.stage4-cta-band h3{margin:0;color:var(--stage4-ink);font-size:26px;letter-spacing:-.8px}
.stage4-cta-band p{margin:6px 0 0;color:var(--stage4-muted);line-height:1.5}
@media(max-width:980px){
  .stage4-app-shell,
  .stage4-report-shell{
    grid-template-columns:1fr;
    gap:12px;
  }
  .stage4-panel,
  .stage4-cta-band{
    border-radius:24px;
    padding:18px;
  }
  .stage4-icon-grid{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .stage4-cta-band{
    display:grid;
  }
  .stage4-cta-band h3{font-size:22px}
}
@media(max-width:420px){
  .stage4-icon-grid{grid-template-columns:1fr}
  .stage4-report-score{width:124px;height:124px;font-size:34px}
}
