.auth-page { background: #211f1d; }
.auth-main { width: min(560px, calc(100% - 30px)); margin: 42px auto; }
.auth-card { padding: 32px 50px 34px; border: 1px solid #45433f; border-radius: 8px; background: #262522; box-shadow: 0 15px 40px #00000012; }
.auth-tabs { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid #494641; margin-bottom: 30px; }
.auth-tab { background: none; border: 0; border-bottom: 2px solid transparent; padding: 15px; color: #c9c6c0; font-size: 18px; cursor: pointer; }
.auth-tab.active { border-color: #d75a16; color: #e85d0c; font-weight: 600; }
.auth-field { margin: 0 0 23px; }
.auth-field label { display: block; font-size: 13px; font-weight: 600; color: #c8c4bd; margin-bottom: 9px; }
.auth-field input { width: 100%; height: 49px; background: #211f1d; border: 1px solid #45433f; border-radius: 7px; padding: 0 14px; color: #ddd; outline: none; }
.auth-field input:focus { border-color: #398fe0; box-shadow: 0 0 0 2px #398fe022; }
.auth-field small { display: block; color: #8f8b84; font-size: 11px; line-height: 1.55; margin-top: 8px; }
.password-wrap { display: flex; position: relative; }
.password-wrap input { padding-right: 48px; }
.password-wrap button { position: absolute; right: 8px; top: 5px; height: 39px; width: 36px; border: 0; background: none; color: #aaa; cursor: pointer; }
.keep { display: flex; align-items: center; gap: 10px; color: #bcb8b1; font-size: 13px; margin: 0 0 20px; }
.keep input { accent-color: #65a52c; width: 18px; height: 18px; }
.auth-submit { width: 100%; height: 52px; border: 0; border-radius: 7px; background: #398fe0; color: #fff; font-weight: 600; cursor: pointer; }
.auth-submit:hover { background: #4a9ce8; }
.auth-submit:disabled { opacity: .65; cursor: wait; }
.auth-message { min-height: 20px; margin-top: 12px; color: #e6a16d; font-size: 12px; line-height: 1.5; text-align: center; }
.auth-message.success { color: #8fc17a; }
.auth-or { display: flex; align-items: center; gap: 12px; color: #89857e; font-size: 12px; margin: 20px 0 12px; }
.auth-or::before, .auth-or::after { content: ""; height: 1px; background: #45433f; flex: 1; }
.auth-email { display: block; text-align: center; color: #459be8; font-size: 13px; font-weight: 600; padding: 12px; }
.auth-note { text-align: center; color: #8e8a83; font-size: 11px; line-height: 1.6; margin: 18px 20px; }
.confirm-field[hidden] { display: none; }
@media (max-width: 520px) {
  .auth-main { margin: 24px auto; }
  .auth-card { padding: 24px 20px 26px; }
  .auth-tab { font-size: 16px; }
}
.auth-roblox { margin-top: 10px; background: #252a34; border: 1px solid #4a5262; color: #fff; }
.auth-roblox:hover { background: #343c4b; }
.auth-roblox[hidden] { display: none; }
.auth-heading { text-align: center; margin: 0 0 26px; }
.auth-heading h1 { color: #f2f0eb; font-size: 24px; margin: 0 0 12px; }
.auth-heading p, .auth-privacy { color: #aaa69f; font-size: 13px; line-height: 1.65; }
.auth-privacy { margin: 18px 0 0; text-align: center; }
.auth-roblox { margin-top: 0; min-height: 54px; font-size: 15px; background: #398fe0; border: 0; }
.auth-roblox:hover { background: #4a9ce8; }

.auth-legal-links{display:flex;flex-direction:column;gap:8px;margin-top:22px;text-align:center;font-size:.84rem}.auth-legal-links a{color:inherit;opacity:.75;text-decoration:underline;text-underline-offset:3px}.auth-legal-links a:hover{opacity:1}
