.auth-page{background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--color-primary) 10%, transparent) 0%, transparent 45%), var(--color-hero-background);justify-content:center;padding:clamp(48px,8vw,96px) 16px clamp(64px,10vw,120px);display:flex}.auth-page__container{width:100%;max-width:560px}.auth-page__container--wide{max-width:720px}.auth-card{border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-background-paper);box-shadow:0 24px 64px color-mix(in srgb, var(--color-grey-900) 6%, transparent);padding:clamp(32px,5vw,48px);position:relative;overflow:hidden}.auth-card:before{content:"";background:linear-gradient(180deg, color-mix(in srgb, var(--color-primary) 5%, transparent) 0%, transparent 120px);pointer-events:none;position:absolute;inset:0}.auth-card__icon{z-index:1;background:var(--color-primary-soft);width:72px;height:72px;color:var(--color-primary-dark);border-radius:50%;place-items:center;margin:0 auto 24px;display:grid;position:relative}.auth-card__header{z-index:1;text-align:center;margin-bottom:32px;position:relative}.auth-card__title{color:var(--color-text-primary);margin:0 0 12px;font-size:clamp(28px,4vw,36px);font-weight:500;line-height:1.2}.auth-card__subtitle{color:var(--color-text-secondary);margin:0;font-size:16px;line-height:1.6}.auth-card__body{z-index:1;position:relative}
.auth-form{flex-direction:column;gap:24px;display:flex}.auth-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.auth-actions{flex-direction:column;gap:12px;display:flex}@media (max-width:640px){.auth-form__grid{grid-template-columns:1fr}}
.auth-field{flex-direction:column;gap:10px;display:flex}.auth-field__label{color:var(--color-text-primary);font-size:15px;font-weight:500;line-height:1.4}.auth-field__control{border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-surface-soft);align-items:center;gap:10px;padding:14px 16px;transition:border-color .15s,box-shadow .15s;display:flex}.auth-field__control:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.auth-field--invalid .auth-field__control{border-color:color-mix(in srgb, var(--color-error) 50%, var(--color-border-default))}.auth-field__input{width:100%;min-width:0;color:var(--color-text-primary);background:0 0;border:none;outline:none;padding:0;font-family:inherit;font-size:16px;line-height:1.5}.auth-field__input::placeholder{color:var(--color-text-faint)}.auth-field__toggle{width:24px;height:24px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;padding:0;transition:color .15s;display:grid}.auth-field__toggle:hover{color:var(--color-primary)}.auth-field__error{color:var(--color-error);font-size:13px;line-height:1.4}
.auth-code{justify-content:center;gap:10px;display:flex}.auth-code__cell{border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-surface-soft);text-align:center;width:48px;height:56px;color:var(--color-text-primary);outline:none;padding:0;font-family:inherit;font-size:22px;font-weight:500;transition:border-color .15s,box-shadow .15s}.auth-code__cell:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}@media (max-width:640px){.auth-code__cell{width:42px;height:50px;font-size:20px}}
.auth-btn{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:10px;width:100%;padding:15px 24px;font-family:inherit;font-size:16px;font-weight:500;line-height:1.5;text-decoration:none;transition:background .18s,color .15s,border-color .15s,opacity .15s;display:inline-flex}.auth-btn:disabled{opacity:.65;cursor:not-allowed}.auth-btn--primary{color:var(--color-primary-contrast-text);background:var(--color-primary)}.auth-btn--primary:hover:not(:disabled){background:var(--color-primary-light)}.auth-btn--outline{border:1px solid var(--color-primary);color:var(--color-primary);background:0 0}.auth-btn--outline:hover:not(:disabled){color:var(--color-primary-contrast-text);background:var(--color-primary)}.auth-btn__icon{object-fit:contain;flex-shrink:0;width:22px;height:22px;display:block}
