.reader-login-overlay{top:var(--reader-login-top,0px);bottom:auto;height:var(--reader-login-height,100dvh)}
.reader-login-modal{max-height:calc(var(--reader-login-height,100dvh) - 48px);scroll-padding-block:16px}
.reader-login-modal input{font-size:16px;min-width:0}
.reader-login-modal input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.reader-login-modal [data-email-step],.reader-login-modal [data-code-step]{display:grid;gap:16px}
.reader-login-modal [hidden]{display:none}
.reader-login-modal .reader-code-button{margin:0}
.reader-login-modal [data-email-step]>.button,.reader-login-modal [data-code-step]>.button{width:100%;min-height:44px}
.reader-code-destination{margin:0;font-size:13px;line-height:1.6;overflow-wrap:anywhere;color:var(--secondary)}
.reader-code-secondary{display:flex;justify-content:space-between;gap:12px}
.reader-code-secondary button{min-height:36px;padding:6px 0;color:var(--secondary);font-size:12px}
.reader-code-secondary button:disabled{opacity:.6}
.reader-code-secondary button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--ui-radius-sm)}
.reader-login-close{width:44px;height:44px}
.reader-login-modal .form-message{margin-top:12px;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:820px){
  .reader-login-overlay{padding:12px;align-items:center}
  .reader-login-modal{max-height:calc(var(--reader-login-height,100dvh) - 24px);padding:20px}
  .reader-login-header{gap:12px}.reader-login-header h2{font-size:20px}
  .reader-login-description{margin-bottom:18px}
  .reader-login-footer{margin:18px -20px -20px;padding:14px 20px}
  .reader-code-secondary button{min-height:44px}
}
