@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/ibm-plex-YHB-bFe.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-YHB-bFe.woff2") format("woff2")}
.auth-page{background:#f4f1ea;color:#111;min-height:100vh;font-family:"IBM Plex Sans","Segoe UI",sans-serif}
.auth-page .site-header{background:#fffdf8;border-bottom:1px solid #d7d0c7;box-shadow:none}
.auth-page .brand span{color:#b33d17}
.auth-page .page-shell{padding:clamp(24px,5vw,64px) 16px 36px}
.auth-shell{width:100%;max-width:480px;margin:0 auto}
.auth-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:14px;font-size:14px;color:#645f57;text-decoration:none}
.auth-back:hover,.auth-page a:hover{text-decoration:underline}
.auth-card{padding:clamp(22px,5vw,40px);border:1px solid #d7d0c7;border-radius:24px;background:#fffdf8;box-shadow:0 16px 50px #11111108}
.auth-eyebrow{font:400 11px "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:#a83715}
.auth-card h1{font-size:clamp(28px,5vw,36px);line-height:1.12;letter-spacing:-.035em;margin:16px 0 12px;overflow-wrap:anywhere}
.auth-intro{margin:0 0 28px;color:#645f57;line-height:1.55}
.auth-card fieldset{display:grid;gap:20px;min-width:0;padding:0;margin:0;border:0}
.auth-field{display:grid;gap:8px;font-size:14px;font-weight:600}
.auth-field input{width:100%;min-width:0;min-height:50px;padding:12px 14px;border:1px solid #aaa197;border-radius:12px;background:#fff;color:#111;font:400 16px "IBM Plex Sans","Segoe UI",sans-serif}
.auth-field input[aria-invalid=true]{border-color:#a32626;background:#fff8f7}
.auth-page :focus-visible{outline:3px solid #245ca5;outline-offset:3px}
.auth-password{display:grid;gap:8px}
.auth-password small{display:block;color:#645f57;line-height:1.5;font-size:13px}
.auth-reveal{justify-self:start;min-height:44px;padding:4px 0;border:0;background:transparent;color:#645f57;text-decoration:underline;text-underline-offset:3px;font:inherit;font-size:13px;cursor:pointer}
.auth-submit{width:100%;min-height:50px;padding:12px 16px;border:1px solid #111;border-radius:999px;background:#111;color:#fff;font:600 16px "IBM Plex Sans","Segoe UI",sans-serif;cursor:pointer}
.auth-submit:hover{background:#333}
.auth-bitrix{display:flex;align-items:center;justify-content:center;text-align:center;min-height:50px;margin-top:16px;padding:12px 16px;border:1px solid #3572a5;border-radius:999px;color:#175e97;background:#eef7ff;font-weight:600;text-decoration:none}
.auth-card fieldset:disabled .auth-submit{background:#555;border-color:#555;cursor:wait}
.auth-card fieldset:disabled input,.auth-card fieldset:disabled .auth-reveal{opacity:.65}
.auth-status{margin:18px 0 0;line-height:1.5;font-size:14px;color:#a32626;overflow-wrap:anywhere}
.auth-status:empty{display:none}
.auth-card[data-state=pending] .auth-status,.auth-card[data-state=success] .auth-status{color:#245b40}
.auth-footer{border-top:1px solid #d7d0c7;padding-top:22px;margin:24px 0 0;font-size:14px;line-height:1.6;color:#645f57}
.auth-footer a{color:#a83715;font-weight:600;text-underline-offset:3px}
.auth-caption{text-align:center;color:#645f57;font-size:12px;line-height:1.5;margin:22px 0 0}
@media(max-width:380px){.auth-page .site-header{gap:16px}.auth-page nav{font-size:14px}.auth-card{padding:22px 20px}.auth-page .page-shell{padding-inline:12px}}
