/* 로그인·회원가입·약관·비번재설정 페이지 반응형 (모바일·태블릿 세로 한정)
   Phase 2-D 2026-05-20 — PC 무영향 제약 준수
   적용: feature0_auth_login·signup·terms·password_reset HTML */

@media (max-width: 1023px) {
    .auth-container,
    .signup-container,
    .login-container,
    [class*="auth-wrapper"] {
        padding: 16px !important;
    }
    .auth-card,
    .signup-card,
    .login-card {
        max-width: 95vw !important;
        margin: 16px auto !important;
    }
}

@media (max-width: 767px) {
    .auth-card,
    .signup-card,
    .login-card {
        max-width: 100% !important;
        margin: 0 !important;
        padding: 16px !important;
        box-shadow: none !important;
        border-radius: 0 !important;
    }
    /* 폼 필드 — 세로 stack + 폭 100% */
    .auth-form .form-group,
    .signup-form .form-group,
    .login-form .form-group {
        flex-direction: column !important;
        gap: 4px !important;
    }
    .auth-form input,
    .signup-form input,
    .login-form input,
    .auth-form select,
    .signup-form select {
        width: 100% !important;
        min-width: 0 !important;
        font-size: 16px !important;  /* iOS 자동 줌 방지 (16px+) */
        min-height: 44px !important;
    }
    /* 버튼 — 폭 100% + 터치 영역 */
    .auth-form button,
    .signup-form button,
    .login-form button,
    .auth-btn,
    .signup-btn,
    .login-btn {
        width: 100% !important;
        min-height: 48px !important;
        font-size: 15px !important;
    }
    /* 약관 단계 인디케이터 */
    .signup-step-indicator,
    .step-indicator {
        flex-wrap: wrap !important;
        gap: 4px !important;
    }
    /* 약관 본문 가독성 */
    .terms-content {
        font-size: 14px !important;
        line-height: 1.6 !important;
        padding: 12px !important;
    }
}

@media (max-width: 480px) {
    .auth-card,
    .signup-card,
    .login-card {
        padding: 12px !important;
    }
    .auth-header h1,
    .signup-header h1,
    .login-header h1 {
        font-size: 20px !important;
    }
}
