body { padding-top: 0 !important; background: #f8fafc; }
.sp-wrap { max-width: 680px; margin: 0 auto; padding: 8px 16px 48px; }
.sp-back { font-size: 13px; margin: 0 0 1rem; }
.sp-back a { color: #0a66c2; font-weight: 700; text-decoration: none; }
.sp-wrap h1 { font-size: 1.5rem; font-weight: 800; margin: 0 0 .35rem; color: #0f172a; }
.sp-lede { color: #64748b; margin: 0 0 1.1rem; font-size: 14.5px; line-height: 1.5; }
.sp-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 1.2rem; }
.sp-card label { display: block; font-size: 12px; font-weight: 700; color: #334155; margin: .75rem 0 .3rem; }
.sp-card input, .sp-card select, .sp-card textarea {
  width: 100%; box-sizing: border-box; padding: .5rem .65rem;
  border: 1px solid #cbd5e1; border-radius: 8px; font: inherit; font-size: 14px;
}
.sp-card textarea { min-height: 88px; resize: vertical; }
.sp-row { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; }
@media (max-width: 640px) { .sp-row { grid-template-columns: 1fr; } }
.sp-actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.sp-btn {
  display: inline-flex; padding: .55rem 1rem; border-radius: 8px; font-weight: 700; font-size: 13.5px;
  text-decoration: none; border: none; cursor: pointer; font-family: inherit;
}
.sp-btn.primary { background: #0a66c2; color: #fff; }
.sp-btn.ghost { background: #f1f5f9; color: #0f172a; }
.sp-status { margin-top: .7rem; font-size: 13px; color: #166534; min-height: 1.2em; }
.sp-status.err { color: #b91c1c; }
.sp-account { font-size: 13px; color: #475569; margin: 0 0 1rem; }
