*{margin:0;padding:0;box-sizing:border-box;}
:root{--purple:#A855F7;--pink:#F472B6;--bg:#060E20;--surface:rgba(255,255,255,0.04);--border:rgba(168,85,247,0.2);--border2:rgba(255,255,255,0.08);--text:#F8FAFC;--text3:#94A3B8;--grad:linear-gradient(135deg,#A855F7,#F472B6);}
body{font-family:'Sora',sans-serif;background:var(--bg);color:var(--text);display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;overflow-x:hidden;}
.orb{position:fixed;border-radius:50%;filter:blur(90px);pointer-events:none;}
.orb1{width:600px;height:600px;background:rgba(168,85,247,0.15);top:-200px;left:-200px;}
.orb2{width:500px;height:500px;background:rgba(244,114,182,0.12);bottom:-150px;right:-150px;}
.wrap{width:100%;max-width:460px;z-index:1;}
.card{background:rgba(10,22,40,0.85);border:1px solid var(--border);border-radius:24px;padding:40px 36px;backdrop-filter:blur(20px);box-shadow:0 24px 80px rgba(0,0,0,0.5);}
h2{text-align:center;font-family:'Unbounded',sans-serif;font-size:1.4rem;margin-bottom:6px;}
.sub{text-align:center;color:var(--text3);font-size:13.5px;margin-bottom:26px;line-height:1.6;}
label{display:block;font-size:12px;font-weight:600;color:var(--text3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;}
input{width:100%;padding:13px 16px;background:rgba(255,255,255,0.05);border:1px solid var(--border2);border-radius:12px;color:var(--text);font-family:'Sora',sans-serif;font-size:14px;outline:none;}
input:focus{border-color:rgba(168,85,247,.6);box-shadow:0 0 0 3px rgba(168,85,247,.12);}
.btn{width:100%;padding:14px;border-radius:12px;border:none;background:var(--grad);color:white;font-family:'Sora',sans-serif;font-size:15px;font-weight:700;cursor:pointer;margin-top:18px;box-shadow:0 6px 24px rgba(168,85,247,.4);}
.msg-ok{background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.3);border-radius:10px;padding:11px 16px;color:#34D399;font-size:13px;margin-bottom:18px;}
.msg-err{background:rgba(248,113,113,.1);border:1px solid rgba(248,113,113,.3);border-radius:10px;padding:11px 16px;color:#F87171;font-size:13px;margin-bottom:18px;}
.link-row{text-align:center;font-size:13px;color:var(--text3);margin-top:20px;}
.link-row a{color:var(--purple);font-weight:600;text-decoration:none;}
