/* EMS Auth — ACCOUNT SETTINGS (scoped) */
#ems-auth-account[hidden]{display:none}
#ems-auth-account{
  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;

  /* design tokens to match your form style */
  --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;

  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}

#ems-auth-account .ems-auth-panel{
  width:min(92vw,900px); 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-account .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-account .ems-auth-title{ margin:0; font-size:1.15rem; font-weight:800; letter-spacing:.2px; }
#ems-auth-account .ems-auth-close{
  width:34px;height:34px;border-radius:8px;border:1px solid #27334a;
  background:#121826;color:#cbd3e1;cursor:pointer;
}
#ems-auth-account .ems-auth-close:hover{ background:#162035;color:#fff;border-color:#33405b; }
#ems-auth-account .ems-auth-body{ padding:18px; }

/* --- Form styling (mirrors your LD form palette) --- */
#ems-auth-account label{ display:block; color:var(--tx-muted); font-weight:600; margin:.55rem 0 .35rem; }
#ems-auth-account input,
#ems-auth-account select,
#ems-auth-account 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; /* prevent horizontal scroll */
}
#ems-auth-account input::placeholder, #ems-auth-account textarea::placeholder{ color:var(--tx-dim); }
#ems-auth-account input:focus, #ems-auth-account select:focus, #ems-auth-account 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-account input[type=checkbox], #ems-auth-account input[type=radio]{ width:auto;height:auto;accent-color:var(--tx-accent-1); }
#ems-auth-account input[type=file]{ background:var(--tx-surface-2); padding:.5rem; }
#ems-auth-account 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-account .ur-button,
#ems-auth-account .ur-submit-button,
#ems-auth-account input[type=submit],
#ems-auth-account 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-account .ur-button:hover,
#ems-auth-account .ur-submit-button:hover,
#ems-auth-account input[type=submit]:hover,
#ems-auth-account button[type=submit]:hover{
  filter:brightness(1.05); box-shadow:0 8px 22px rgba(99,102,241,.35);
}

#ems-auth-account .ems-auth-panel, 
#ems-auth-account .ems-auth-body{ overflow-x:hidden; }
#ems-auth-account *{ max-width:100%; }
body.ems-locked{ overflow:hidden; }

@media (max-width:480px){
  #ems-auth-account .ems-auth-panel{ border-radius:12px; width:calc(100vw - 24px); }
}
