.b2v-auth { width: min(100% - 32px, 520px); margin: 56px auto 80px; color: #20382f; }
.b2v-auth h1 { font-size: 30px; line-height: 1.2; letter-spacing: 0; }
.b2v-auth-form { display: grid; gap: 20px; margin: 28px 0; }
.b2v-auth-form label { display: grid; gap: 8px; font-weight: 600; }
.b2v-auth-form input:not([type=checkbox]) { width: 100%; min-width: 0; box-sizing: border-box; height: 48px; padding: 10px 14px; border: 1px solid #b7c4be; border-radius: 4px; font: inherit; color: #20382f; background: #fff; }
.b2v-auth-password { display: flex; position: relative; }
.b2v-auth-password input { padding-right: 50px !important; }
.b2v-auth-password button { position: absolute; right: 0; top: 0; width: 48px; height: 48px; border: 0; background: transparent; cursor: pointer; color: #28609e; }
.b2v-auth-form .b2v-auth-check { display: block; font-size: 14px; font-weight: 400; }
.b2v-auth-check input { margin-right: 8px; }
.b2v-auth-links { display: flex; flex-wrap: wrap; gap: 12px 22px; font-size: 14px; }
.b2v-auth-error, .b2v-auth-status { padding: 16px; border-left: 3px solid #a83535; background: #fff3f3; }
.b2v-auth-status { border-color: #308268; background: #edf7f0; }
@media (max-width: 600px) { .b2v-auth { margin-top: 32px; } .b2v-auth h1 { font-size: 26px; } }
