.auth-page { min-height: calc(100vh - 78px); display: grid; place-items: center; padding: 5rem 0; }
.auth-layout { display: grid; grid-template-columns: .8fr 1.2fr; align-items: stretch; max-width: 940px; margin-inline: auto; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; background: var(--card); box-shadow: var(--shadow); }
.auth-aside { display: flex; flex-direction: column; justify-content: space-between; padding: 2.4rem; background: var(--ink); color: var(--paper); }
.auth-aside h1 { margin: 4rem 0 1rem; font-size: clamp(2.4rem, 5vw, 4.4rem); }
.auth-aside p { color: #c2cbc8; font-size: .9rem; }
.auth-aside .eyebrow { color: #d5ad69; }
.auth-form { padding: 2.4rem; }
.auth-form h2 { margin: .5rem 0 .65rem; font-size: 2.4rem; }
.auth-form > p { color: var(--ink-soft); font-size: .9rem; }
.auth-form form { margin-top: 1.8rem; }
.form-actions { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 1.3rem; }
.form-actions a, .auth-links a { color: var(--brass-deep); font-size: .82rem; font-weight: 700; }
.auth-links { display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin-top: 1.4rem; }
.password-field { position: relative; }
.password-field input { padding-right: 4.6rem; }
.password-toggle { position: absolute; right: .5rem; bottom: .45rem; border: 0; padding: .35rem .5rem; background: transparent; color: var(--brass-deep); cursor: pointer; font-size: .75rem; font-weight: 700; }
.form-message { margin-top: 1rem; }
.form-message:empty { display: none; }
.field-hint { color: var(--ink-soft); font-size: .75rem; font-weight: 400; }
.profile-card { max-width: 700px; margin-inline: auto; }
@media (max-width: 760px) { .auth-page { padding: 2rem 0; } .auth-layout { grid-template-columns: 1fr; } .auth-aside { min-height: 250px; } .auth-aside h1 { margin-top: 2.5rem; } .auth-form { padding: 1.5rem; } .form-actions { align-items: stretch; flex-direction: column; } }
