bz-select { display: block; margin: .5em 0 .5em 0; position:relative; } bz-select[disabled] > button{ opacity: 0.6; cursor: not-allowed; pointer-events: none; filter: grayscale(30%); } bz-select > button{ width:100%; text-align: left; font-family: sans; font-size: .9em; border-radius: 1em; border: none; padding: 0.2em .2em .3em .5em; background: linear-gradient( to bottom, #555, #aaa 15%, #ccc 50%, #aaa 85%, #555 ); } bz-select > button::after { content: "\00BB"; transform: rotate(90deg); position: absolute; right: clamp(-1em, calc(100% - 1em), 0.5em); top: 0; pointer-events: none; font-size: 1.5em; color: #444; } bz-select > div.options-container{ pointer-events: none; position: absolute; top: 1.8em; left: 0; width: 100%; z-index: 99; max-height: 0; overflow: auto; transition: max-height 0.4s ease; } bz-select > div.options-container.open{ pointer-events: auto; max-height: 10em;} bz-select option{ background-color: #DDD; border: 1px solid black; color: #000; padding: 0.2em .2em .5em .5em; margin: -1em 0 0 0; border-radius: 1em; height: 1em; font-family: sans; font-size: .9em; opacity: 0; pointer-events: none; transition: margin-top 0.3s ease, opacity 0.3s ease; } bz-select option.open{ margin: 0; opacity: 1; pointer-events: auto; } bz-select option:hover{ background-color: #44F; color: #FFF; } /************************************************************************************/ bz-toggler{ outline: none; min-height: 1.5em; padding: 0.75em; display: inline-table; max-width: fit-content; transition: all 0.5s; } bz-toggler div.toggle-label-left{ padding-right: 0.3em; display: inline; vertical-align: middle; text-align: right; font-size:.8em; } bz-toggler div.toggle-label-right{ padding-left: 0.3em; display: inline; vertical-align: middle; text-align: left; font-size:.8em; } bz-toggler div.toggle-switch{ user-select: none; height: inherit; cursor: pointer; display: inline; vertical-align: middle; text-align: center; } bz-toggler div.toggle-switch span.toggle-bar { display: inline-block; position: relative; background-color: #CCC; } bz-toggler div.toggle-switch span.toggle-thumb { display: inline-block; border-radius: 50%; background-color: white; position: absolute; z-index: 1; } bz-toggler div.toggle-switch span.toggle-thumb:not(.turned-on) { left: 0; transition: all 0.4s; } bz-toggler div.toggle-switch span.toggle-thumb.turned-on { transition: all 0.4s; } bz-toggler div.toggle-switch span.toggle-bar { width: 2em; height: 0.75em; border-radius: .75em; } bz-toggler div.toggle-switch span.toggle-thumb { height: 1em; width: 1em; top: 50%; transform: translateY(-50%); } bz-toggler div.toggle-switch span.toggle-thumb.turned-on { left : 1em; } /************************************************************************************/ bz-slidepane { display: block; position: absolute; background-color: #000A; } bz-slidepane[side="top"] { top:0; left:0; width: 100%; height:0; border-bottom: 2px solid #DDD; } bz-slidepane[side="bottom"] { bottom:0; left:0; width: 100%; height:0; border-top: 2px solid #DDD;} bz-slidepane[side="left"] { top:0; left:0; height:100%; width:0; border-right: 2px solid #DDD;} bz-slidepane[side="right"] { top:0; right:0; height:100%; width:0; border-left: 2px solid #DDD; } bz-slidepane[side="top"] div.handle { position: absolute; bottom: -12px; left: 50%; width: 40px; height: 11px; background: repeating-linear-gradient( to top, rgba(255,255,255,1) 0, rgba(255,255,255,1) 2px, rgba(0,0,0,0.2) 3px, rgba(0,0,0,0.2) 4px ); transform: translateX(-50%); cursor: ns-resize; } bz-slidepane[side="bottom"] div.handle { position: absolute; top: -12px; left: 50%; width: 40px; height: 11px; background: repeating-linear-gradient( to bottom, rgba(255,255,255,1) 0, rgba(255,255,255,1) 2px, rgba(0,0,0,0.2) 3px, rgba(0,0,0,0.2) 4px ); transform: translateX(-50%); cursor: ns-resize; } bz-slidepane[side="left"] div.handle { position: absolute; right: -12px; top: 50%; width: 11px; height: 40px; background: repeating-linear-gradient( to left, rgba(255,255,255,1) 0, rgba(255,255,255,1) 2px, rgba(0,0,0,0.2) 3px, rgba(0,0,0,0.2) 4px ); transform: translateY(-50%); cursor: ew-resize; } bz-slidepane[side="right"] div.handle { position: absolute; left: -12px; top: 50%; width: 11px; height: 40px; background: repeating-linear-gradient( to right, rgba(255,255,255,1) 0, rgba(255,255,255,1) 2px, rgba(0,0,0,0.5) 3px, rgba(0,0,0,0.5) 4px ); transform: translateY(-50%); cursor: ew-resize; } /************************************************************************************/ bz-graflow { position: relative; display: block; width: 100vw; height: 100vh; box-sizing: border-box; overflow: hidden; } bz-graflow .bzgf-main-container{ width: 100%; height: 100%; position: relative; box-sizing: border-box; overflow: auto; } /* BZGRAFLOW_CORE_START */ /* Keep this commented section ! bz-graflow internal layout rules (used in light DOM, and injected into shadow DOM when isolated) */ bz-graflow .bzgf-wires-container, bz-graflow .bzgf-nodes-container{ position: absolute; inset: 0; width: 100%; height: 100%; } bz-graflow .bzgf-nodes-container{ /* used to keep the nodes container pointer-events: none, but allow the nodes to be moved ! */ pointer-events: none; } bz-graflow .bzgf-nodes-container > * { /* allow the nodes to be moved ! */ pointer-events: auto; } bz-graflow .bzgf-nodes-container .bzgf-node{ position:absolute; } bz-graflow .bzgf-nodes-container .bzgf-fake-node{ position: absolute; width: 5px; height: 5px; background: transparent; border-style: none; } bz-graflow .bzgf-nodes-container button.bzgf-zoom-in{ z-index: 999; position: absolute; top: -0.5em; right: -1em; color: black; width: 2em; height: 2em; padding: 0; } bz-graflow button.bzgf-zoom-out{ z-index: 999; position: absolute; left: 5px; top: 5px; } bz-graflow path.bzgf-wirecoat{ pointer-events: auto; stroke-width: 6; stroke: #0000!important; } bz-graflow path.bzgf-wirecoat:hover{ stroke: #FF08!important; } bz-graflow .bzgf-nodes-container .port.selectable:hover{ border: 5px solid #FF08!important; cursor: pointer; } /* BZGRAFLOW_CORE_END */ bz-grafloweditor { width: 98vw; height: 98vh; margin: auto; } bz-grafloweditor .bzgfe-main-container{ height: 100%; width: 100%; overflow: hidden; display: grid; grid-template-columns: 15vw auto; grid-gap: 1px; background: #FFF; } bz-grafloweditor .bzgfe-nodes-container{ overflow: auto; border: 2px solid #000; display: grid; grid-auto-flow: row; justify-items: center; } bz-grafloweditor bz-graflow{ height: 100%; width: 100%; } bz-grafloweditor .bzgfe-nodes-container .bzgf-node{ position: relative; margin: 5px auto; } bz-grafloweditor bz-slidepane { z-index: 10; background-color: #0008!important;} bz-grafloweditor bz-slidepane .inner-console{ padding: 5px; background: #FFF; } bz-grafloweditor .inner-console section{ display: grid; grid-auto-flow: row; grid-gap: 5px; background-color: #DDD; padding: 5px; margin: 5px auto; } bz-grafloweditor .inner-console section .cols-2{ display: grid; grid-template-columns: 1fr 1fr; grid-gap: 1em; background-color: #CCC; min-height: 2.5em; } bz-grafloweditor .inner-console section .cols-2 label{ text-align: right; align-self: center; } bz-grafloweditor .inner-console section .cols-2 input{ max-height: 2em; align-self: center; }