:root { --header-background: #113244; --header-color: #fff; --background: #f4f4f4; --background-secondary: rgba(208, 208, 208, 1); --background-tertiary: rgba(188, 188, 188, 1); --normal: #333; --normal-secondary: #999; --primary: #5060a0; --primary-darker: #405090; --primary-lighter: #6080b0; --primary-inverse: #fff; --secondary: #666; --secondary-inverse: #fff; --node-label: #fff; --node-socket: #444; --node-socket--withvalue: #44a; --link-hover: #f00; --selector-background: rgba(0, 0, 200, 0.1); --selector-color: var(--primary); --transition-speed: 0.2s; --transition-speed-slow: 0.7s; } .vertical_sep { flex-basis: 1px; width: 1px; height: 30px; background: var(--primary); } .primary { color: var(--primary); } .primary-inverse { position: relative; background: var(--primary) !important; color: var(--primary-inverse) !important; } button.active:hover::after, .primary-inverse:hover::after { content: " "; position: absolute; top: 0; right: 0; bottom: 0; left: 0; transition: all var(--transition-speed); opacity: 0.4; background: #000; } .secondary { color: var(--secondary); } .secondary-inverse { background: var(--secondary); color: var(--secondary-inverse); } button { color: inherit; } button.active { background: var(--primary); color: var(--primary-inverse); } .hover { position: relative; } button::after, .hover::after { background: var(--primary); opacity: 0; } button:hover::after, .hover:hover::after { opacity: 0.2; } input { padding: 20px; outline: none; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); transition: all var(--transition-speed); } h3 { font-weight: bold; color: var(--primary); } .app-header { display: flex; align-items: center; color: var(--header-color); background: var(--header-background); box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2); overflow: visible; z-index: 10; transition: all var(--transition-speed); } .app-info { color: var(--normal); } .app-watermark { color: black; opacity: 0.02; } .app-flow-container { background: var(--background); transition: all var(--transition-speed); } .flow-panel__container { background: var(--background-secondary) !important; } /* Flow Funcs PANEL */ .flow-funcs__control { border-bottom: solid 1px var(--primary); } .flow-funcs__container { } .flow-funcs__group { background: var(--background-tertiary); } .flow-funcs__search input { color: var(--normal); border-bottom: solid 1px rgba(150, 150, 150, 0.2); } .flow-funcs__src { background: #777; color: var(--node-label); text-shadow: 0 0 14px #000, 0 0 4px #000; } .flow-funcs__src b { text-shadow: 0 0 14px #000, 0 0 4px #000; } .flow-funcs__container .flow-funcs__header { color: var(--normal); } .hx-toggle-arrow { color: var(--normal-secondary); } .hx-toggle-arrow.active { color: var(--primary); } .flow-funcs__inner { display: flex; flex: 1; flex-flow: column; justify-content: center; } .flow-funcs__inner .hx-collapsible { border: none !important; } .flow-funcs__container .item { color: var(--normal) !important; border: none !important; } .flow-funcs__control .item { color: var(--normal) !important; } .flow-container__control button { color: var(--normal); } .flow-container__info { color: var(--normal); } /* * FLOW manager */ .flow-selector { /* TODO: theme */ stroke: var(--selector-color); fill: var(--selector-background); } /* * LINKS */ .flow-link__visible { opacity: 1; stroke: var(--normal); } .flow-view:not(.activity) .flow-link:not(.flow-link--pointer):hover .flow-link__visible { stroke: var(--link-hover); } .flow-link__head { fill: var(--normal) !important; } /* * TRIGGERS */ .flow-trigger-link__visible { opacity: 0.5; stroke: var(--normal); } .flow-view:not(.activity) .flow-trigger-link:not(.flow-trigger-link--pointer):hover .flow-trigger-link__visible { stroke: var(--link-hover); } /* * NODES */ .flow-node { /*filter: url(#highlight-border);*/ } .flow-node__label { font-family: RobotoMono, monospace; letter-spacing: -0.05em; font-size: 14px; fill: var(--node-label); } .flow-node__selection { transition: all var(--transition-speed); } .flow-node--selected .flow-node__selection { stroke: var(--primary); } .flow-node--dragging .flow-node__body, .flow-view:not(.activity) .flow-node:hover .flow-node__body { stroke-width: 1.5; stroke: var(--normal); } .flow-node__socket { fill: var(--node-socket); stroke: var(--node-socket); } .flow-linking.flow-node__socket--match, .flow-node__socket.flow-node__socket--match { stroke: #2f2 !important; fill: #2f2 !important; } .flow-node__socket-detail { font-size: 12px; font-weight: 100; transition: all var(--transition-speed); fill: var(--normal); } .flow-node__socket-detail--background { fill: rgba(230, 230, 230, 0.7); } .flow-node__trigger { fill: var(--node-socket); stroke: var(--node-socket); } .flow-node__trigger--match { stroke: #2f2 !important; fill: #2f2 !important; } /* * NODE ACTIVITY */ .flow-node__activity { fill: white; /* fill: var(--background-secondary); */ } .flow-node__activity-icon > * { stroke: var(--normal); } .flow-node__activity-time { fill: var(--normal); } /* * CHAT */ .flow-chat { background: var(--background-secondary); color: var(--normal); } .flow-chat__users { border-left: solid 1px rgba(150, 150, 150, 0.2); } .flow-chat__toggle { border: none; background: var(--background-secondary); border-top: solid 1px rgba(208, 208, 208, 0.4); border-left: solid 1px rgba(208, 208, 208, 0.4); border-bottom: solid 1px rgba(208, 208, 208, 0.4); } .flow-chat__messages .message { border-bottom: solid 1px rgba(150, 150, 150, 0.1); } .flow-chat__messages .handle .name { font-weight: bold; } .flow-chat__messages .message .text { color: #777; } .flow-chat__messages .handle .time { color: #999; } .flow-chat input.handle { background: #777; color: #fff; } .flow-chat input.message { background: var(--background) !important; color: var(--normal); } /* End notification */ .fade-enter-active, .fade-leave-active { transition: opacity 0.5s; } .fade-enter, .fade-leave-to { opacity: 0; }