.auth-age-declaration { margin: 18px 0 16px; border: 1px solid var(--card-border, #AA88B7); border-radius: var(--radius-card); padding: 14px; background: var(--input); text-align: start; }
.auth-age-declaration__scope { margin: 0 0 8px; color: var(--muted); font-size: .82rem; }
.auth-age-declaration__label { display: flex; align-items: flex-start; gap: 10px; color: var(--ink); font-size: .88rem; font-weight: 600; }
.auth-age-declaration__label input { flex: 0 0 22px; width: 22px; height: 22px; min-height: 22px; margin: 2px 0 0; accent-color: var(--violet); }
.auth-age-declaration__error { margin: 10px 0 0; color: var(--danger); font-size: .82rem; font-weight: 700; }
.auth-provider-button { display: flex; align-items: center; justify-content: center; gap: 12px; text-align: center; }
.auth-provider-icon { flex: 0 0 20px; width: 20px; height: 20px; }
.button--google { border: 1px solid #747775; border-radius: 5px; background: #fff; box-shadow: none; color: #3c4043; font-weight: 600; }
.button--apple { min-height: 50px; border: 0; border-radius: 8px; background: #000; box-shadow: none; color: #fff; font-weight: 600; }
.auth-locale-form { display: grid; min-width: 0; gap: 8px; margin: 4px 0 16px; text-align: start; }
.auth-locale-form label { font-size: .82rem; font-weight: 600; }
.auth-locale-form select { width: 100%; min-width: 0; min-height: 46px; border: 1px solid var(--card-border, #AA88B7); border-radius: var(--radius-control); padding: 7px 10px; background: var(--input); color: var(--ink); font: inherit; }
.auth-locale-form .button { min-height: 44px; justify-self: start; border-radius: var(--radius-control); white-space: normal; text-align: start; }
.auth-locale-form select:focus-visible { outline: 3px solid rgb(112 73 131 / 52%); outline-offset: 2px; }
