/* Sign-in card + the thin owner bar. Everything else comes from dash.css. */
.auth-wrap{ max-width:520px; margin:0 auto; padding:32px 0 64px; }
.auth-wrap[hidden], #app-view[hidden]{ display:none; }
.auth-masthead{ display:flex; align-items:center; gap:14px; margin-bottom:20px; }
.auth-logo{ width:48px; height:48px; border-radius:50%; flex-shrink:0; object-fit:contain; }
.auth-masthead h1{ font-family:'Cormorant Garamond', serif; font-weight:400; font-size:34px; color:var(--title-green); }
.auth-card{ background:var(--surface); border:1px solid var(--line); border-radius:10px; padding:22px 24px; box-shadow:var(--shadow); }
.auth-card[hidden], #code-form[hidden], #email-form[hidden]{ display:none; }
.auth-card h2{ font-size:18px; margin:0 0 12px; }
.auth-muted{ color:var(--ink-dim); font-size:14px; line-height:1.5; margin:0 0 12px; }
.auth-card label{ display:block; font-size:12px; font-weight:700; letter-spacing:0.4px; text-transform:uppercase; color:var(--ink-dim); margin:12px 0 6px; }
.auth-card input{ width:100%; box-sizing:border-box; font:inherit; font-size:16px; padding:10px 12px; border:1px solid var(--line); border-radius:8px; background:var(--bg); color:var(--ink); }
.auth-btn{ display:block; width:100%; margin-top:14px; font:inherit; font-size:15px; font-weight:600; padding:11px 14px; border:0; border-radius:8px; background:var(--moss); color:#F5F7EE; cursor:pointer; }
.auth-btn:disabled{ opacity:.6; cursor:default; }
@media (prefers-color-scheme: dark){ .auth-btn{ color:#131A15; } }
.auth-link{ background:none; border:0; padding:0; font:inherit; font-size:13px; color:var(--moss); text-decoration:underline; cursor:pointer; }
#code-form .auth-link{ display:block; margin-top:14px; }
.auth-msg{ min-height:1.2em; margin:12px 0 0; font-size:14px; color:var(--ink-dim); }
.auth-msg.bad{ color:#BF3A2B; } .auth-msg.ok{ color:#2F8150; }
.portal-bar{ display:flex; align-items:flex-start; justify-content:space-between; gap:14px; flex-wrap:wrap; }
.portal-who{ font-family:'IBM Plex Mono', monospace; font-size:12px; color:var(--ink-faint); padding-top:8px; }
.portal-retry{ margin-left:8px; font:inherit; cursor:pointer; }
.tab-error{ padding:40px 18px; font-size:14px; color:var(--ink-dim); }
