:root{
  --navy:#061826;
  --navy2:#082033;
  --blue:#2563EB;
  --sky:#38BDF8;
  --violet:#7C3AED;
  --mint:#34D399;
  --ice:#F6FBFF;
  --line:rgba(8,32,51,.12);
  --text:#102033;
  --muted:#607086;
  --amber:#F59E0B;
  --red:#DC2626;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,Segoe UI,system-ui,sans-serif;
  background:
    radial-gradient(circle at 12% 8%,rgba(56,189,248,.24),transparent 30%),
    radial-gradient(circle at 86% 6%,rgba(124,58,237,.20),transparent 30%),
    linear-gradient(180deg,var(--ice),#fff 70%);
  color:var(--text);
}
.shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:38px 0 56px}
.hero{
  display:grid;
  grid-template-columns:1.6fr .8fr;
  gap:22px;
  align-items:stretch;
  padding:28px 0;
}
.eyebrow{
  margin:0 0 10px;
  color:var(--blue);
  font-weight:750;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:12px;
}
h1{
  font-size:clamp(34px,6vw,68px);
  line-height:.95;
  letter-spacing:-.045em;
  margin:0;
  color:var(--navy);
}
.lead{font-size:clamp(17px,2.2vw,22px);line-height:1.42;color:var(--muted);max-width:760px}
.statusCard,.card,.boundary{
  background:rgba(255,255,255,.78);
  border:1px solid var(--line);
  box-shadow:0 22px 60px rgba(8,32,51,.08);
  backdrop-filter:blur(18px);
  border-radius:28px;
}
.statusCard{padding:24px;display:flex;flex-direction:column;justify-content:space-between;min-height:210px}
.statusCard strong{font-size:28px;letter-spacing:-.03em;color:var(--navy)}
.statusCard small{color:var(--muted)}
.pill{
  align-self:flex-start;
  padding:8px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  background:rgba(37,99,235,.1);
  color:var(--blue);
}
.pill.passed{background:rgba(52,211,153,.13);color:#087a52}
.pill.review{background:rgba(245,158,11,.14);color:#955d00}
.pill.approval_required{background:rgba(245,158,11,.2);color:#8a4d00}
.pill.blocked{background:rgba(220,38,38,.12);color:var(--red)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}
.topGrid{margin-top:6px}
.card{padding:22px}
.card h2{margin:0 0 16px;font-size:20px;letter-spacing:-.02em;color:var(--navy)}
.checks{padding:0;margin:0;list-style:none;display:grid;gap:10px;color:#26364a}
.matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.item,.row,.action{
  border:1px solid var(--line);
  background:rgba(246,251,255,.74);
  border-radius:18px;
  padding:13px;
}
.item{display:flex;justify-content:space-between;gap:12px;align-items:center}
.rows,.actions{display:grid;gap:10px}
.row{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.row strong,.action strong{color:var(--navy)}
.row small,.action p{color:var(--muted);margin:4px 0 0;line-height:1.35}
.boundary{margin-top:18px;padding:18px 20px;color:#526173;line-height:1.45}
@media(max-width:820px){
  .hero,.grid{grid-template-columns:1fr}
  .statusCard{min-height:auto}
  .matrix{grid-template-columns:1fr}
}

.decisionStrip,.commandPanel{
  margin-top:18px;
  padding:18px 20px;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(246,251,255,.72));
  box-shadow:0 18px 50px rgba(8,32,51,.07);
}
.decisionStrip{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
}
.decisionStrip span{
  display:block;
  color:var(--amber);
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:4px;
}
.decisionStrip strong{
  color:var(--navy);
  font-size:20px;
  letter-spacing:-.02em;
}
.decisionStrip small{color:var(--muted);text-align:right}
.commandPanel{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:18px;
  align-items:center;
}
.commandPanel h2{margin:0 0 6px;color:var(--navy);letter-spacing:-.02em}
.commandPanel p{margin:0;color:var(--muted);line-height:1.4}
.cmdGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cmdGrid button{
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  padding:12px 14px;
  font-weight:800;
  color:var(--navy);
  cursor:pointer;
}
.cmdGrid button:hover{border-color:rgba(37,99,235,.35);box-shadow:0 10px 24px rgba(37,99,235,.08)}
.row div{display:grid;gap:4px}
.row small{display:block}
@media(max-width:820px){
  .decisionStrip,.commandPanel{grid-template-columns:1fr;display:grid}
  .decisionStrip small{text-align:left}
  .cmdGrid{grid-template-columns:1fr}
}

.growthPanel{
  margin-top:18px;
  padding:22px;
  border:1px solid var(--line);
  border-radius:28px;
  background:rgba(255,255,255,.80);
  box-shadow:0 22px 60px rgba(8,32,51,.08);
  backdrop-filter:blur(18px);
}
.growthHeader{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  margin-bottom:16px;
}
.growthHeader h2{
  margin:0;
  font-size:26px;
  color:var(--navy);
  letter-spacing:-.03em;
}
.growthHeader p{
  margin:8px 0 0;
  color:var(--muted);
  line-height:1.42;
}
.growthGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.growthGrid article{
  border:1px solid var(--line);
  background:rgba(246,251,255,.74);
  border-radius:20px;
  padding:16px;
}
.growthGrid h3{
  margin:0 0 10px;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.07em;
  color:var(--blue);
}
.growthGrid strong{
  display:block;
  color:var(--navy);
  letter-spacing:-.02em;
  line-height:1.25;
}
.growthGrid p{
  margin:8px 0 0;
  color:var(--muted);
  line-height:1.4;
}
.miniMetrics{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.metric{
  border:1px solid var(--line);
  border-radius:14px;
  padding:10px;
  background:#fff;
}
.metric b{
  display:block;
  color:var(--navy);
  font-size:20px;
}
.metric span{
  color:var(--muted);
  font-size:12px;
}
@media(max-width:820px){
  .growthHeader,.growthGrid{grid-template-columns:1fr;display:grid}
  .growthGrid{grid-template-columns:1fr}
}
