.budget-paper {
  position: relative;
  max-width: 820px;
  margin: 0 auto;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 8px;
  box-shadow: var(--shadow-4);
  padding: 34px 30px;
  transform: rotate(-0.4deg);
}

.budget-paper::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 30px;
  width: 74px;
  height: 18px;
  background: rgba(56, 189, 248, 0.28);
  border-radius: 2px;
  transform: rotate(-2deg);
}

.budget-head p { font-size: 16px; margin-top: 6px; }

.budget-paper h2 { margin-top: 28px; font-size: 21px; }

.budget-figure {
  margin: 24px 0;
  max-width: 560px;
}

.budget-figure img {
  width: 100%;
  max-width: 500px;
  max-height: 320px;
  height: auto;
  object-fit: cover;
  border-radius: 6px;
  border: 1px solid var(--border);
  box-shadow: var(--shadow-2);
  display: block;
  transform: rotate(-1deg);
}

.budget-figure figcaption {
  font-size: 12px;
  color: var(--muted);
  margin-top: 8px;
}

.budget-paper .step-item { background: var(--bg); }

@media (max-width: 700px) {
  .budget-paper { transform: none; padding: 26px 20px; }
}
