.auth-form{gap:1rem;display:grid}.auth-form__hint{color:var(--color-text-muted);margin:0;line-height:1.55}.auth-field select{background:var(--color-surface);width:100%;min-height:3.25rem;color:var(--color-text);font:inherit;border:1px solid #f7c4da;border-radius:1.25rem;padding:0 .85rem;box-shadow:0 .875rem 1.5rem -.625rem #ef227b1f}.auth-country-phone{gap:.4rem;display:grid}.auth-field{color:var(--color-text);gap:.4rem;font-size:.9rem;font-weight:650;display:grid}.auth-field input{width:100%;min-height:52px;color:var(--color-text);background:var(--color-surface);border:1px solid #f7c4da;border-radius:1.25rem;outline:none;padding:.75rem 1rem;box-shadow:0 .875rem 1.5rem -.625rem #ef227b1f}.auth-field__control{display:block;position:relative}.auth-field__control:has(.auth-field__actions) input{padding-right:5.25rem}.auth-field__actions{gap:.1rem;display:flex;position:absolute;top:50%;right:.45rem;transform:translateY(-50%)}.auth-field__action{width:2.25rem;height:2.25rem;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.auth-field__action:hover{color:var(--color-text);background:var(--color-surface-subtle)}.auth-field__action:focus-visible{outline:3px solid var(--color-focus)}.auth-field__action svg{width:1.2rem;height:1.2rem}.auth-field input:focus{box-shadow:0 0 0 3px var(--color-focus);border-color:#ef227b}.auth-country-phone__input>div:last-child>div:last-child{border-color:#f7c4da;border-radius:1.25rem;min-height:52px;box-shadow:0 .875rem 1.5rem -.625rem #ef227b1f}.auth-country-phone__input>div:last-child>div:last-child:focus-within{border-color:#ef227b}.auth-form>.ui-button[type=submit]{text-transform:uppercase;border-radius:1.25rem;box-shadow:0 .875rem 1.5rem -.625rem #ef227b38}.auth-field input[aria-invalid=true]{border-color:#dc2626}.auth-otp{border:0;gap:.55rem;min-width:0;margin:0;padding:0;display:grid}.auth-otp legend{color:var(--color-text);margin-bottom:.4rem;font-size:.9rem;font-weight:650}.auth-otp__inputs{justify-content:center;gap:clamp(.45rem,2.5vw,.75rem);display:flex}.auth-otp__inputs input{border:1px solid var(--color-border);border-radius:var(--radius-control);width:clamp(2.75rem,14vw,3.5rem);min-height:3.5rem;color:var(--color-text);background:var(--color-surface);font:inherit;text-align:center;outline:none;padding:.4rem;font-size:1.35rem;font-weight:750}.auth-otp__inputs input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus)}.auth-otp[aria-invalid=true] .auth-otp__inputs input{border-color:#dc2626}.auth-field__error,.auth-form__error{color:#dc2626;font-weight:550}.auth-form__notice{color:#15803d;font-weight:600}.auth-form__decision{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-subtle);gap:.55rem;padding:.8rem;display:grid}.auth-form__decision p{margin:0;line-height:1.5}.auth-form__decision a{width:fit-content;color:var(--color-primary);font-weight:750}.auth-form__step{color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .35rem;font-size:.75rem;font-weight:800}.auth-form h2{margin:0 0 .45rem}.auth-policy-list{gap:.65rem;display:grid}.auth-policy-list article{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);gap:.2rem;padding:.85rem;display:grid}.auth-policy-list span{color:var(--color-text-muted);font-size:.85rem}.auth-policy-consent{grid-template-columns:auto 1fr;align-items:start;gap:.7rem;line-height:1.5;display:grid}.auth-policy-consent input{width:1.15rem;height:1.15rem;accent-color:var(--color-primary);margin-top:.15rem}.auth-policy-list .auth-policy-consent__content{gap:.15rem;display:grid}.auth-policy-consent__link{width:fit-content;color:var(--color-text);text-decoration:underline;-webkit-text-decoration-color:var(--color-primary);text-decoration-color:var(--color-primary);text-underline-offset:.2em;font-size:1rem;font-weight:750;line-height:1.4;text-decoration-thickness:.1em}.auth-policy-consent__link:hover{color:var(--color-primary)}.auth-policy-consent__link:focus-visible{outline:3px solid var(--color-focus);outline-offset:.2rem;border-radius:.2rem}.auth-policy-list .auth-policy-consent__meta{color:var(--color-text-muted);font-size:.78rem}.auth-form__error,.auth-form__notice{border-radius:var(--radius-control);background:var(--color-surface-subtle);margin:0;padding:.7rem .8rem;line-height:1.45}.auth-form__footer{color:var(--color-text-muted);text-align:center;margin:0}.auth-form__footer a,.auth-secondary-link{color:var(--color-primary);font-weight:700}.auth-social-actions{grid-template-columns:repeat(2,48px);justify-content:center;column-gap:clamp(2rem,14vw,5rem);padding-top:1.75rem;display:grid;position:relative}.auth-social-actions:before{color:var(--color-text-muted);content:"Hoặc tiếp tục với";white-space:nowrap;padding:0 .65rem;font-size:.78rem;position:absolute;top:0;left:50%;transform:translate(-50%)}.auth-social-provider-slot{place-items:center;min-width:0;min-height:48px;display:grid;position:relative}.auth-social-unavailable{place-items:center;width:48px;min-height:48px;display:grid;position:relative}.auth-social-button{visibility:hidden;place-items:center;width:48px;min-height:48px;line-height:0;display:grid}.auth-social-button.is-ready{visibility:visible}.auth-social-button iframe{margin:auto;display:block}.auth-social-button [role=button] *{box-sizing:content-box}.ui-button.auth-google-button{color:#3c4043;background:#fff;border-color:#dadce0}.ui-button.auth-google-button:hover:not(:disabled){background:#f8fafd}.ui-button.auth-social-icon-button{border-width:1px;border-radius:.3rem;place-self:center;width:48px;max-width:none;height:48px;min-height:48px;padding:.65rem}.auth-social-provider-icon{width:1.125rem;height:1.125rem;display:block}.auth-social-icon-placeholder{border:1px solid #dadce0;border-radius:.3rem;place-items:center;width:48px;height:48px;display:grid;position:absolute}.ui-button.auth-apple-button{color:#fff;background:#000;border-color:#000}.ui-button.auth-apple-button:hover:not(:disabled){background:#1f1f1f}.auth-social-unavailable-message{color:var(--color-text-muted);margin:0;line-height:1.55}
