Путь роли по экранам (user-flow). Узлы — экраны S-NN, события и решения; тип кодируется цветом (словарь §5). Внешние системы — пунктиром. Граф 1:1 с Mermaid-каноном cashier-open-shift.md.
user-flows/cashier-open-shift.md.
%%{init:{"theme":"base","themeVariables":{"fontFamily":"Hanken Grotesk, ui-sans-serif, sans-serif","fontSize":"14px","lineColor":"#5a4d3d","primaryColor":"#f6e6cd","primaryBorderColor":"#d5842a","primaryTextColor":"#241b12","clusterBkg":"#fbf7ef","clusterBorder":"#d0c1a6","edgeLabelBackground":"#fbf7ef"},"flowchart":{"curve":"basis","nodeSpacing":40,"rankSpacing":52,"htmlLabels":true,"useMaxWidth":false,"padding":16}}}%%
flowchart TD
Start(["Кассир подошёл к терминалу"]) --> S01["S-01 · Экран блокировки"]
S01 --> AUTH{"PIN или MSR-карта"}
AUTH -->|"не найден / нет доступа"| ERR["Отказ доступа"]
ERR --> S01
AUTH -->|успешно| OPENED{"Смена на терминале
уже открыта?"}
OPENED -->|"да (повторный вход)"| S02["S-02 · Экран заказа"]
OPENED -->|нет| S01B["S-01 · Открытие смены —
ввод стартовых наличных (размен)"]
S01B --> XR["Печать нулевого X-отчёта"]
XR --> S02
classDef screen fill:#e5ecf6,stroke:#5b7bb0,color:#243a5f;
classDef gate fill:#f8e8cf,stroke:#c9791f,color:#7a4a10;
classDef event fill:#dcefe1,stroke:#3c8a5b,color:#1c4a30;
classDef stop fill:#f6dcd5,stroke:#bc3f2b,color:#7a241c;
class S01,S01B,S02,XR screen;
class AUTH,OPENED gate;
class Start event;
class ERR stop;