*{box-sizing:border-box}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;background:#0b0f14;color:#ecf0f1}
.container{max-width:490px;margin:40px auto;padding:24px;background:#121821;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
h1{margin-top:0;font-size:2rem}
p{color:#c8d0d8}
.grid{display:grid;grid-template-columns:1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
label{font-weight:600;color:#e5eaf0}
.req{color:#ff7b7b;margin-left:4px}
input{width:100%;padding:12px 14px;border:1px solid #273241;border-radius:10px;background:#0f141c;color:#e5eaf0;outline:none}
input:focus{border-color:#5aa9ff;box-shadow:0 0 0 2px rgba(90,169,255,.2)}
.btn{background:#5aa9ff;border:none;color:#0b0f14;font-weight:700;padding:12px 18px;border-radius:12px;cursor:pointer}
.btn:hover{filter:brightness(1.05)}
.alert{padding:12px 14px;border-radius:10px;margin:12px 0}
.alert.success{background:#0f2a17;color:#9ff1b5;border:1px solid #214d31}
.alert.error{background:#2a1010;color:#ffb0b0;border:1px solid #5a2323}
.fineprint{font-size:.86rem;color:#9aa6b2}
.honeypot{position:absolute;left:-9999px;visibility:hidden;height:0;width:0;overflow:hidden}
