:root {
  color-scheme: dark;
  --pr-bg: #0a0a0a;
  --pr-surface: #141414;
  --pr-field: #1c1c1e;
  --pr-text: #f5f5f7;
  --pr-muted: #8e8e93;
  --pr-line: rgba(255,255,255,0.12);
  --pr-line-strong: rgba(255,255,255,0.2);
  --pr-ok: #30d158;
  --pr-error: #ff6961;
  --pr-font: "Inter Tight", "Helvetica Neue", Arial, sans-serif;
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body { margin: 0; min-height: 100%; background: var(--pr-bg); }
body { color: var(--pr-text); font-family: var(--pr-font); -webkit-font-smoothing: antialiased; }
.pr-page {
  min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column;
  align-items: center; justify-content: center; gap: 26px; padding: 32px 18px;
  background:
    radial-gradient(900px 520px at 50% -10%, rgba(255,255,255,0.07), transparent 65%),
    var(--pr-bg);
}
.pr-brand { color: var(--pr-text); text-decoration: none; font-size: 24px; letter-spacing: -0.06em; }
.pr-brand .brand-wordmark { color: var(--pr-text); }
.pr-brand .brand-wordmark__rule { color: var(--pr-muted); }
.pr-brand .brand-wordmark__ai { color: var(--pr-muted); font-size: 11px; }
.pr-card {
  width: min(440px, 100%); padding: 30px 28px 26px; border-radius: 20px;
  border: 1px solid var(--pr-line); background: rgba(20,20,20,0.94);
  box-shadow: 0 28px 80px rgba(0,0,0,0.45);
}
.pr-eyebrow { margin: 0 0 8px; font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--pr-muted); }
.pr-card h1 { margin: 0 0 10px; font-size: clamp(28px, 5vw, 36px); line-height: 1.05; letter-spacing: -0.04em; font-weight: 500; }
.pr-copy { margin: 0 0 22px; color: var(--pr-muted); font-size: 14px; line-height: 1.5; }
.pr-form { display: grid; gap: 8px; }
.pr-form label { margin-top: 6px; font-size: 12px; color: var(--pr-muted); }
.pr-form input {
  width: 100%; min-height: 48px; padding: 12px 14px; border-radius: 12px;
  border: 1px solid var(--pr-line); background: var(--pr-field); color: var(--pr-text);
  font: inherit; font-size: 16px; outline: none;
}
.pr-form input:focus { border-color: var(--pr-line-strong); box-shadow: 0 0 0 3px rgba(255,255,255,0.06); }
.pr-btn {
  width: 100%; min-height: 48px; margin-top: 14px; border: 0; border-radius: 999px;
  background: #fff; color: #0a0a0a; font: inherit; font-size: 15px; font-weight: 600;
  cursor: pointer; transition: transform .15s ease, opacity .15s ease;
}
.pr-btn:hover:not(:disabled) { transform: translateY(-1px); }
.pr-btn:disabled { opacity: .55; cursor: default; }
.pr-status { margin: 14px 0 0; padding: 11px 13px; border-radius: 10px; font-size: 13px; line-height: 1.45; }
.pr-status--ok { color: #9fe6b5; background: rgba(48,209,88,0.1); border: 1px solid rgba(48,209,88,0.2); }
.pr-status--error { color: #ffb4c1; background: rgba(255,105,97,0.1); border: 1px solid rgba(255,105,97,0.22); }
.pr-back { display: block; width: fit-content; margin-top: 14px; color: var(--pr-muted); text-decoration: none; font-size: 13px; }
.pr-back:hover { color: var(--pr-text); }
@media (max-width: 420px) {
  .pr-card { padding: 24px 20px 22px; border-radius: 16px; }
}
