/* 로그인 선택 위젯 — SSOT 1·11절. 다른 로그인 폼/공용 레이아웃과 분리한다. */
.auth-choice.login { inline-size: 100%; max-inline-size: var(--sonub-form-width); gap: var(--wa-space-l); margin-inline: auto; padding: clamp(1rem,3vw,2.25rem); border-block-start: 3px solid var(--sonub-accent); border-radius: var(--sonub-radius-panel); background: var(--sonub-surface); }
.auth-choice .auth-choice-heading { display: flex; align-items: center; gap: var(--wa-space-m); }
.auth-choice .auth-choice-heading h1 { min-inline-size: 0; margin: 0; padding: 0; overflow-wrap: anywhere; }
.auth-choice .login-buttons { display: grid; gap: var(--wa-space-m); }
.auth-choice .login-buttons wa-button::part(base) { min-block-size: 3.5rem; border-radius: var(--wa-border-radius-l); font-size: calc(1rem * var(--wa-font-size-scale,1)); line-height: 1.5; }
.auth-choice .login-buttons wa-button::part(label) { white-space: normal; padding-block: var(--wa-space-s); overflow-wrap: anywhere; }
.auth-choice .login-buttons i { font-size: calc(1.125rem * var(--wa-font-size-scale,1)); }
.auth-choice .login-buttons wa-button::part(start) { align-self: center; }
.auth-choice .login-buttons wa-button::part(label) { flex: 1; }
.auth-choice .auth-choice-password::part(base) { background: var(--wa-color-brand-fill-quiet); border-color: var(--wa-color-brand-border-normal); color: var(--wa-color-brand-on-quiet); }
.auth-choice .login-buttons wa-button:focus-within::part(base) { outline: 2px solid var(--sonub-accent); outline-offset: 3px; }
.auth-choice .form-errors { overflow-wrap: anywhere; }
.auth-choice .login-test button { min-block-size: 2.75rem; padding-inline: var(--wa-space-s); }
.auth-choice wa-dialog { --width: var(--sonub-form-width); }
.auth-choice wa-dialog::part(title) { font-size: calc(1.25rem * var(--wa-font-size-scale,1)); overflow-wrap: anywhere; }
.auth-choice wa-dialog::part(body) { font-size: calc(1rem * var(--wa-font-size-scale,1)); line-height: 1.75; }
.auth-choice wa-dialog wa-button::part(base) { min-block-size: 2.75rem; font-size: calc(1rem * var(--wa-font-size-scale,1)); }
@media (max-width: 599px) { .auth-choice.login { margin-block: var(--wa-space-m); } }

.auth-choice wa-dialog::part(close-button) { min-inline-size: 2.75rem; min-block-size: 2.75rem; }
.auth-choice wa-dialog::part(footer) { flex-wrap: wrap; gap: var(--wa-space-s); }
