/* Task Helper — "Workflow…" sheet (BRIEF-1268 S2). Copyright Rapid Surveys Pty Ltd. App tokens only; namespace fsp-.
 * z-index 66: above the phone's Jobs page (60), its menus (62) and move sheet (63), as TABLES' sheets (65). */
.fsp-ov { position: fixed; inset: 0; z-index: 66; display: flex; align-items: flex-start; justify-content: center; padding: 24px 16px; background: rgba(20, 28, 40, .45); overflow-y: auto; }
.fsp-ov[hidden] { display: none; }
.fsp-card { width: 100%; max-width: 520px; background: var(--card); color: var(--ink); border-radius: 14px; box-shadow: 0 16px 48px rgba(0, 0, 0, .25); padding: 18px 18px 16px; display: grid; gap: 12px; align-content: start; }
#fspSheet .fsp-title { margin: 0; font-size: 19px; font-weight: 700; color: var(--ink); text-transform: none; letter-spacing: normal; overflow-wrap: anywhere; }
.fsp-what, .fsp-note { margin: 0; font-size: 14px; color: var(--muted); }
.fsp-list { border: 0; margin: 0; padding: 0; display: grid; gap: 6px; }
.fsp-legend { padding: 0; margin: 0 0 4px; font-size: 13px; font-weight: 600; color: var(--muted); }
.fsp-opt { display: flex; align-items: flex-start; gap: 10px; min-height: 44px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; cursor: pointer; }
.fsp-opt:has(input:checked) { border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent); }
.fsp-opt input { margin: 3px 0 0; flex: none; width: 18px; height: 18px; }
.fsp-name { display: block; font-weight: 600; overflow-wrap: anywhere; }
.fsp-sub { display: block; font-size: 13px; color: var(--muted); overflow-wrap: anywhere; }
.fsp-lock { display: flex; align-items: center; gap: 10px; min-height: 44px; font-size: 14px; }
.fsp-lock[hidden] { display: none; }
.fsp-lock input { width: 18px; height: 18px; margin: 0; flex: none; }
.fsp-msg { margin: 0; }
.fsp-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.fsp-actions button { width: auto; min-height: 44px; }
.fsp-actions .ghost { background: var(--bg); color: var(--ink); border: 1px solid var(--line); }
.fsp-link { margin-left: auto; background: transparent; border: 0; color: var(--accent); font-weight: 600; padding: 8px 4px; }
@media (max-width: 767px) { .fsp-ov { padding: 0; background: var(--card); } .fsp-card { max-width: none; min-height: 100%; border-radius: 0; box-shadow: none; padding-top: calc(18px + env(safe-area-inset-top)); } }
