.auth-body { min-height: 100vh; overflow-x: hidden; }
.auth-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(420px, .95fr) minmax(460px, 1.05fr); }
.auth-brand-panel { position: relative; min-height: 100vh; border-right: 1px solid var(--color-border-soft); overflow: hidden; background: linear-gradient(155deg, #111113 0%, #09090a 72%); }
.auth-brand-panel::before { content: ""; position: absolute; width: 620px; height: 620px; left: -270px; bottom: -280px; border-radius: 50%; background: radial-gradient(circle, rgba(212,175,55,.15), transparent 66%); }
.auth-brand-panel::after { content: ""; position: absolute; width: 1px; height: 52%; right: 15%; top: 23%; background: linear-gradient(transparent, rgba(212,175,55,.3), transparent); transform: rotate(28deg); }
.auth-brand-inner { position: relative; z-index: 1; min-height: 100vh; padding: 58px clamp(42px, 7vw, 100px); display: flex; flex-direction: column; }
.auth-editorial { margin: auto 0; max-width: 620px; }
.auth-editorial h1 { margin: 20px 0 28px; font-family: var(--font-display); font-size: clamp(66px, 7vw, 112px); line-height: .88; font-weight: 400; letter-spacing: -.045em; }
.auth-editorial h1 em { color: var(--color-gold-bright); font-weight: 400; }
.auth-editorial p { max-width: 510px; margin: 0; color: var(--color-text-soft); font-size: 15px; line-height: 1.8; }
.auth-security-line { display: flex; align-items: center; gap: 10px; color: var(--color-muted); font-size: 10px; letter-spacing: .08em; }
.auth-security-line i { width: 7px; height: 7px; border-radius: 50%; background: var(--color-success); box-shadow: 0 0 16px rgba(85,199,154,.55); }
.auth-form-panel { min-height: 100vh; padding: 42px; display: grid; place-items: center; background: radial-gradient(circle at 85% 20%, rgba(212,175,55,.055), transparent 25rem); }
.auth-form-card { width: min(100%, 470px); padding: 46px; border: 1px solid var(--color-border-soft); border-radius: 28px; background: linear-gradient(155deg, rgba(255,255,255,.035), rgba(255,255,255,.012)); box-shadow: 0 35px 90px rgba(0,0,0,.28); }
.auth-form-card h2 { margin: 12px 0 10px; font-family: var(--font-display); font-size: 46px; line-height: 1; font-weight: 400; }
.auth-intro { margin: 0 0 30px; color: var(--color-muted); font-size: 13px; line-height: 1.7; }
.auth-form { display: grid; gap: 18px; }
.field { display: grid; gap: 8px; }
.field > span { color: var(--color-text-soft); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.field input { width: 100%; height: 52px; padding: 0 15px; border: 1px solid var(--color-border-soft); border-radius: 12px; outline: none; color: var(--color-text); background: #0d0d0f; transition: border-color var(--transition), box-shadow var(--transition); }
.field input:focus { border-color: rgba(212,175,55,.5); box-shadow: 0 0 0 3px rgba(212,175,55,.06); }
.field input::placeholder { color: #56534e; }
.remember-line { display: flex; align-items: center; gap: 10px; color: var(--color-muted); font-size: 11px; cursor: pointer; }
.remember-line input { accent-color: var(--color-gold); }
.auth-submit { width: 100%; margin-top: 5px; cursor: pointer; }
.auth-message { margin: 0 0 18px; padding: 12px 14px; border: 1px solid var(--color-border-soft); border-radius: 11px; font-size: 11px; line-height: 1.55; }
.auth-message.is-error { color: #f2a9a9; border-color: rgba(224,93,93,.24); background: rgba(224,93,93,.06); }
.auth-message.is-success { color: #99d9bb; border-color: rgba(85,199,154,.2); background: rgba(85,199,154,.055); }
.auth-message.is-info { color: var(--color-champagne); border-color: rgba(212,175,55,.18); background: rgba(212,175,55,.045); }
.auth-footnote { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--color-border-soft); color: #69655f; font-size: 10px; line-height: 1.65; }
@media (max-width: 900px) { .auth-shell { grid-template-columns: 1fr; } .auth-brand-panel { min-height: 390px; border-right: 0; border-bottom: 1px solid var(--color-border-soft); } .auth-brand-inner { min-height: 390px; padding: 38px 28px; } .auth-editorial h1 { font-size: 64px; } .auth-security-line { display: none; } .auth-form-panel { min-height: auto; padding: 42px 20px 70px; } }
@media (max-width: 520px) { .auth-brand-panel { min-height: 330px; } .auth-brand-inner { min-height: 330px; } .auth-editorial h1 { font-size: 52px; } .auth-editorial p { font-size: 13px; } .auth-form-card { padding: 30px 22px; border-radius: 22px; } .auth-form-card h2 { font-size: 39px; } }
