/* NEXEI v294 - cores funcionais do Canvas e acabamento visual das permissoes. */

/* Cada componente volta a possuir uma identidade cromatica propria. */
.canvas-page .component-panel .component-symbol,
.canvas-page .empty-palette .component-symbol{
  --sym-color:#3157e8;
  --sym-soft:#eef3ff;
  color:var(--sym-color)!important;
  background:var(--sym-soft)!important;
  border:1px solid color-mix(in srgb,var(--sym-color) 28%,#dce6f5)!important;
  border-radius:8px!important;
  box-shadow:0 3px 8px color-mix(in srgb,var(--sym-color) 14%,transparent)!important;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease!important;
}
.canvas-page .component-btn:hover .component-symbol,
.canvas-page .empty-palette button:hover .component-symbol{
  transform:translateY(-1px) scale(1.06)!important;
  box-shadow:0 6px 14px color-mix(in srgb,var(--sym-color) 22%,transparent)!important;
}
.canvas-page .sym-start{--sym-color:#16a34a;--sym-soft:#dcfce7}
.canvas-page .sym-approval{--sym-color:#2563eb;--sym-soft:#dbeafe}
.canvas-page .sym-condition{--sym-color:#d97706;--sym-soft:#fef3c7}
.canvas-page .sym-email{--sym-color:#7c3aed;--sym-soft:#ede9fe}
.canvas-page .sym-notification{--sym-color:#ca8a04;--sym-soft:#fef9c3}
.canvas-page .sym-document_request{--sym-color:#e11d48;--sym-soft:#ffe4e6}
.canvas-page .sym-status_change{--sym-color:#0891b2;--sym-soft:#cffafe}
.canvas-page .sym-task{--sym-color:#059669;--sym-soft:#d1fae5}
.canvas-page .sym-history_event{--sym-color:#475569;--sym-soft:#e2e8f0}
.canvas-page .sym-route_user{--sym-color:#7c3aed;--sym-soft:#f3e8ff}
.canvas-page .sym-route_department{--sym-color:#0f766e;--sym-soft:#ccfbf1}
.canvas-page .sym-deadline{--sym-color:#ea580c;--sym-soft:#ffedd5}
.canvas-page .sym-webhook{--sym-color:#0284c7;--sym-soft:#e0f2fe}
.canvas-page .sym-gateway_exclusive{--sym-color:#d97706;--sym-soft:#fef3c7}
.canvas-page .sym-gateway_parallel{--sym-color:#c2410c;--sym-soft:#ffedd5}
.canvas-page .sym-subprocess{--sym-color:#4f46e5;--sym-soft:#e0e7ff}
.canvas-page .sym-lane{--sym-color:#0e7490;--sym-soft:#cffafe}
.canvas-page .sym-end{--sym-color:#e11d48;--sym-soft:#ffe4e6}
.canvas-page .sym-cancel{--sym-color:#64748b;--sym-soft:#e2e8f0}
.canvas-page .sym-help{--sym-color:#0f172a;--sym-soft:#e2e8f0}

/* Os cards usam a mesma cor da miniatura para leitura imediata do fluxo. */
.canvas-page .workflow-canvas-v292 .canvas-node.approval{--node-accent:#2563eb;--node-soft:#eff6ff}
.canvas-page .workflow-canvas-v292 .canvas-node.condition{--node-accent:#d97706;--node-soft:#fffbeb}
.canvas-page .workflow-canvas-v292 .canvas-node.email{--node-accent:#7c3aed;--node-soft:#f5f3ff}
.canvas-page .workflow-canvas-v292 .canvas-node.notification{--node-accent:#ca8a04;--node-soft:#fefce8}
.canvas-page .workflow-canvas-v292 .canvas-node.document_request{--node-accent:#e11d48;--node-soft:#fff1f2}
.canvas-page .workflow-canvas-v292 .canvas-node.status_change{--node-accent:#0891b2;--node-soft:#ecfeff}
.canvas-page .workflow-canvas-v292 .canvas-node.task{--node-accent:#059669;--node-soft:#ecfdf5}
.canvas-page .workflow-canvas-v292 .canvas-node.history_event{--node-accent:#475569;--node-soft:#f8fafc}
.canvas-page .workflow-canvas-v292 .canvas-node.route_user{--node-accent:#7c3aed;--node-soft:#faf5ff}
.canvas-page .workflow-canvas-v292 .canvas-node.route_department{--node-accent:#0f766e;--node-soft:#f0fdfa}
.canvas-page .workflow-canvas-v292 .canvas-node.deadline{--node-accent:#ea580c;--node-soft:#fff7ed}
.canvas-page .workflow-canvas-v292 .canvas-node.webhook{--node-accent:#0284c7;--node-soft:#f0f9ff}
.canvas-page .workflow-canvas-v292 .canvas-node.gateway_exclusive{--node-accent:#d97706;--node-soft:#fffbeb}
.canvas-page .workflow-canvas-v292 .canvas-node.gateway_parallel{--node-accent:#c2410c;--node-soft:#fff7ed}
.canvas-page .workflow-canvas-v292 .canvas-node.subprocess{--node-accent:#4f46e5;--node-soft:#eef2ff}
.canvas-page .workflow-canvas-v292 .canvas-node.lane{--node-accent:#0e7490;--node-soft:#ecfeff}
.canvas-page .workflow-canvas-v292 .canvas-node.start{--node-accent:#16a34a;--node-soft:#ecfdf3}
.canvas-page .workflow-canvas-v292 .canvas-node.end{--node-accent:#e11d48;--node-soft:#fff1f3}
.canvas-page .workflow-canvas-v292 .canvas-node.cancel{--node-accent:#64748b;--node-soft:#f1f5f9}
.canvas-page .workflow-canvas-v292 .canvas-node-symbol{
  background:var(--node-soft)!important;
  color:var(--node-accent)!important;
  border-color:color-mix(in srgb,var(--node-accent) 30%,#dbe6f5)!important;
}

/* Evita que o icone herde filtros monocromaticos de regras antigas. */
.canvas-page .component-panel .component-symbol,
.canvas-page .empty-palette .component-symbol,
.canvas-page .canvas-node-symbol{
  filter:none!important;
  -webkit-filter:none!important;
  opacity:1!important;
}

/* Texto discreto para deixar claro que a listagem respeita o escopo liberado. */
.suppliers-page .panel-head .muted,
.supplier-detail-page .panel-head .muted{max-width:780px}
