/* WEG Wizard – Layout & A11y */
.progress{flex:1;height:8px;background:#eef1f7;border-radius:999px;overflow:hidden}
.progress .bar{height:100%;background:linear-gradient(90deg,var(--primary),var(--accent))}

.wizard{max-width:980px;margin:auto}
.steps{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;list-style:none;margin:0 0 14px 0;padding:0}
.step{display:flex;align-items:center;gap:8px;justify-content:center;background:#f8fafc;border:1px solid #e6e9f2;border-radius:12px;padding:10px;font-weight:700;color:#334155;user-select:none}
.step span{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e8ecf7;color:#0f172a;font-weight:800}
.step.active{background:#fff;border-color:#d7dcef;box-shadow:0 2px 12px rgba(34,50,88,.08)}
.step[aria-selected="true"]{outline:3px solid #0EA5E9;outline-offset:2px;}

.wizard-mobile-nav{display:none;margin:0 0 14px 0;position:relative;z-index:4}
.wizard-mobile-nav[hidden]{display:none !important}
.wizard-mobile-nav__toggle{
  width:100%;
  border:1px solid #c7d8f6;
  border-radius:14px;
  background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);
  padding:10px 12px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:
    "meta chev"
    "title chev";
  gap:2px 10px;
  text-align:left;
  color:#0f2f65;
  box-shadow:0 8px 18px rgba(37,99,235,.12);
}
.wizard-mobile-nav__meta{
  grid-area:meta;
  font-size:.72rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#4a6691;
  font-weight:800;
}
.wizard-mobile-nav__title{
  grid-area:title;
  font-size:1.01rem;
  font-weight:900;
  line-height:1.2;
}
.wizard-mobile-nav__chevron{
  grid-area:chev;
  align-self:center;
  justify-self:end;
  width:26px;
  height:26px;
  border-radius:999px;
  border:1px solid #bfd7ff;
  background:#fff;
  display:grid;
  place-items:center;
  color:#1d4ed8;
  font-size:.9rem;
  transition:transform .18s ease;
}
.wizard-mobile-nav.is-open .wizard-mobile-nav__chevron{
  transform:rotate(180deg);
}
.wizard-mobile-nav__list{
  list-style:none;
  margin:8px 0 0;
  padding:8px;
  border:1px solid #c7d8f6;
  border-radius:14px;
  background:#fff;
  box-shadow:0 14px 32px rgba(15,23,42,.12);
  display:grid;
  gap:6px;
  max-height:min(56vh,370px);
  overflow:auto;
}
.wizard-mobile-nav__list li{margin:0;padding:0}
.wizard-mobile-nav__item{
  width:100%;
  border:1px solid #d7e5fb;
  border-radius:11px;
  background:#f8fbff;
  color:#143a72;
  display:flex;
  align-items:center;
  gap:10px;
  text-align:left;
  padding:9px 10px;
  font:inherit;
  font-size:.9rem;
  font-weight:700;
  line-height:1.3;
}
.wizard-mobile-nav__item-index{
  flex:0 0 auto;
  width:24px;
  height:24px;
  border-radius:999px;
  border:1px solid #c9dcfb;
  background:#eef5ff;
  display:grid;
  place-items:center;
  color:#1d4ed8;
  font-size:.76rem;
  font-weight:800;
}
.wizard-mobile-nav__item.is-complete{
  border-color:#bbf7d0;
  background:#f0fdf4;
  color:#166534;
}
.wizard-mobile-nav__item.is-complete .wizard-mobile-nav__item-index{
  border-color:#86efac;
  background:#dcfce7;
  color:#166534;
}
.wizard-mobile-nav__item.is-active{
  border-color:#60a5fa;
  background:#eff6ff;
  box-shadow:0 0 0 2px rgba(14,165,233,.18);
}
.wizard-mobile-nav__item.is-active .wizard-mobile-nav__item-index{
  border-color:#60a5fa;
  background:#dbeafe;
  color:#1d4ed8;
}

@media (max-width:900px){
  .guided-layout__form .wizard-mobile-nav{display:block}
  .guided-layout__form .wizard .steps{display:none}
}

.panel{background:#fff;border:1px solid #eef1f7;border-radius:16px;box-shadow:0 2px 12px rgba(34,50,88,.08);padding:16px;margin-bottom:12px}
.panel legend{font-weight:800;color:var(--primary);padding:0 6px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:760px){.grid2{grid-template-columns:1fr}}

.controls{display:flex;gap:10px;justify-content:flex-end;margin-top:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(90deg,var(--primary),var(--accent));color:#fff;border:none;border-radius:999px;padding:10px 16px;font-weight:800;box-shadow:0 10px 28px rgba(34,50,88,.18);cursor:pointer}
.prev{background:#fff;color:var(--primary);border:1px solid #e6e9f2;box-shadow:none}
.submit{display:none}
.submit[hidden]{display:none}

.card{background:#fff;border:1px solid #e6e9f2;border-radius:14px;padding:12px}
.review h3{margin:.2rem 0;color:#0f172a}
.review dl{display:grid;grid-template-columns:1fr 2fr;gap:8px;margin:0}
.review dt{font-weight:700;color:#334155}
.review dd{margin:0;color:#111827}
.review-summary-alert{margin-bottom:16px;padding:14px 16px;border:1px solid #fecaca;border-radius:16px;background:#fef2f2}
.review-summary-alert h3{margin:0 0 .35rem;color:#991b1b}
.review-summary-alert p{margin:0 0 .85rem;color:#7f1d1d}
.review-missing-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
.review-missing-list li{margin:0}
.review-jump{display:inline-flex;align-items:center;justify-content:center;border:1px solid #fca5a5;border-radius:999px;background:#fff;color:#991b1b;padding:8px 12px;font:inherit;font-weight:700;cursor:pointer}
.review-jump:hover,.review-jump:focus-visible{border-color:#ef4444;color:#7f1d1d;box-shadow:0 0 0 3px rgba(248,113,113,.18);outline:none}
.review-label-missing{color:#991b1b}
.review-missing-value{color:#b91c1c;font-weight:700}
.review-missing-link{padding:0;border:none;background:none;color:#b91c1c;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.review-missing-link:hover,.review-missing-link:focus-visible{color:#7f1d1d;outline:2px solid rgba(248,113,113,.28);outline-offset:4px;border-radius:8px}

.result{margin-top:10px;color:#2563eb}
.error{color:#b91c1c}
