*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --bg: #1f2230; --surface: #282c3f; --surface2: #353a52; --border: #454b68;
  --text: #f5f6fa; --muted: #9298b3; --accent: #f7931a; --danger: #ef4444;
  --success: #22c55e; --radius: 12px; --radius-sm: 8px;
}
html, body { height: 100%; }
body {
  background: var(--bg); color: var(--text);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 15px; line-height: 1.6;
}
.wrap { max-width: 480px; margin: 0 auto; padding: 24px 16px 60px; }
.topbar { display: flex; align-items: center; gap: 8px; padding: 14px 16px; border-bottom: 1px solid var(--border); }
.topbar img { height: 28px; width: 28px; border-radius: 6px; }
.topbar span { font-size: 17px; font-weight: 800; }

h1 { font-size: 22px; font-weight: 800; margin-bottom: 6px; }
.subtitle { color: var(--muted); font-size: 14px; margin-bottom: 24px; }

.form-group { margin-bottom: 16px; }
.form-group label { display: block; font-size: 13px; color: var(--muted); margin-bottom: 6px; }
.form-group input, .form-group textarea {
  width: 100%; background: var(--surface2); border: 1px solid var(--border);
  border-radius: var(--radius-sm); color: var(--text); padding: 11px 12px;
  font-size: 15px; outline: none;
}
.form-group textarea { resize: vertical; min-height: 110px; }
.form-group input:focus, .form-group textarea:focus { border-color: var(--accent); }

/* Honeypot — invisible to real users, catches bots that fill every field */
.fmd-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.btn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 100%; padding: 13px; border: none; border-radius: var(--radius-sm);
  background: var(--accent); color: #1f2230; font-size: 15px; font-weight: 700;
  cursor: pointer; margin-top: 8px;
}
.btn:disabled { opacity: .5; cursor: not-allowed; }
.error-msg { color: var(--danger); font-size: 13px; margin-top: 8px; }

.success-box { text-align: center; padding: 40px 16px; }
.success-box .icon { font-size: 44px; margin-bottom: 12px; }
.success-box h2 { font-size: 19px; font-weight: 700; margin-bottom: 8px; }
.success-box p { color: var(--muted); font-size: 14px; line-height: 1.6; }
