/* NotificationsPage — the flows, each drawn as its graph. */ .notify-flows { display: flex; flex-direction: column; gap: 0.75em; } .notify-flow-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.5em; } .notify-flow-name { flex: 1 1 auto; min-width: 0; font-weight: 600; overflow-wrap: anywhere; } .notify-flow-state { color: var(--muted); } .notify-flow-actions, .notify-panel-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5em; } .notify-graph { margin-top: 0.4em; } .notify-off { opacity: 0.6; } /* FlowEditorPage — the head row, the canvas and the inspector beside it. */ .notify-editor-head { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 0.75em 1em; margin-bottom: 1em; padding-bottom: 1em; border-bottom: 1px solid var(--border); } .notify-editor-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5em; margin-left: auto; } .notify-editor-body { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 1em; } .notify-canvas-wrap { flex: 1 1 24em; min-width: 0; } .notify-palette { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5em; margin-bottom: 0.5em; } .notify-chip { padding: 0.2em 0.7em; border: 1.5px solid var(--border); border-radius: 999px; background: var(--bg-elev); color: var(--fg); font: inherit; cursor: grab; touch-action: none; } .notify-chip-match { border-color: var(--purple); } .notify-chip-todo { border-color: var(--green); } .notify-chip-request_reviewer { border-color: var(--green); } .notify-ghost { position: fixed; z-index: 10; padding: 0.2em 0.6em; border: 1.5px solid var(--fg); border-radius: 6px; background: var(--bg-elev); color: var(--fg); pointer-events: none; } .notify-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; } .notify-canvas { max-height: 70vh; user-select: none; overflow: auto; border: 1px solid var(--border); border-radius: 6px; background: var(--bg); } .notify-edge { fill: none; stroke: var(--muted); stroke-width: 1.5; } .notify-box { cursor: grab; touch-action: none; } .notify-box-source { cursor: pointer; } .notify-box-carried { opacity: 0.45; } .notify-box.notify-box-target rect { stroke: var(--green); stroke-width: 3; } .notify-box.notify-box-refused rect { stroke: var(--red); stroke-width: 3; stroke-dasharray: 5 3; } .notify-box rect { fill: var(--bg-elev); stroke: var(--border); stroke-width: 1.5; } .notify-box-source rect { stroke: var(--blue); } .notify-box-match rect { stroke: var(--purple); } .notify-box-todo rect, .notify-box-request_reviewer rect { stroke: var(--green); } .notify-box:focus { outline: none; } .notify-box:focus rect, .notify-box-selected rect { stroke: var(--fg); stroke-width: 2.5; } .notify-box text { fill: var(--fg); font-size: 12px; pointer-events: none; } .notify-box .notify-box-kind { fill: var(--muted); font-size: 10px; } /* The box's line of text is cut by the browser at the box's own edge. */ .notify-box-text { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--fg); font-size: 12px; line-height: 16px; pointer-events: none; } .notify-inspector { flex: 0 1 22em; min-width: 16em; gap: 0.75em; } .notify-inspector h4 { margin: 0; } .notify-inspector fieldset { display: flex; flex-direction: column; gap: 0.6em; margin: 0; padding: 0.6em 0.8em 0.8em; border: 1px solid var(--border); border-radius: 6px; } .notify-inspector legend { padding: 0 0.4em; color: var(--muted); font-size: 0.9em; } .notify-condition { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 0.5em; margin-bottom: 0.4em; } .notify-inspector-actions { display: flex; flex-wrap: wrap; gap: 0.5em; margin-bottom: 0.75em; } .notify-node-id, .notify-hint { color: var(--muted); font-size: 0.85em; } .notify-stale, .notify-notice { margin-bottom: 0.5em; padding: 0.4em 0.6em; border: 1px solid var(--red); border-radius: 6px; } .notify-name { flex: 0 1 24em; } /* The dry run's header line, and the router's "not available". */ .notify-dry-run { margin: 0; color: var(--muted); font-size: 0.9em; } .notify-unavailable { margin: 0; color: var(--muted); } .notify-failed { color: var(--red); }