:root{  --bg0:#05050a;  --bg2:#0b0830;  --ink:#f3f3f7;  --muted:rgba(243,243,247,.72);  --muted2:rgba(243,243,247,.52);  --accent:#ff2d55;  --accent2:#ff4f8b;  --glass:rgba(255,255,255,.08);  --glass2:rgba(255,255,255,.06);  --shadow: 0 18px 60px rgba(0,0,0,.55);  --radius2:26px;  --max:1100px;}*{ box-sizing:border-box; }html,body{ height:100%; }body{  margin:0;  color:var(--ink);  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";  background: linear-gradient(180deg, var(--bg0), var(--bg2));  overflow-x:hidden;}a{ color:inherit; text-decoration:none; }a:focus-visible, button:focus-visible, input:focus-visible{  outline:2px solid color-mix(in srgb, var(--accent) 70%, white 30%);  outline-offset:3px;  border-radius:12px;}/* Background */.bg{ position:fixed; inset:0; z-index:-1; pointer-events:none; }.bg__gradient{  position:absolute; inset:0;  background:    radial-gradient(900px 520px at 20% 12%, rgba(255,45,85,.20), transparent 55%),    radial-gradient(820px 520px at 85% 18%, rgba(255,79,139,.18), transparent 55%),    radial-gradient(900px 650px at 40% 95%, rgba(140,80,255,.14), transparent 60%),    linear-gradient(180deg, #05050a, #0b0830);  filter:saturate(1.08);}.bg__blob{  position:absolute;  width:520px; height:520px;  border-radius:50%;  filter: blur(42px);  opacity:.55;  mix-blend-mode: screen;  animation: float 12s ease-in-out infinite;}.bg__blob--a{  left:-180px; top:160px;  background: radial-gradient(circle at 30% 30%, rgba(255,45,85,.55), transparent 58%);}.bg__blob--b{  right:-220px; top:60px;  background: radial-gradient(circle at 35% 35%, rgba(255,79,139,.45), transparent 60%);  animation-duration: 16s;}@keyframes float{  0%,100%{ transform: translate(0,0) scale(1); }  50%{ transform: translate(18px,-16px) scale(1.03); }}.bg__grain{  position:absolute; inset:-30%;  background-image:    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");  opacity:.12;  transform: rotate(8deg);}.bg__vignette{  position:absolute; inset:0;  background: radial-gradient(closest-side at 50% 45%, transparent 65%, rgba(0,0,0,.55) 100%);  opacity:.9;}/* Topbar */.topbar{  width:min(var(--max), calc(100% - 48px));  margin: 18px auto 0;  display:flex;  align-items:center;  justify-content:space-between;  padding: 10px 2px;}.brand{ display:flex; align-items:center; gap:10px; }.brand__dot{  width:10px; height:10px; border-radius:50%;  background: linear-gradient(135deg, var(--accent), var(--accent2));  box-shadow: 0 0 0 6px rgba(255,45,85,.10), 0 0 24px rgba(255,79,139,.18);}.brand__text{ font-weight:650; letter-spacing:.2px; }.topbar__nav{ display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }.navlink{  font-size:14px;  color: var(--muted);  padding:8px 12px;  border-radius: 999px;  border:1px solid rgba(255,255,255,.10);  background: rgba(255,255,255,.04);}.navlink:hover{  color: var(--ink);  border-color: rgba(255,255,255,.16);  background: rgba(255,255,255,.06);}/* Card layout */.wrap{  min-height: calc(100vh - 84px);  display:grid;  place-items:center;  padding: 38px 24px 60px;}.glass{  background: linear-gradient(180deg, var(--glass), var(--glass2));  border: 1px solid rgba(255,255,255,.14);  border-top-color: rgba(255,255,255,.20);  border-left-color: rgba(255,255,255,.18);  border-radius: var(--radius2);  box-shadow: var(--shadow);  backdrop-filter: blur(14px);}.card{  width: min(520px, 100%);  padding: 22px;  position:relative;  overflow:hidden;}.card__glow{  position:absolute;  inset:-2px;  background:    radial-gradient(420px 240px at 18% 10%, rgba(255,45,85,.22), transparent 60%),    radial-gradient(380px 260px at 92% 26%, rgba(255,79,139,.16), transparent 65%);  opacity:.65;  pointer-events:none;}.card__head h1{  margin: 0 0 8px;  font-size: 26px;  letter-spacing: -.4px;}.card__head p{  margin: 0 0 18px;  color: var(--muted);  line-height: 1.5;  font-size: 14px;}.form{ display:grid; gap: 12px; }.field{ display:grid; gap: 8px; }.field__label{ font-size: 13px; color: var(--muted); }.field__help{ font-size: 12px; color: var(--muted2); }input{  width:100%;  padding: 12px 12px;  border-radius: 14px;  border: 1px solid rgba(255,255,255,.12);  background: rgba(0,0,0,.18);  color: var(--ink);  font-size: 14px;  transition: border-color .14s ease, box-shadow .14s ease, background .14s ease;}input::placeholder{ color: rgba(243,243,247,.38); }input:hover{  border-color: rgba(255,255,255,.16);  background: rgba(0,0,0,.22);}input:focus{  border-color: rgba(255,79,139,.38);  box-shadow: 0 0 0 6px rgba(255,45,85,.12);}.btn{  display:inline-flex;  align-items:center;  justify-content:center;  gap:10px;  padding: 12px 16px;  border-radius: 999px;  font-weight: 750;  letter-spacing: .2px;  border: 1px solid transparent;  transition: transform .14s ease, box-shadow .14s ease, opacity .14s ease;  user-select:none;  cursor:pointer;}.btn:hover{ transform: translateY(-1px); }.btn:active{ transform: translateY(0px); }.btn--primary{  background: linear-gradient(135deg, var(--accent), var(--accent2));  box-shadow: 0 18px 50px rgba(255,45,85,.18);  color: #0b0710;}.btn--primary:hover{ box-shadow: 0 18px 60px rgba(255,45,85,.25); }.btn[disabled]{ opacity:.72; cursor:not-allowed; }.btn__spinner{  width:14px; height:14px;  border-radius:50%;  border: 2px solid rgba(0,0,0,.25);  border-top-color: rgba(0,0,0,.75);  display:none;  animation: spin .8s linear infinite;}@keyframes spin{ to { transform: rotate(360deg); } }.btn.is-loading .btn__spinner{ display:inline-block; }.btn.is-loading .btn__label{ opacity:.9; }.links{  display:flex;  justify-content:space-between;  gap: 14px;  margin-top: 6px;  flex-wrap:wrap;}.link{  font-size: 13px;  color: rgba(255,255,255,.88);  padding: 8px 10px;  border-radius: 999px;  border: 1px solid rgba(255,255,255,.10);  background: rgba(255,255,255,.04);}.link:hover{  border-color: rgba(255,255,255,.16);  background: rgba(255,255,255,.06);}.link--muted{  color: var(--muted);  background: transparent;}.status{  margin: 6px 0 0;  font-size: 13px;  line-height: 1.5;  color: var(--muted);}.status.is-success{  color: rgba(180,255,214,.88);}.status.is-error{  color: rgba(255,170,190,.90);}