@startuml
actor Guardian
actor User
participant "GuardianPairingScreen" as GUI
participant "PairingController" as Controller
participant "PairingService" as Service
database "PostgreSQL" as DB
participant "FcmService" as FCM

Guardian -> GUI : input uniqueUserId
GUI -> Controller : POST /shared/pairing/invite
Controller -> Service : inviteUser(guardianId, uniqueUserId)
Service -> DB : validate and create PENDING relation
Service -> FCM : notify user
Service --> Controller : PairingStatusResponse
Controller --> GUI : invite status

User -> Controller : POST /shared/pairing/respond
Controller -> Service : respondToPairing(userId, pairingId, accept)
Service -> DB : update ACTIVE/REJECTED
Service -> DB : seed default AI/voice/shortcut configs
Service -> FCM : notify guardian
@enduml
