.diagram-editing{align-items:stretch;gap:var(--space-3);height:100%;display:flex;position:relative}.diagram-editing>.process-diagram{flex:auto;min-width:0}.diagram-switcher{align-items:center;gap:var(--space-1);display:flex}.diagram-switcher__select{max-width:220px;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);font-family:var(--font-ui);cursor:pointer;font-size:13px}.diagram-switcher__rename{width:220px;padding:var(--space-1) var(--space-2);border:1.5px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-ink);font-family:var(--font-ui);outline:none;font-size:13px}.rename-overlay{padding:var(--space-1) var(--space-2);background:var(--color-surface-raised);color:var(--color-ink);border:1.5px solid var(--color-accent);border-radius:var(--radius-sm);font-family:var(--font-ui);text-align:center;outline:none;font-size:13px;position:absolute;transform:translate(-50%,-50%)}.node-panel{gap:var(--space-4);width:232px;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;flex:none;font-size:13px;display:flex;overflow-y:auto}.node-panel--empty{border-style:dashed;justify-content:center;min-height:120px}@media (width<=720px){.node-panel{left:0;right:0;bottom:var(--mobile-action-bar-height,0px);z-index:5;border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:auto;max-height:45dvh;box-shadow:var(--shadow-lift);border-bottom:none;position:fixed}.node-panel--empty,body.is-edge-dragging .node-panel,body.is-node-dragging .node-panel,body.is-bar-resizing .node-panel,body.is-bar-moving .node-panel{display:none}.diagram-switcher__select,.diagram-switcher__rename{max-width:45vw}.diagram-fab{right:var(--space-4);bottom:calc(var(--mobile-action-bar-height) + var(--space-3));z-index:7;align-items:stretch;display:flex;position:fixed}.diagram-fab--raised{bottom:calc(var(--mobile-action-bar-height) + 45dvh + var(--space-3))}.diagram-fab__primary{padding:var(--space-2) var(--space-4);border:1px solid var(--color-accent);border-radius:var(--radius-pill) 0 0 var(--radius-pill);background:var(--color-accent);color:var(--color-bg);font-family:var(--font-ui);box-shadow:var(--shadow-lift);cursor:pointer;font-size:13px;font-weight:600;line-height:1.4}.diagram-fab__caret{padding:var(--space-2) var(--space-3);border:1px solid var(--color-accent);border-radius:0 var(--radius-pill) var(--radius-pill) 0;background:var(--color-accent);color:var(--color-bg);font-family:var(--font-ui);box-shadow:var(--shadow-lift);cursor:pointer;border-left:1px solid #0b102040;font-size:13px;line-height:1.4}.diagram-fab__primary:disabled{border-color:var(--color-border);background:var(--color-surface);color:var(--color-ink-muted);box-shadow:none;cursor:default}body.is-edge-dragging .diagram-fab,body.is-node-dragging .diagram-fab,body.is-bar-resizing .diagram-fab,body.is-bar-moving .diagram-fab{display:none}}.node-panel__header{gap:var(--space-1);flex-direction:column;display:flex}.node-panel__kind{color:var(--color-ink-muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.node-panel__title{overflow-wrap:anywhere;margin:0;font-size:15px;font-weight:600}.node-panel__hint{color:var(--color-ink-muted);margin:0;font-size:11px}.node-panel__section{gap:var(--space-2);flex-direction:column;display:flex}.node-panel__section-title{color:var(--color-ink-secondary);letter-spacing:.04em;margin:0;font-size:12px;font-weight:600}.node-panel__chips{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.node-panel__chip{align-items:center;gap:var(--space-1);padding:2px var(--space-1) 2px var(--space-2);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-pill);font-family:var(--font-mono);letter-spacing:.05em;font-size:11px;display:flex}.node-panel__chip-swatch{border-radius:2px;width:8px;height:8px}.node-panel__chip-remove{padding:0 var(--space-1);color:var(--color-ink-muted);cursor:pointer;background:0 0;border:none;font-size:13px;line-height:1}.node-panel__chip-remove:hover{color:var(--color-ink)}.node-panel__empty{color:var(--color-ink-muted);margin:0;font-size:12px}.node-panel__row{align-items:center;gap:var(--space-2);display:flex}.node-panel__input{min-width:0;padding:var(--space-1) var(--space-2);background:var(--color-canvas);color:var(--color-ink);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-ui);flex:auto;font-size:13px}.node-panel__input:focus{border-color:var(--color-accent);outline:none}.node-panel__input--duration{font-family:var(--font-mono)}.node-panel__unit{color:var(--color-ink-muted);font-size:12px}.node-panel__button{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-ink-secondary);font-family:var(--font-ui);cursor:pointer;font-size:13px}.node-panel__button:hover{color:var(--color-ink)}.node-panel__error{color:var(--color-danger);margin:0;font-size:12px}.node-panel__delete{padding:var(--space-2) var(--space-3);color:var(--color-danger);border:1px solid var(--color-danger);border-radius:var(--radius-sm);font-family:var(--font-ui);cursor:pointer;background:0 0;font-size:13px}.node-panel__delete:hover{background:var(--color-danger);color:var(--color-bg)}.edit-toast{left:50%;bottom:var(--space-5);padding:var(--space-2) var(--space-4);background:var(--color-surface-raised);color:var(--color-ink);border:1px solid var(--color-accent);border-radius:var(--radius-pill);pointer-events:none;white-space:nowrap;margin:0;font-size:13px;position:absolute;transform:translate(-50%)}.confirm-dialog__backdrop{z-index:10;background:#0b102099;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog{width:min(360px, calc(100vw - 2 * var(--space-5)));gap:var(--space-3);padding:var(--space-5);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;font-size:13px;display:flex}.confirm-dialog__title{color:var(--color-ink);overflow-wrap:anywhere;margin:0;font-size:15px;font-weight:600}.confirm-dialog__body{color:var(--color-ink-secondary);margin:0}.confirm-dialog__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2);display:flex}.confirm-dialog__cancel{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-ink-secondary);font-family:var(--font-ui);cursor:pointer;font-size:13px;line-height:1.4}.confirm-dialog__cancel:hover{background:var(--color-canvas);color:var(--color-ink)}.confirm-dialog__confirm{padding:var(--space-1) var(--space-3);color:var(--color-danger);border:1px solid var(--color-danger);border-radius:var(--radius-pill);font-family:var(--font-ui);cursor:pointer;background:0 0;font-size:13px;line-height:1.4}.confirm-dialog__confirm:hover{background:var(--color-danger);color:var(--color-bg)}.timeline-editing{align-items:stretch;gap:var(--space-3);height:100%;display:flex}.timeline-editing__viewport{flex:auto;min-width:0;position:relative}.timeline-editing__canvas{width:100%;height:100%;position:relative;overflow:auto}.timeline-panel__project{align-items:center;gap:var(--space-1);color:var(--color-ink-secondary);margin:0;font-size:12px;display:flex}.timeline-panel__swatches{gap:var(--space-2);flex-wrap:wrap;display:flex}.timeline-panel__swatch{border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;width:22px;height:22px;padding:0}.timeline-panel__swatch:hover{border-color:var(--color-ink-secondary)}.timeline-panel__swatch[aria-pressed=true]{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent)}.node-panel__meta{color:var(--color-ink-muted);margin:0;font-size:12px}.node-panel__meta-value{font-family:var(--font-mono);color:var(--color-ink-secondary)}.edge-panel__arrow{color:var(--color-ink-muted)}.edge-panel__toggle{align-items:center;gap:var(--space-2);cursor:pointer;font-size:13px;display:flex}.edge-panel__toggle input{accent-color:var(--color-accent);cursor:pointer}.insert-toolbar{gap:var(--space-1);display:flex}.insert-toolbar__button{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-ink-secondary);font-family:var(--font-ui);cursor:pointer;font-size:13px;line-height:1.4}.insert-toolbar__button:hover:not(:disabled){background:var(--color-surface-raised);color:var(--color-ink)}.insert-toolbar__button:disabled{color:var(--color-ink-muted);opacity:.55;cursor:default}.node-panel__input:disabled{color:var(--color-ink-secondary);opacity:.7;cursor:default}.node-panel__button:disabled,.node-panel__chip-remove:disabled,.node-panel__delete:disabled,.timeline-panel__swatch:disabled{opacity:.45;cursor:default}.node-panel__button:disabled:hover{color:var(--color-ink-secondary)}.node-panel__chip-remove:disabled:hover{color:var(--color-ink-muted)}.node-panel__delete:disabled:hover{color:var(--color-danger);background:0 0}.timeline-panel__swatch:disabled:hover{border-color:var(--color-border)}.touch-drag-popup{z-index:20;padding:var(--space-2) var(--space-3);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lift);pointer-events:none;white-space:nowrap;flex-direction:column;align-items:center;gap:2px;display:flex;position:fixed}.touch-drag-popup__label{font-family:var(--font-ui);color:var(--color-ink);font-size:13px}.touch-drag-popup__detail{font-family:var(--font-mono);color:var(--color-ink-secondary);font-size:11px}.retry-panel__record{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.retry-panel__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.retry-panel__entry{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.retry-panel__entry-label{color:var(--color-ink-secondary);font-size:13px}.retry-panel__remove{padding:2px var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-ink-secondary);font-family:var(--font-ui);cursor:pointer;font-size:12px}.retry-panel__remove:hover{color:var(--color-danger);border-color:var(--color-danger)}
