/* Account entry uses the same public shell; editor styles remain scoped to the studio. */
.auth-main { flex:1; width:100%; max-width:1280px; margin-inline:auto; padding:clamp(32px,6vw,80px) clamp(20px,4vw,56px); display:flex; flex-direction:column; justify-content:center; }
.auth-page .auth-layout { width:100%; max-width:none; margin:0; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:clamp(32px,6vw,88px); align-items:center; }
.auth-intro { min-width:0; }
.auth-page .auth-intro h1 { font:650 clamp(40px,4.3vw,60px)/1.08 var(--sans); letter-spacing:-.055em; margin:24px 0; }
.auth-page .auth-intro h1 em { font:italic 400 1.06em/1.1 var(--serif); color:var(--blue); }
.auth-page .auth-intro .intro { font-size:17px; line-height:1.75; color:var(--muted); max-width:480px; margin:0; overflow-wrap:anywhere; }
.auth-service-note { display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; background:var(--lemon); padding:20px 24px; margin-top:32px; font-size:15px; font-weight:500; }
.auth-service-note [aria-hidden] { color:var(--blue); font-size:22px; line-height:1; }
.auth-page .auth-form { min-width:0; padding:32px; border:1px solid #d9d9e2; border-top:4px solid var(--blue); border-radius:4px; background:#fff; }
.auth-form-heading { margin-bottom:28px; }
.auth-form-heading h2 { font-size:26px; line-height:1.2; margin-top:12px; }
.auth-page .auth-form .field { margin-bottom:20px; }
.auth-page .auth-form label { font-size:14px; color:var(--ink); }
.auth-page .auth-form input:not([type=hidden]):not([type=checkbox]) { min-height:52px; width:100%; max-width:100%; font-size:16px; padding:13px 14px; color:var(--ink); background:#fafafe; border:1px solid #aaaabd; border-radius:4px; }
.auth-page .auth-form input[aria-invalid=true] { border:2px solid #9d3545!important; background:#fff8f9!important; }
.auth-page .auth-form input:focus-visible { outline:3px solid var(--blue); outline-offset:3px; }
.auth-page .auth-form .button { min-height:52px; font-size:16px; margin-top:4px; }
.auth-page .form-footnote { font-size:13px; line-height:1.65; color:var(--muted); margin:16px 0 0; }
.auth-page .auth-form ul, .auth-page .field-help { font-size:13px; line-height:1.65; }
.auth-page .auth-form ul.field-error-text { color:#8b2938; margin-top:8px; }
.auth-page .form-error-summary { background:#fff0f2; border:1px solid #c9808b; color:#842733; padding:18px; margin-bottom:24px; }
.auth-page .form-error-summary h2 { font-size:20px; }
.auth-page .form-error-summary ul { color:inherit; margin-bottom:0; }
.auth-page .form-error-summary:focus { outline:3px solid #9d3545; outline-offset:3px; }
.auth-help { border-top:1px solid var(--line); padding-top:20px; margin-top:24px; font-size:13px; line-height:1.65; color:var(--muted); }
.auth-help p:first-child { color:var(--ink); font-weight:500; margin-bottom:4px; }
.auth-help a { color:var(--blue); display:inline-flex; align-items:center; min-height:44px; text-decoration:underline; text-underline-offset:4px; margin-top:4px; }
@media (max-width:800px) {
  .auth-main { padding-block:32px 48px; max-width:640px; }
  .auth-page .auth-layout { grid-template-columns:1fr; gap:28px; }
  .auth-page .auth-intro h1 { font-size:42px; margin:18px 0; }
  .auth-page .auth-intro .intro { font-size:16px; max-width:none; }
  .auth-service-note { margin-top:24px; padding:14px 18px; font-size:14px; }
}
@media (max-width:480px) {
  .auth-main { padding:24px 20px 40px; }
  .auth-page .auth-intro h1 { font-size:36px; }
  .auth-page .auth-intro .intro { font-size:15px; line-height:1.65; }
  .auth-page .auth-form { padding:24px 20px; }
  .auth-form-heading { margin-bottom:24px; }
  .auth-form-heading h2 { font-size:24px; }
  .auth-service-note { gap:8px 12px; font-size:13px; }
}
@media (max-width:360px) {
  .auth-main { padding-inline:16px; }
  .auth-page .auth-intro h1 { font-size:32px; }
  .auth-page .auth-form { padding:22px 16px; }
}
