:root{
  --primary:#1E3A8A; /* Dark Blue */
  --accent:#22C55E;  /* Green */
  --secondary:#F5F6FA; /* Light Gray */
  --neutral:#94A3B8;  /* Medium Gray */
  --text:#111827;     /* Charcoal */
}

body.bg-body{
  background: var(--secondary);
  color: var(--text);
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
}

.app-title{
  font-family: Montserrat, Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  color: var(--primary);
  font-weight: 700;
}

.btn-primary{
  background: linear-gradient(180deg, #2a46aa 0%, var(--primary) 100%);
  border: none;
  border-radius: .75rem;
  color: #fff;
  font-weight: 600;
  letter-spacing: .2px;
  cursor: pointer;
  box-shadow: 0 6px 14px rgba(30,58,138,.25), inset 0 1px 0 rgba(255,255,255,.08);
  transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease;
}
.btn-lg{ padding-top: .9rem; padding-bottom: .9rem; }
.btn-primary:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 18px rgba(30,58,138,.32), inset 0 1px 0 rgba(255,255,255,.1);
  background: linear-gradient(180deg, #2d4db8 0%, #213d8f 100%);
}
.btn-primary:active{
  transform: translateY(0);
  box-shadow: 0 4px 10px rgba(30,58,138,.28), inset 0 2px 4px rgba(0,0,0,.12);
}
.btn-primary:focus-visible{
  outline: none;
  box-shadow: 0 0 0 4px rgba(30,58,138,.25), 0 10px 18px rgba(30,58,138,.28);
}
.btn-primary:disabled, .btn-primary[disabled]{
  opacity: .85;
  cursor: not-allowed;
  transform: none;
  box-shadow: 0 4px 10px rgba(30,58,138,.15);
}

.btn-success{
  background-color: var(--accent);
  border-color: var(--accent);
}

.card{
  border-radius: 1rem;
}

.form-select, .form-control{
  border-color: var(--neutral);
  border-radius: .6rem;
}

.alert{
  border-radius: .6rem;
}



/* Minimal stepper styles */
.b2p-steps-list{
  list-style:none;
  padding-left:0;
  margin:0;
  display:flex;
  gap:12px;
}
@media (min-width: 992px){
  .b2p-steps-list{flex-direction:column;gap:8px;position:sticky;top:16px}
}
.b2p-steps-list li a{display:flex;align-items:center;gap:10px;text-decoration:none;color:#394150}
.b2p-steps-list .num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#f1f5f9;border:1px solid #d0d7e2;font-weight:600;color:#1f2937}
.b2p-steps-list li.active .num{background:#1E3A8A;color:#fff;border-color:#1E3A8A}
.b2p-steps-list li .label{font-weight:600}

/* (removed chevron stepper) */

/* Inline numeric step badge */
.step-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:32px;
  padding:0 10px;
  border-radius:999px;
  background:#eef2ff;
  color:#1E3A8A;
  font-weight:800;
  font-size:.95rem;
  border:2px solid var(--primary);
}
.step-badge.gutter{ box-shadow: 0 2px 8px rgba(17,24,39,.08); }

/* (removed ImageMeter styles) */
