:root{
  --auth-brand:#d408df;
  --auth-brand-dark:#a30ab0;
  --auth-green:#18c918;
  --auth-ink:#111827;
  --auth-text:#334155;
  --auth-muted:#64748b;
  --auth-line:#e6e8ee;
  --auth-card:#ffffff;
  --auth-soft:#fff7ff;
  --auth-green-soft:#f4fff2;
  --auth-shadow:0 30px 80px rgba(61,36,75,.12);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--auth-ink);background:#fff}
a{color:inherit}
button,input,textarea,select{font:inherit}
.auth-page{min-height:100vh;background:radial-gradient(circle at 12% 15%,rgba(212,8,223,.10),transparent 31%),radial-gradient(circle at 92% 12%,rgba(24,201,24,.08),transparent 27%),linear-gradient(180deg,#fff 0%,#fffaff 100%);}
.auth-topbar{max-width:1380px;margin:0 auto;padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.auth-logo{display:inline-flex;align-items:center;text-decoration:none}
.auth-logo img{width:215px;height:58px;object-fit:contain;display:block}
.auth-toplinks{display:flex;align-items:center;gap:18px;font-size:13px;font-weight:700}
.auth-toplinks a{text-decoration:none;color:#4b1663}.auth-toplinks a:hover{color:var(--auth-brand)}
.auth-shell{max-width:1380px;margin:0 auto;padding:34px 34px 70px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);gap:74px;align-items:center}
.auth-story{padding:20px 0 20px 8px;max-width:600px}
.auth-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#f2fff0;color:#168516;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:22px}
.auth-kicker:before{content:"";width:7px;height:7px;border-radius:999px;background:var(--auth-green)}
.auth-story h1{margin:0;font-size:68px;line-height:.98;letter-spacing:-.065em;max-width:620px}
.auth-story h1 .accent{background:linear-gradient(90deg,#e300dc,#8d0aa6);-webkit-background-clip:text;background-clip:text;color:transparent}
.auth-story>p{font-size:17px;line-height:1.7;color:var(--auth-text);max-width:570px;margin:24px 0 26px}
.auth-benefits{display:grid;gap:10px;margin-top:26px;max-width:590px}
.auth-benefit{background:rgba(255,255,255,.88);border:1px solid #ece5f0;border-radius:15px;padding:15px 17px;font-size:13px;font-weight:700;box-shadow:0 8px 24px rgba(15,23,42,.025)}
.auth-benefit b{color:var(--auth-brand);margin-right:8px}
.auth-card{background:var(--auth-card);border:1px solid #ebecef;border-radius:25px;box-shadow:var(--auth-shadow);padding:34px 36px;max-width:650px;width:100%;justify-self:end}
.auth-step{font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:850;color:#9b1da3;margin-bottom:8px}
.auth-card h2{font-size:32px;letter-spacing:-.04em;line-height:1.08;margin:0 0 9px}
.auth-subtitle{margin:0;color:var(--auth-muted);font-size:14px;line-height:1.55}
.auth-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:22px 0 28px;position:relative}
/* Track runs from the center of step 1 to the center of step 3. */
.auth-progress:before{content:"";position:absolute;left:16.6667%;right:16.6667%;top:13px;height:3px;transform:translateY(-50%);background:#f1e8f2;border-radius:999px;z-index:0}
.auth-progress-item{position:relative;z-index:2;font-size:10px;color:#8a94a6;font-weight:700;text-align:center;line-height:1.2}
.auth-progress-item span{display:grid;place-items:center;width:26px;height:26px;margin:0 auto 8px;border-radius:999px;background:#f7eff8;color:#9b1da3;border:1px solid #ead5ec;box-shadow:0 0 0 4px #fff}
.auth-progress-item.active{color:#4b1663}.auth-progress-item.active span{background:var(--auth-brand);color:#fff;border-color:var(--auth-brand);box-shadow:0 0 0 4px #fff,0 5px 14px rgba(212,8,223,.22)}
/* Step 1 starts at the first circle. Step 2 fills to circle 2. Step 3 fills to circle 3. */
.auth-progress-fill{position:absolute;left:16.6667%;top:13px;height:3px;transform:translateY(-50%);background:linear-gradient(90deg,var(--auth-brand),var(--auth-green));border-radius:999px;z-index:1;width:0}
.auth-progress.step2 .auth-progress-fill{width:33.3333%}.auth-progress.step3 .auth-progress-fill{width:66.6666%}
.auth-form{display:grid;gap:15px}
.auth-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.auth-field label{display:block;font-size:12px;font-weight:700;margin-bottom:7px;color:#263247}
.auth-field input,.auth-field textarea,.auth-field select{width:100%;border:1px solid #dfe3ea;border-radius:13px;padding:13px 14px;background:#fff;color:#111827;outline:none;transition:.15s ease}
.auth-field textarea{min-height:110px;resize:vertical}
.auth-field input:focus,.auth-field textarea:focus,.auth-field select:focus{border-color:#e183e5;box-shadow:0 0 0 4px rgba(212,8,223,.07)}
.auth-help{font-size:11px;line-height:1.45;color:#7c8799;margin-top:5px}
.auth-check{display:flex;align-items:flex-start;gap:9px;font-size:11px;line-height:1.45;color:#657084}
.auth-check input{margin-top:2px}.auth-check a{color:#8d0aa6;font-weight:700;text-decoration:none}
.auth-primary{width:100%;border:0;border-radius:999px;padding:14px 18px;background:linear-gradient(90deg,#dc00df,#9510aa);color:#fff;font-weight:750;cursor:pointer;box-shadow:0 14px 28px rgba(212,8,223,.20)}
.auth-primary:hover{transform:translateY(-1px);filter:saturate(1.04)}
.auth-secondary{display:flex;align-items:center;justify-content:center;width:100%;border:1px solid #dfe3ea;border-radius:999px;padding:13px 18px;background:#fff;color:#243047;text-decoration:none;font-weight:750;font-size:13px}
.auth-secondary:hover{border-color:#e4addf;background:#fffaff}
.auth-actions{display:grid;gap:10px;margin-top:3px}
.auth-divider{display:flex;align-items:center;gap:12px;color:#9aa3b2;font-size:10px;font-weight:800;text-transform:uppercase;margin:3px 0}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e9ebef;flex:1}
.auth-error,.auth-success,.auth-info{border-radius:13px;padding:12px 14px;font-size:12px;line-height:1.5;margin:0 0 16px}.auth-error{background:#fff2f2;border:1px solid #fecaca;color:#991b1b}.auth-success{background:#f0fff2;border:1px solid #bbf7d0;color:#166534}.auth-info{background:#fff8ff;border:1px solid #f0d7f1;color:#6b2573}
.auth-footer{text-align:center;font-size:10px;color:#9aa3b2;margin-top:18px}.auth-footer a{margin:0 7px;text-decoration:none}.auth-footer a:hover{color:var(--auth-brand)}
.auth-center-card{max-width:620px;margin:70px auto;padding:0 24px}.auth-center-card .auth-card{max-width:none;justify-self:auto;text-align:center}.auth-center-card .auth-card p{line-height:1.65;color:var(--auth-muted)}
.auth-token-icon{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#fff0ff,#efffec);border:1px solid #efd8f0;margin:0 auto 18px;font-size:27px}
.auth-avatar-row{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;padding:13px;border:1px solid #eceef2;border-radius:15px;background:#fcfcfd}
.auth-avatar{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,var(--auth-brand),var(--auth-green));color:#fff;font-size:26px;font-weight:800}.auth-avatar img{width:100%;height:100%;object-fit:cover}
.auth-topics{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:285px;overflow:auto;padding:2px}
.auth-topic{display:flex;align-items:center;gap:8px;border:1px solid #e8eaf0;border-radius:12px;padding:10px 11px;font-size:11px;font-weight:700;background:#fff;cursor:pointer}.auth-topic:has(input:checked){border-color:#e9b7eb;background:#fff7ff}.auth-topic input{accent-color:var(--auth-brand)}
.auth-mini-note{background:linear-gradient(135deg,#fff8ff,#f7fff5);border:1px solid #efe3ef;border-radius:15px;padding:14px;font-size:11px;line-height:1.55;color:#64748b}
.auth-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:1000px){.auth-shell{grid-template-columns:1fr;gap:30px;max-width:760px}.auth-card{justify-self:stretch;max-width:none}.auth-story{max-width:none;text-align:center;margin:auto}.auth-story h1{font-size:54px;margin:auto}.auth-story>p{margin-left:auto;margin-right:auto}.auth-benefits{margin-left:auto;margin-right:auto}.auth-topbar{padding:22px 24px}}
@media(max-width:620px){.auth-shell{padding:18px 16px 44px}.auth-topbar{padding:17px 16px}.auth-logo img{width:172px;height:auto}.auth-toplinks{gap:10px;font-size:11px}.auth-story h1{font-size:43px}.auth-story>p{font-size:15px}.auth-card{padding:26px 20px;border-radius:20px}.auth-card h2{font-size:27px}.auth-grid-2{grid-template-columns:1fr}.auth-topics{grid-template-columns:1fr}.auth-progress-item{font-size:9px}.auth-avatar-row{grid-template-columns:1fr;text-align:center}.auth-avatar{margin:auto}}
