.auth-page{min-height:100vh;display:flex;flex-direction:column}
.auth-header{display:flex;justify-content:space-between;align-items:center;padding:28px clamp(24px,6vw,100px);border-bottom:1px solid var(--line)}
.auth-header>a:last-child{font-size:12px;color:var(--muted);text-decoration:none}
.auth-layout{margin:0;max-width:none;padding:65px clamp(24px,6vw,100px);display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,460px);gap:8vw;align-items:center;flex:1}
.auth-story h1{font-size:clamp(42px,5.5vw,76px);max-width:620px;line-height:1.08}
.auth-story .lead{line-height:1.8}
.auth-card{border:1px solid var(--line);border-radius:20px;background:var(--panel);padding:32px}
.auth-card h2{font-size:26px;margin:12px 0}
.form-intro,.form-secondary{font-size:13px;color:var(--muted)}
.auth-card form{margin-top:25px}
.auth-card label{display:block;font-size:12px;margin-top:17px;color:#dbe2d5}
.auth-card input{margin-top:7px;background:#111510;font-size:14px}
.auth-card input:invalid:not(:placeholder-shown):focus{border-color:#e0c48a}
.auth-card .button{width:100%;border:0;display:flex;justify-content:space-between;align-items:center;font:600 14px system-ui;cursor:pointer;min-height:48px;margin-top:25px}
.auth-card button:disabled{opacity:.5;cursor:wait}
.field-hint{font-size:11px;color:var(--muted);margin:6px 0}
.form-secondary{margin-top:24px}.form-secondary a{color:var(--accent)}
.form-message{font-size:14px;line-height:1.7;margin:18px 0 0;color:var(--accent)}
.form-message:empty{display:none}
.road-lines{position:relative;height:160px;max-width:380px;overflow:hidden;margin-top:45px;border-bottom:1px solid #45543d}
.road-lines i{position:absolute;border:1px solid #5a7045;width:420px;height:210px;transform:rotate(-24deg);border-radius:50%;top:35px;left:-50px}
.road-lines i:nth-child(2){top:60px}.road-lines i:nth-child(3){top:85px}
.road-lines span{position:absolute;bottom:12px;right:5px;font:10px ui-monospace,monospace;letter-spacing:2px;background:var(--bg);padding:5px;color:var(--muted)}
.auth-footer{margin:0;padding:20px clamp(24px,6vw,100px);display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px}
.auth-footer span{letter-spacing:0}
@media(max-width:850px){.auth-layout{grid-template-columns:1fr;gap:30px;padding-top:30px}.auth-story h1{font-size:42px;max-width:520px}.road-lines{display:none}.auth-card{width:100%;max-width:540px}.auth-story .lead{font-size:15px}.auth-card{padding:25px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
