@startuml ArchitectureDiagram

!include ../../style.puml


' Define components with default styles
package LogJob{
    [UI] UI_COLOR
    [Logic]LOGIC_COLOR
    [Model]MODEL_COLOR
    [Storage]STORAGE_COLOR
    [Main]#grey
}

' External file storage
rectangle "File" as File #palegreen

' Relationships
User -left[#black]> UI
Main -[#grey]> UI
Main -[#grey]> Logic
Main --[#grey]> Model
Main --[#grey]> Storage
UI -[UI_COLOR]-> Model
Logic -[LOGIC_COLOR]-> UI
Logic -[LOGIC_COLOR]-> Storage
Logic -[LOGIC_COLOR]-> Model
Storage -up[STORAGE_COLOR].> Model
Storage -right[STORAGE_COLOR].> File

' Define legend as a separate box
rectangle "===Legend\n→ : Association\n--> : Transient Dependency" as LEGEND #lightgrey

' Invisible layout link to push legend to the right
UI -[hidden]-> LEGEND



@enduml