/* EMS Auth — REGISTER (scoped) */
#ems-auth-register[hidden]{display:none}
#ems-auth-register{
  position:fixed; inset:0; z-index:2147483647;
  display:grid; place-items:center;
  background:rgba(8,12,20,.55); backdrop-filter:blur(4px);
  overscroll-behavior:contain; overflow-x:hidden;

  --tx-text:#eef2ff; --tx-muted:#c9d0e8; --tx-dim:#9aa7c3;
  --tx-surface:#0f1624; --tx-surface-2:#131b2b; --tx-border:#22304a;
  --tx-accent-1:#6366f1; --tx-accent-2:#60a5fa; --tx-accent-solid:#6366f1;
  --tx-radius:12px;
}

#ems-auth-register .ems-auth-panel{
  width:min(92vw,860px); max-height:88vh; overflow:auto; -webkit-overflow-scrolling:touch;
  background:#151a22; color:var(--tx-text);
  border:1px solid #27334a; border-radius:16px;
  box-shadow:0 24px 64px rgba(0,0,0,.5); box-sizing:border-box;
}
#ems-auth-register .ems-auth-header{
  position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:14px 16px; background:linear-gradient(180deg,#111723,#0f141f); border-bottom:1px solid #25324a;
}
#ems-auth-register .ems-auth-title{ margin:0; font-size:1.15rem; font-weight:800; }
#ems-auth-register .ems-auth-close{
  width:34px;height:34px;border-radius:8px;border:1px solid #27334a;background:#121826;color:#cbd3e1;cursor:pointer;
}
#ems-auth-register .ems-auth-close:hover{ background:#162035; color:#fff; border-color:#33405b; }
#ems-auth-register .ems-auth-body{ padding:18px; }
#ems-auth-register .ems-auth-footer{ padding:0 18px 16px; }
#ems-auth-register .ems-auth-link{
  background:transparent;border:0;color:#60a5fa;cursor:pointer;text-decoration:underline;text-underline-offset:3px;font-weight:700;
}

/* Form styling (same as login) */
#ems-auth-register label{ display:block; color:var(--tx-muted); font-weight:600; margin:.55rem 0 .35rem; }
#ems-auth-register input, #ems-auth-register select, #ems-auth-register textarea{
  width:100%; max-width:48rem; background:var(--tx-surface); color:var(--tx-text);
  border:1px solid var(--tx-border); border-radius:10px; padding:.75rem .95rem;
  line-height:1.4; transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
  box-sizing:border-box; min-width:0;
}
#ems-auth-register input::placeholder, #ems-auth-register textarea::placeholder{ color:var(--tx-dim); }
#ems-auth-register input:focus, #ems-auth-register select:focus, #ems-auth-register textarea:focus{
  outline:none; border-color:color-mix(in srgb, var(--tx-accent-1) 60%, var(--tx-border));
  box-shadow:0 0 0 2px color-mix(in srgb, var(--tx-accent-1) 45%, transparent); background:#101a2d;
}
#ems-auth-register input[type=checkbox], #ems-auth-register input[type=radio]{ width:auto;height:auto;accent-color:var(--tx-accent-1); }
#ems-auth-register input[type=file]{ background:var(--tx-surface-2); padding:.5rem; }
#ems-auth-register input[type=file]::file-selector-button{
  margin-right:.6rem; border:1px solid var(--tx-border);
  background:linear-gradient(90deg,var(--tx-accent-1),var(--tx-accent-2));
  color:#0b0e13; padding:.45rem .7rem; border-radius:8px; cursor:pointer;
}
#ems-auth-register input[type=range]{ width:100%; background:transparent; }
#ems-auth-register input[type=range]::-webkit-slider-runnable-track{
  height:6px;border-radius:999px;background:linear-gradient(90deg,#28314b,#2b3a5a);
}
#ems-auth-register input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none; appearance:none; margin-top:-6px; width:18px;height:18px;border-radius:50%;
  background:linear-gradient(180deg,var(--tx-accent-1),var(--tx-accent-2));
  border:2px solid #0f1624; box-shadow:0 0 0 2px rgba(99,102,241,.35);
}
#ems-auth-register .ur-button,
#ems-auth-register .ur-submit-button,
#ems-auth-register input[type=submit],
#ems-auth-register button[type=submit]{
  display:inline-block; border:1px solid transparent;
  background:linear-gradient(90deg,var(--tx-accent-1),var(--tx-accent-2));
  color:#0b0e13; padding:.75rem 1.1rem; border-radius:14px; font-weight:800; letter-spacing:.2px;
  transition:filter .15s ease, transform .15s ease, box-shadow .15s ease;
}
#ems-auth-register .ur-button:hover,
#ems-auth-register .ur-submit-button:hover,
#ems-auth-register input[type=submit]:hover,
#ems-auth-register button[type=submit]:hover{
  filter:brightness(1.05); box-shadow:0 8px 22px rgba(99,102,241,.35);
}
#ems-auth-register .ur-error-message{ color:#fecaca; background:#2b1218; border:1px solid #5b1f2c; padding:.7rem .9rem; border-radius:10px; }
#ems-auth-register .ur-success-message{ color:#eafff3; background:#0f2a22; border:1px solid #1d5b48; padding:.7rem .9rem; border-radius:10px; }

#ems-auth-register .ems-auth-body, 
#ems-auth-register .ems-auth-panel{ overflow-x:hidden; }
#ems-auth-register *{ max-width:100%; }
body.ems-locked{ overflow:hidden; }
@media (max-width:480px){
  #ems-auth-register .ems-auth-panel{ border-radius:12px; width:calc(100vw - 24px); }
}