:root{
  --reg-brand:#f97316;
  --reg-brand-2:#fb8500;
  --reg-brand-dark:#c2410c;
  --reg-ink:#111827;
  --reg-muted:#667085;
  --reg-line:#e6e9ee;
  --reg-soft:#f7f8fa;
  --reg-soft-orange:#fff7ed;
  --reg-green:#16a34a;
  --reg-blue:#2563eb;
  --reg-shadow:0 24px 70px rgba(17,24,39,.10);
}
body.register-onboarding-page{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 6% 0%,rgba(249,115,22,.08),transparent 28%),
    radial-gradient(circle at 94% 100%,rgba(37,99,235,.055),transparent 30%),
    #f7f8fa;
  color:var(--reg-ink);
  font-family:"Poppins",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
}
.register-onboarding-page *{box-sizing:border-box}
.register-onboarding-page a{text-decoration:none}
.register-onboarding-page button,.register-onboarding-page input,.register-onboarding-page select{font-family:inherit}

/* topbar */
.reg-topbar{position:sticky;top:0;z-index:40;border-bottom:1px solid rgba(230,233,238,.88);background:rgba(255,255,255,.88);backdrop-filter:blur(20px)}
.reg-topbar__inner{width:min(1160px,calc(100% - 32px));height:62px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:18px}
.reg-brand{display:flex;align-items:center;gap:10px;min-width:0;color:var(--reg-ink)}
.reg-brand img{width:auto;max-width:145px;max-height:39px;object-fit:contain}
.reg-brand__mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--reg-brand),var(--reg-brand-2));color:#fff;font-size:19px;box-shadow:0 9px 22px rgba(249,115,22,.22)}
.reg-brand__copy{display:grid;line-height:1.08}.reg-brand__copy strong{font-size:14px;font-weight:800}.reg-brand__copy span{margin-top:3px;color:var(--reg-muted);font-size:11px;font-weight:500}
.reg-login-link{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:7px 12px;border:1px solid var(--reg-line);border-radius:11px;background:#fff;color:#344054;font-size:12px;font-weight:800;box-shadow:0 5px 16px rgba(17,24,39,.035);transition:.2s}
.reg-login-link:hover{transform:translateY(-1px);border-color:#f7b58a;color:var(--reg-brand-dark);box-shadow:0 8px 20px rgba(17,24,39,.06)}
.reg-login-link .bi-arrow-right-short{font-size:17px;margin-left:-3px}

/* desktop layout */
.reg-shell{width:min(790px,calc(100% - 32px));margin:22px auto 34px;display:block}
.reg-side{position:sticky;top:84px;min-height:598px;overflow:hidden;border-radius:24px;background:#15181f;color:#fff;box-shadow:0 28px 70px rgba(15,23,42,.20);isolation:isolate}
.reg-side__media{position:absolute;inset:0;z-index:-3}.reg-side__media img{width:100%;height:100%;object-fit:cover;object-position:center 44%;filter:saturate(1.08) brightness(.66)}
.reg-side:before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(180deg,rgba(11,13,18,.93) 0%,rgba(14,17,23,.73) 42%,rgba(12,14,19,.94) 100%)}
.reg-side:after{content:"";position:absolute;z-index:-1;width:280px;height:280px;right:-95px;top:-105px;border-radius:50%;background:radial-gradient(circle,rgba(249,115,22,.42),rgba(249,115,22,0) 70%)}
.reg-side__content{position:relative;z-index:2;padding:26px 26px 14px}
.reg-kicker{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.075em}
.reg-kicker--dark{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.09);color:#ffdfc1;backdrop-filter:blur(9px)}
.reg-kicker--light{border:1px solid #fed7aa;background:#fff7ed;color:var(--reg-brand-dark)}
.reg-side h1{max-width:340px;margin:15px 0 8px;font-size:28px;line-height:1.08;letter-spacing:-.045em;font-weight:900;text-wrap:balance}
.reg-side__content>p{max-width:340px;margin:0;color:#d0d5dd;font-size:12.5px;line-height:1.62;font-weight:500}

/* visual preview */
.reg-showcase{position:relative;margin:20px 0 17px;padding:0 10px 8px}
.reg-showcase__window{overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:17px;background:#fff;box-shadow:0 18px 45px rgba(0,0,0,.30);transform:perspective(900px) rotateY(-2deg)}
.reg-showcase__bar{height:27px;padding:0 8px;display:flex;align-items:center;gap:5px;background:#f8fafc;border-bottom:1px solid #e7e9ee}.reg-showcase__bar span{width:6px;height:6px;border-radius:50%;background:#fdba74}.reg-showcase__bar span:nth-child(2){background:#fcd34d}.reg-showcase__bar span:nth-child(3){background:#86efac}.reg-showcase__bar strong{margin-left:4px;color:#667085;font-size:9px;font-weight:700}
.reg-showcase__window img{display:block;width:100%;height:148px;object-fit:cover;object-position:center top}
.reg-float-card{position:absolute;display:flex;align-items:center;gap:7px;padding:8px 9px;border:1px solid rgba(255,255,255,.7);border-radius:12px;background:rgba(255,255,255,.96);color:#111827;box-shadow:0 13px 32px rgba(0,0,0,.22);backdrop-filter:blur(12px)}
.reg-float-card--orders{left:-3px;bottom:-1px}.reg-float-card--menu{right:-2px;top:41px}
.reg-float-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#fff1e7;color:var(--reg-brand);font-size:13px}.reg-float-card--menu .reg-float-icon{background:#eff6ff;color:#2563eb}
.reg-float-card small,.reg-float-card strong{display:block}.reg-float-card small{color:#98a2b3;font-size:9px;font-weight:700}.reg-float-card strong{margin-top:1px;font-size:11px;font-weight:900;white-space:nowrap}

.reg-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:2px}
.reg-benefit{min-width:0;padding:9px 8px;border:1px solid rgba(255,255,255,.11);border-radius:12px;background:rgba(255,255,255,.075);backdrop-filter:blur(9px)}
.reg-benefit__icon{width:28px;height:28px;display:grid;place-items:center;margin-bottom:7px;border-radius:9px;background:rgba(249,115,22,.16);color:#ffb77d;font-size:13px}
.reg-benefit strong{display:block;font-size:11.5px;line-height:1.3;font-weight:800}.reg-benefit span:not(.reg-benefit__icon){display:block;margin-top:3px;color:#d0d5dd;font-size:10px;line-height:1.5}
.reg-trust{position:absolute;z-index:3;left:26px;right:26px;bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:7px;padding-top:12px;border-top:1px solid rgba(255,255,255,.10)}
.reg-trust span{display:inline-flex;align-items:center;gap:5px;color:#e5e7eb;font-size:10px;font-weight:700}.reg-trust i{color:#86efac;font-size:11px}

/* form card */
.reg-card{overflow:hidden;border:1px solid var(--reg-line);border-radius:22px;background:#fff;box-shadow:var(--reg-shadow)}
.reg-card__head{padding:20px 22px 16px;border-bottom:1px solid #eef1f4;background:linear-gradient(180deg,#fff 0%,#fdfdfd 100%)}
.reg-card__head-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.reg-card__head h2{margin:6px 0 4px;font-size:21px;line-height:1.18;letter-spacing:-.035em;font-weight:900}
.reg-card__head p{max-width:470px;margin:0;color:var(--reg-muted);font-size:12px;line-height:1.55}
.reg-safe{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:6px 8px;border:1px solid #c9f1d5;border-radius:999px;background:#f0fdf4;color:#15803d;font-size:10.5px;font-weight:800}.reg-safe i{font-size:13px}
.reg-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:16px}
.reg-step-indicator{display:grid;grid-template-columns:30px 1fr;gap:7px;align-items:center;padding:7px 8px;border:1px solid #edf0f3;border-radius:11px;background:#f8fafc;color:#98a2b3;transition:.18s}
.reg-step-indicator__num{width:30px;height:30px;display:grid;place-items:center;border:1px solid #e4e7ec;border-radius:9px;background:#fff;color:#98a2b3;font-size:12px}
.reg-step-indicator strong{display:block;font-size:11.5px;line-height:1.25;font-weight:900}.reg-step-indicator>div>span{display:block;margin-top:2px;font-size:9.5px;line-height:1.3}
.reg-step-indicator.is-active{border-color:#fed7aa;background:#fff7ed;color:#b93808}.reg-step-indicator.is-active .reg-step-indicator__num{border-color:#fdba74;background:linear-gradient(135deg,var(--reg-brand),var(--reg-brand-2));color:#fff;box-shadow:0 7px 15px rgba(249,115,22,.17)}
.reg-step-indicator.is-done{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.reg-step-indicator.is-done .reg-step-indicator__num{border-color:#86efac;background:#16a34a;color:#fff}

.reg-form{padding:20px 22px 22px}.reg-form-step{display:none;animation:regFade .2s ease}.reg-form-step.is-active{display:block}
.reg-section-title{display:flex;align-items:center;gap:10px;margin-bottom:14px}.reg-section-icon{width:37px;height:37px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:linear-gradient(145deg,#fff7ed,#ffedd5);color:var(--reg-brand);font-size:16px;box-shadow:inset 0 0 0 1px #fed7aa}
.reg-section-title h3{margin:0;font-size:14px;line-height:1.2;letter-spacing:-.02em;font-weight:900}.reg-section-title p{margin:3px 0 0;color:var(--reg-muted);font-size:11px;line-height:1.5}
.reg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 12px}.reg-grid .field-card{display:block;margin:0;min-width:0}.reg-grid .field-card.reg-full{grid-column:1/-1}
.field-label{display:flex;justify-content:space-between;gap:7px;margin-bottom:5px;color:#344054;font-size:12px;font-weight:800}.field-label small{color:#98a2b3;font-size:10px;font-weight:600}
.input-shell{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:5px;z-index:2;width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#f7f8fa;color:#667085;font-size:12px;pointer-events:none;transition:.15s}.input-shell:focus-within .input-icon{background:#fff0e6;color:var(--reg-brand)}
.input-shell input,.input-shell select{width:100%;height:40px;border:1px solid #dfe3e8;border-radius:10px;background:#fff;padding:7px 34px 7px 42px;color:#111827;font:inherit;font-size:13px;font-weight:500;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.input-shell select{appearance:none}.input-shell input:focus,.input-shell select:focus{border-color:#f7a36f;box-shadow:0 0 0 3px rgba(249,115,22,.09)}.input-shell input::placeholder{color:#a9b1bd;font-weight:400}
.field-status{position:absolute;right:10px;width:16px;height:16px;display:grid;place-items:center;border-radius:50%;font-size:10px}.field-card.is-valid .field-status:after{content:"✓";color:#fff}.field-card.is-valid .field-status{background:#16a34a}.field-card.is-valid .input-shell input,.field-card.is-valid .input-shell select{border-color:#86efac;background:#fbfffc}.field-card.is-invalid .field-status:after{content:"!";color:#fff}.field-card.is-invalid .field-status{background:#dc2626}.field-card.is-invalid .input-shell input,.field-card.is-invalid .input-shell select{border-color:#fca5a5;background:#fffafa}
.field-feedback{display:block;min-height:12px;margin-top:4px;color:#7b8492;font-size:10.5px;line-height:1.45}.field-card.is-invalid .field-feedback{color:#b42318}.field-card.is-valid .field-feedback{color:#15803d}
.reg-password-toggle{position:absolute;right:7px;width:26px;height:26px;border:0;border-radius:7px;background:transparent;color:#667085;cursor:pointer}.reg-password-toggle:hover{background:#f2f4f7}.has-password-toggle .field-status{right:38px}.reg-password-meter{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:5px}.reg-password-meter span{height:3px;border-radius:99px;background:#e5e7eb}.reg-password-meter[data-strength="1"] span:nth-child(-n+1){background:#ef4444}.reg-password-meter[data-strength="2"] span:nth-child(-n+2){background:#f59e0b}.reg-password-meter[data-strength="3"] span:nth-child(-n+3){background:#3b82f6}.reg-password-meter[data-strength="4"] span{background:#16a34a}
.reg-slug-preview{display:flex;align-items:flex-start;gap:6px;margin-top:6px;padding:8px 10px;border:1px dashed #d7dce3;border-radius:9px;background:#fafbfc;color:#475467;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.reg-slug-preview i{color:var(--reg-brand);font-size:12px}.reg-slug-preview strong{color:#1d2939}
.reg-plan-box{padding:11px;border:1px solid #e5e7eb;border-radius:12px;background:#fbfcfe}.reg-plan-note{display:flex;gap:7px;align-items:flex-start;margin-top:7px;padding:8px 9px;border-radius:9px;background:#eff8ff;color:#175cd3;font-size:10.5px;line-height:1.5}.reg-plan-note i{font-size:12px;margin-top:1px}
.reg-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:1px}.reg-summary-item{padding:8px 9px;border:1px solid #edf0f4;border-radius:9px;background:#fbfcfe}.reg-summary-item span{display:block;color:#7b8492;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.reg-summary-item strong{display:block;margin-top:3px;color:#1d2939;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.reg-terms{display:flex;gap:8px;align-items:flex-start;margin-top:11px;padding:9px 10px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.reg-terms input{margin:1px 0 0;accent-color:var(--reg-brand)}.reg-terms label{font-size:11px;line-height:1.55;color:#667085}.reg-terms a{color:var(--reg-brand-dark);font-weight:800}.reg-terms.is-invalid{border-color:#fca5a5;background:#fff7f7}.reg-terms.is-invalid label{color:#b42318}
.reg-actions{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:17px;padding-top:13px;border-top:1px solid #eef2f6}.reg-actions__right{display:flex;gap:7px;margin-left:auto}.reg-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:7px 13px;border:1px solid transparent;border-radius:10px;font:inherit;font-size:12px;font-weight:900;cursor:pointer;transition:transform .12s,box-shadow .12s,background .12s}.reg-btn:hover{transform:translateY(-1px)}.reg-btn:active{transform:translateY(1px)}.reg-btn-secondary{border-color:#dfe3e8;background:#fff;color:#344054}.reg-btn-secondary:hover{background:#f8fafc}.reg-btn-primary{background:linear-gradient(135deg,var(--reg-brand),var(--reg-brand-2));color:#fff;box-shadow:0 9px 19px rgba(249,115,22,.20)}.reg-btn-primary:hover{box-shadow:0 12px 24px rgba(249,115,22,.27)}.reg-btn-success{background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;box-shadow:0 9px 19px rgba(22,163,74,.18)}.reg-btn[disabled]{opacity:.65;cursor:not-allowed;transform:none}.reg-progress-text{font-size:10.5px;color:#98a2b3;font-weight:700}.reg-submit-note{display:flex;align-items:center;gap:6px;margin-top:8px;color:#7b8492;font-size:10px;line-height:1.5}.reg-submit-note i{color:#667085}
.reg-alert{margin:0 0 13px;padding:10px 11px;border-radius:10px;display:flex;gap:8px;align-items:flex-start;font-size:11px;line-height:1.55}.reg-alert.error,.reg-alert.danger{background:#fff1f1;border:1px solid #fecaca;color:#b42318}.reg-alert.success{background:#ecfdf3;border:1px solid #abefc6;color:#067647}
.reg-mobile-benefits{display:none}.reg-step-error{animation:regShake .22s ease}
@keyframes regFade{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes regShake{0%,100%{transform:none}35%{transform:translateX(-4px)}70%{transform:translateX(4px)}}

@media(max-width:980px){
  .reg-shell{width:min(790px,calc(100% - 28px));margin-top:18px}
}
@media(max-width:820px){
  .reg-shell{width:min(720px,calc(100% - 24px));margin-top:14px}.reg-card{border-radius:18px}.reg-card__head{padding:18px 18px 15px}.reg-form{padding:18px}.reg-mobile-benefits{display:flex;gap:7px;overflow-x:auto;padding:0 0 3px;margin:0 0 13px;scrollbar-width:none}.reg-mobile-benefits::-webkit-scrollbar{display:none}.reg-mobile-benefits span{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid #eceff3;border-radius:999px;background:#f8fafc;color:#475467;font-size:10px;font-weight:800}.reg-mobile-benefits i{color:var(--reg-brand)}
}
@media(max-width:620px){
  .reg-topbar__inner{width:min(100% - 20px,720px);height:58px}.reg-brand img{max-width:122px;max-height:34px}.reg-brand__copy span{display:none}.reg-login-link{min-height:35px;padding:6px 9px}.reg-login-link span{display:none}.reg-login-link .bi-arrow-right-short{display:none}.reg-shell{width:min(100% - 16px,720px);margin:8px auto 18px}.reg-card{border-radius:15px;box-shadow:0 14px 34px rgba(15,23,42,.08)}.reg-card__head{padding:15px 14px 13px}.reg-card__head-top{gap:8px}.reg-card__head h2{font-size:18px}.reg-card__head p{font-size:11px}.reg-safe{display:none}.reg-kicker{font-size:9.5px;padding:5px 7px}.reg-steps{gap:5px;margin-top:12px}.reg-step-indicator{display:flex;justify-content:center;padding:5px}.reg-step-indicator__num{width:29px;height:29px}.reg-step-indicator>div{display:none}.reg-form{padding:14px}.reg-section-title{margin-bottom:12px}.reg-section-icon{width:34px;height:34px;font-size:14px}.reg-section-title h3{font-size:13px}.reg-section-title p{font-size:10.5px}.reg-grid{grid-template-columns:1fr;gap:9px}.reg-grid .field-card.reg-full{grid-column:auto}.input-shell input,.input-shell select{height:43px;font-size:13px}.field-feedback{font-size:10.5px;min-height:14px}.reg-summary{grid-template-columns:1fr}.reg-summary-item[style]{grid-column:auto!important}.reg-actions{align-items:stretch;flex-direction:column;margin-top:14px}.reg-actions__right{width:100%;margin:0}.reg-actions__right .reg-btn{flex:1;min-height:40px}.reg-progress-text{text-align:center;order:2}.reg-submit-note{justify-content:center;text-align:center;font-size:9.5px}
}
@media(max-width:380px){.reg-actions__right{display:grid;grid-template-columns:1fr}.reg-btn{width:100%}.reg-card__head h2{font-size:17px}}
/* Readability refinement: keep the compact layout, but never make helper text microscopic. */
@media (min-width: 769px){
  .reg-form{font-size:13px}
}
@media (max-width: 768px){
  .reg-brand__copy strong{font-size:13px}
  .reg-login-link{font-size:12px}
  .reg-card__head p{font-size:11.5px}
  .reg-section-title p{font-size:10.5px}
  .field-label{font-size:12px}
  .field-label small{font-size:10px}
  .input-shell input,.input-shell select{font-size:13px}
  .reg-slug-preview{font-size:10.5px}
  .reg-plan-note{font-size:10.5px}
  .reg-terms label{font-size:10.5px}
  .reg-btn{font-size:12px}
  .reg-progress-text{font-size:10px}
  .reg-submit-note{font-size:9.5px}
}
