/* Оформление карточек регистрации и восстановления пароля */
.reg2 { display: flex; justify-content: center; padding: 40px 16px 64px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Montserrat", Roboto, Helvetica, Arial, sans-serif; }
.reg2 * { box-sizing: border-box; }
.reg2-card { width: 100%; max-width: 480px; background: #fff; border: 1px solid #ececec; border-radius: 32px; padding: 40px 36px; box-shadow: 0 4px 24px rgba(0,0,0,.04), 0 16px 48px rgba(0,0,0,.06); }
.reg2-head { text-align: center; margin-bottom: 28px; }
.reg2-title { font-size: 30px; line-height: 1.2; font-weight: 700; margin: 0 0 10px; color: #191918; letter-spacing: -.02em; }
.reg2-sub { margin: 0; font-size: 16px; color: #6b6b68; line-height: 1.5; }
.reg2-oauth-title { margin: 0 0 14px; text-align: center; font-size: 20px; font-weight: 700; color: #191918; letter-spacing: -.01em; }
.reg2-oauth { display: grid; gap: 12px; }
.reg2-btn { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 56px; padding: 0 20px; border-radius: 14px; font-size: 17px; font-weight: 600; line-height: 1; text-decoration: none; cursor: pointer; border: 0; transition: background-color .15s ease, box-shadow .15s ease, transform .05s ease; font-family: inherit; }
.reg2-btn:active { transform: translateY(1px); }
.reg2-btn-secondary { background: #f4f4f2; color: #191918; box-shadow: inset 0 0 0 1px #e6e6e2; }
.reg2 .reg2-btn-secondary:hover, .reg2 .reg2-btn-secondary:focus { background: #ececea; text-decoration: none; color: #191918; }
.reg2 .reg2-btn-primary { background: #1979bf; color: #fff; margin-top: 16px; }
.reg2 .reg2-btn-primary:hover, .reg2 .reg2-btn-primary:focus, .reg2 .reg2-btn-primary:active { background: #2e8bd9; color: #fff; text-decoration: none; }
.reg2-btn-ico { display: inline-flex; }
.reg2-or { display: flex; align-items: center; gap: 14px; margin: 22px 0; color: #8c8c88; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.reg2-or::before, .reg2-or::after { content: ""; flex: 1; height: 1px; background: #ececec; }
.reg2-label { display: block; font-size: 14px; font-weight: 600; color: #3d3d3a; margin-bottom: 8px; }
.reg2 input.reg2-input { display: block; width: 100%; min-height: 58px; padding: 16px 20px; margin: 0; font-size: 17px; font-family: inherit; color: #191918; background: #fbfbfa; border: 1px solid #e2e2de; border-radius: 14px; outline: none; transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease; }
.reg2 input.reg2-input::placeholder { color: #a5a5a0; }
.reg2 input.reg2-input:hover { border-color: #d2d2cc; }
.reg2 input.reg2-input:focus { background: #fff; border-color: #1979bf; box-shadow: 0 0 0 3px rgba(25,121,191,.16); }
.reg2-field { margin-bottom: 20px; }
.reg2-hint { margin: 0; font-size: 13px; color: #8c8c88; line-height: 1.4; }
.reg2-error { margin: 8px 0 0; font-size: 14px; color: #c0392b; }
.reg2-notice { margin: 10px 0 0; padding: 12px 14px; border-radius: 12px; background: #fffbea; color: #6b5a1e; font-size: 14px; line-height: 1.45; }
.reg2-notice p { margin: 0; }
.reg2-notice-links { margin-top: 8px !important; font-weight: 600; }
.reg2-notice a { color: #1979bf; }
.reg2 .reg2-btn-primary.is-loading { opacity: .7; pointer-events: none; }
.reg2-form { margin: 0; }
.reg2-check { display: flex; align-items: center; gap: 10px; margin: 2px 0 4px; font-size: 15px; color: #3d3d3a; cursor: pointer; }
.reg2 .reg2-check input[type="checkbox"] { width: 20px; height: 20px; margin: 0; accent-color: #1979bf; cursor: pointer; }
.reg2-alert { border-radius: 16px; padding: 16px 18px; margin-bottom: 22px; font-size: 15px; line-height: 1.5; }
.reg2-alert ul { margin: 8px 0 0; padding-left: 20px; }
.reg2-alert li { margin: 4px 0; }
.reg2-alert-error { background: #fdf0ee; color: #96331f; }
.reg2-alert-links { margin: 12px 0 0; font-weight: 600; }
.reg2-alert-links a { color: #96331f; text-decoration: underline; }
.reg2-alert-info { background: #f4f4f2; color: #4a4a46; }
.reg2-captcha { min-height: 100px; }
.reg2-back { display: block; width: 100%; margin-top: 18px; padding: 10px; background: none; border: 0; color: #6b6b68; font-size: 15px; font-family: inherit; cursor: pointer; }
.reg2-back:hover { color: #191918; }
.reg2-message { margin: 0; text-align: center; font-size: 17px; line-height: 1.6; color: #3d3d3a; }
.reg2-message a { color: #1979bf; }
.reg2-message-link { margin: 18px 0 0; text-align: center; font-size: 16px; font-weight: 600; }
.reg2-message-link a { color: #1979bf; }
.reg2-legal { margin: 26px 0 0; text-align: center; font-size: 13px; line-height: 1.6; color: #8c8c88; }
.reg2-legal p { margin: 0 0 4px; }
.reg2-legal p:last-child { margin-bottom: 0; }
.reg2-legal a { color: #6b6b68; text-decoration: underline; }
#brd-register #req-msg, #brd-register .main-head, #brd-register .main-subhead,
#brd-register #brd-visit, #brd-register #brd-crumbs-top, #brd-register #brd-crumbs-end,
#brd-register .main-title,
#brd-reqpass #req-msg, #brd-reqpass .main-head, #brd-reqpass .main-subhead,
#brd-reqpass #brd-visit, #brd-reqpass #brd-crumbs-top, #brd-reqpass #brd-crumbs-end,
#brd-reqpass .main-title,
#brd-login #req-msg, #brd-login .main-head, #brd-login .main-subhead, #brd-login .content-head,
#brd-login #brd-visit, #brd-login #brd-crumbs-top, #brd-login #brd-crumbs-end,
#brd-login .main-title,
#brd-message #req-msg, #brd-message .main-head, #brd-message .main-subhead,
#brd-message #brd-visit, #brd-message #brd-crumbs-top, #brd-message #brd-crumbs-end,
#brd-message .main-title,
#brd-profile-changepass #req-msg, #brd-profile-changepass .main-head, #brd-profile-changepass .main-subhead,
#brd-profile-changepass #brd-visit, #brd-profile-changepass #brd-crumbs-top, #brd-profile-changepass #brd-crumbs-end,
#brd-profile-changepass .main-title, #brd-profile-changepass .main-menu { display: none; }
@media (max-width: 520px) {
	.reg2 { padding: 20px 12px 48px; }
	.reg2-card { padding: 28px 20px; border-radius: 24px; }
	.reg2-title { font-size: 26px; }
}
