class AuthenticationError(Exception):
    """Base exception for authentication errors."""


class RefreshTokenExpiredError(AuthenticationError):
    """Raised when the refresh token has expired and re-login is needed."""


class OAuthCallbackError(AuthenticationError):
    """Raised when the OAuth callback fails (timeout, missing code, etc.)."""
