:root {
  --campaign-card-border: rgba(71, 55, 39, 0.14);
  --campaign-text: #000;
  --campaign-muted: #000;
  --campaign-accent: #8f4c1f;
}

.campaign-page {
  width: 100%;
  margin: var(--page-margin-desktop);
  padding-bottom: 72px;
}

.campaign-card {
  max-width: 760px;
  margin: 0 auto;
  padding: 32px;
  border: 1px solid var(--campaign-card-border);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 18px 42px rgba(52, 34, 21, 0.11);
}

.page-actions { display: flex; justify-content: flex-end; margin-bottom: 22px; }
.dashboard-back-link { color: var(--campaign-accent); font-size: 14px; font-weight: 600; text-decoration: none; border-bottom: 1px solid rgba(143, 76, 31, 0.45); }
.eyebrow { margin: 0 0 10px; color: var(--campaign-accent); font-size: 12px; font-weight: 700; letter-spacing: .14em; }
.campaign-card h1 { margin: 0; color: var(--campaign-text); font-size: clamp(26px, 4vw, 36px); }
.campaign-lead { margin: 16px 0 26px; color: var(--campaign-muted); line-height: 1.8; }
.campaign-form label { display: block; margin-bottom: 8px; color: var(--campaign-text); font-weight: 700; }
.campaign-input-row { display: flex; gap: 12px; }
.campaign-input-row input { min-width: 0; flex: 1; padding: 13px 14px; border: 1px solid rgba(71, 55, 39, .24); border-radius: 12px; font-size: 16px; letter-spacing: .04em; text-transform: uppercase; }
.campaign-input-row input:focus { outline: 2px solid rgba(196, 107, 43, .35); border-color: var(--campaign-accent); }
.campaign-input-row button { flex: 0 0 auto; min-width: 116px; }
.campaign-result { margin-top: 20px; padding: 15px 17px; border: 1px solid transparent; border-radius: 14px; line-height: 1.7; }
.campaign-result.is-success { color: #1d6844; background: #ecf8f0; border-color: rgba(47, 125, 87, .35); }
.campaign-result.is-error { color: #8a2f18; background: #fff0ef; border-color: rgba(185, 73, 73, .36); }
.campaign-note { margin: 20px 0 0; color: var(--campaign-muted); font-size: 13px; line-height: 1.65; }

@media (max-width: 640px) {
  .campaign-page { margin: var(--page-margin-mobile); padding-bottom: 96px; }
  .campaign-card { padding: 22px 18px; border-radius: 18px; }
  .campaign-input-row { flex-direction: column; }
  .campaign-input-row button { width: 100%; }
}
