.auth-wrap { max-width: 520px; margin: 0 auto; padding: 20px 0 60px; }
.auth-card { background: #fff; border-radius: 24px; border: 1.5px solid var(--border); padding: 48px; box-shadow: 0 20px 60px rgba(0,0,0,.06); }
.auth-logo { text-align: center; margin-bottom: 32px; }
.auth-logo h2 { font-family: 'Playfair Display', serif; font-size: 28px; font-weight: 700; }
.auth-logo h2 span { color: var(--accent); }
.auth-logo p { color: var(--muted); font-size: 14px; margin-top: 6px; }
.form-group { margin-bottom: 18px; }
.form-label { display: block; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .8px; color: var(--muted); margin-bottom: 8px; }
.form-input { width: 100%; border: 1.5px solid var(--border); border-radius: 12px; padding: 12px 16px; font-size: 15px; font-family: inherit; transition: border .2s; background: #fafaf8; }
.form-input:focus { outline: none; border-color: var(--accent); background: #fff; }
.form-error { color: #dc2626; font-size: 12px; margin-top: 5px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.btn-auth { width: 100%; padding: 14px; background: var(--primary); color: #fff; border: none; border-radius: 12px; font-size: 16px; font-weight: 700; cursor: pointer; transition: all .2s; margin-top: 8px; }
.btn-auth:hover { background: var(--accent); }
.auth-link { text-align: center; font-size: 14px; color: var(--muted); margin-top: 20px; }
.auth-link a { color: var(--accent); font-weight: 700; text-decoration: none; }
