/* #region Fonts */

@font-face {
  font-family: 'Material Symbols New';
  font-style: normal;
  font-weight: 400;
  src: url("fonts/symbols_new.woff2") format('woff2');
}

.material-symbols-outlined {
  font-family: 'Material Symbols New';
  font-weight: normal;
  font-style: normal;
  font-size: 1em;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}
/* #endregion */

/* #region Bootstrap-advanced */
/* extend base bootstrap class : e.g. color variable dependencies*/
.btn-primary {
	--bs-btn-color: var(--bs-body-bg);
	--bs-btn-bg: var(--bs-primary);
	--bs-btn-border-color: var(--bs-primary);

	--bs-btn-hover-color: var(--bs-body-bg);
	--bs-btn-hover-bg: color-mix(in srgb, var(--bs-primary) 90%, var(--bs-emphasis-color));
	--bs-btn-hover-border-color: var(--bs-btn-hover-bg);

	--bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);

	--bs-btn-active-color: var(--bs-body-bg);
	--bs-btn-active-bg: color-mix(in srgb, var(--bs-primary) 80%, var(--bs-emphasis-color));
	--bs-btn-active-border-color: var(--bs-btn-active-bg);

	--bs-btn-disabled-color: var(--bs-body-bg);
	--bs-btn-disabled-bg: var(--bs-primary);
	--bs-btn-disabled-border-color: var(--bs-primary);
}

.dropdown-menu {
	--bs-dropdown-link-color: var(--bs-body-color);

	--bs-dropdown-link-active-color: var(--bs-primary-text-emphasis);
	--bs-dropdown-link-active-bg: var(--bs-primary-bg-subtle);

	--bs-dropdown-link-hover-color: var(--bs-emphasis-color);
	--bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);

	--bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
}

.table > thead > tr > * {
    --bs-table-bg: var(--bs-tertiary-bg);
    --bs-table-color: var(--bs-body-color);
    --bs-table-bg-type: transparent;
    --bs-table-bg-state: transparent;
    font-weight: 600;
    border-bottom-color: var(--bs-border-color);
}
.table > thead.sticky-top {
	z-index: 1;
}
.table {
	--bs-table-striped-bg: rgba(var(--bs-body-color-rgb), .025);
}

/* #endregion */


/* #region Dalibot classes */

/* #region soft button*/
.btn-soft {
	--bs-btn-color: var(--bs-body-color);
	--bs-btn-bg: transparent;
	--bs-btn-border-color: transparent;
	--bs-btn-hover-color: var(--bs-body-color);
	--bs-btn-hover-bg: rgba(var(--bs-secondary-rgb), 0.08);
	--bs-btn-hover-border-color: transparent;
	--bs-btn-active-color: var(--bs-body-color);
	--bs-btn-active-bg: rgba(var(--bs-secondary-rgb), 0.12);
	--bs-btn-active-border-color: transparent;
	--bs-btn-focus-shadow-rgb: var(--bs-secondary-rgb);
	--bs-btn-disabled-color: var(--bs-tertiary-color);
	--bs-btn-disabled-bg: transparent;
	--bs-btn-disabled-border-color: transparent;
}

.btn-soft.btn-success {
	--bs-btn-hover-bg: rgba(var(--bs-success-rgb), 0.08);
	--bs-btn-hover-border-color: transparent;
	--bs-btn-active-bg: rgba(var(--bs-success-rgb), 0.12);
	--bs-btn-active-border-color: transparent;
	--bs-btn-focus-shadow-rgb: var(--bs-success-rgb);
}

.btn-soft.btn-warning {
	--bs-btn-hover-bg: rgba(var(--bs-warning-rgb), 0.08);
	--bs-btn-hover-border-color: transparent;
	--bs-btn-active-bg: rgba(var(--bs-warning-rgb), 0.12);
	--bs-btn-active-border-color: transparent;
	--bs-btn-focus-shadow-rgb: var(--bs-warning-rgb);
}

.btn-soft.btn-danger {
	--bs-btn-hover-bg: rgba(var(--bs-danger-rgb), 0.08);
	--bs-btn-hover-border-color: transparent;
	--bs-btn-active-bg: rgba(var(--bs-danger-rgb), 0.12);
	--bs-btn-active-border-color: transparent;
	--bs-btn-focus-shadow-rgb: var(--bs-danger-rgb);
}
/* #endregion */

/*  #region table */
.cdt-container {
	overflow: hidden;
	padding: 0.75rem;
}

.cdt-container > div,
.cdt-table-wrapper {
	min-height: 0;
	min-width: 0;
}

.cdt-table-wrapper {
	isolation: isolate;
}

.cdt-table {
	width: max-content;
	min-width: 100%;
	border-collapse: separate;
	border-spacing: 0;
}

.cdt-table > :not(caption) > * > * {
	padding: 0.5rem 0.7rem;
}

.cdt-table thead {
	--bs-table-bg: var(--bs-tertiary-bg);
	--bs-table-color: var(--bs-body-color);
}

.cdt-table thead th {
	position: sticky;
	top: 0;
	z-index: 2;
}

.cdt-menu-column,
.cdt-row-menu-cell {
	position: sticky;
	left: 0;
	width: 2.5rem;
	min-width: 2.5rem;
	z-index: 1;
	border-right: var(--bs-border-width) solid var(--bs-border-color);
}

.cdt-table thead .cdt-menu-column {
	z-index: 3;
}

.cdt-header-button {
	--bs-btn-color: inherit;
	--bs-btn-hover-color: inherit;
	--bs-btn-active-color: inherit;
	font: inherit;
}

/* Variante comune ai controlli della tabella, dipendente dal tema. */
.cdt-button {
	--bs-btn-color: var(--bs-body-color);
	--bs-btn-bg: var(--bs-body-bg);
	--bs-btn-border-color: var(--bs-border-color);
	--bs-btn-hover-color: var(--bs-emphasis-color);
	--bs-btn-hover-bg: var(--bs-tertiary-bg);
	--bs-btn-hover-border-color: var(--bs-secondary-color);
	--bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
	--bs-btn-active-color: var(--bs-primary-text-emphasis);
	--bs-btn-active-bg: var(--bs-primary-bg-subtle);
	--bs-btn-active-border-color: var(--bs-primary-border-subtle);
	--bs-btn-disabled-color: var(--bs-secondary-color);
	--bs-btn-disabled-bg: var(--bs-body-bg);
	--bs-btn-disabled-border-color: var(--bs-border-color);
}

.no-table-sort .cdt-header-button {
	cursor: default;
}

.cdt-sort-indicator {
	min-width: 0.7rem;
}

.cdt-hide-column-button {
	opacity: 0.35;
}

th:hover .cdt-hide-column-button,
.cdt-hide-column-button:focus-visible {
	opacity: 1;
}

.cdt-table.cdt-compact {
	font-size: 0.9em;
}

.cdt-table.cdt-compact-more {
	font-size: 0.8em;
}

.cdt-table.cdt-compact > :not(caption) > * > * {
	padding-right: 0.5rem;
	padding-left: 0.5rem;
}

.cdt-table.cdt-compact-more > :not(caption) > * > * {
	padding-right: 0.35rem;
	padding-left: 0.35rem;
}

.cdt-selectable-row {
	cursor: pointer;
}

.cdt-table .cdt-selected-row {
	--bs-table-bg: var(--bs-primary-bg-subtle);
	--bs-table-color: var(--bs-primary-text-emphasis);
	--bs-table-striped-bg: var(--bs-primary-bg-subtle);
	--bs-table-striped-color: var(--bs-primary-text-emphasis);
	--bs-table-hover-bg: var(--bs-primary-border-subtle);
	--bs-table-hover-color: var(--bs-primary-text-emphasis);
}

.cdt-menu {
	/* Stesso livello dei precedenti menu, anche nei popup Dalibot. */
	--bs-dropdown-zindex: 10000;
}
/* #endregion */

/* #region ace */
/* Custom class: dlb-code-editor. Colors follow Bootstrap, including custom themes. */
.dlb-code-editor.ace_editor {
	min-height: 20rem;
	background: var(--bs-body-bg);
	color: var(--bs-body-color);
}
.dlb-code-editor.ace_editor .ace_gutter {
	background: var(--bs-tertiary-bg);
	color: var(--bs-secondary-color);
	border-right: 1px solid var(--bs-border-color);
}
.dlb-code-editor.ace_editor .ace_cursor { color: var(--bs-emphasis-color); }
.dlb-code-editor.ace_editor .ace_marker-layer .ace_selection {
	background: rgba(var(--bs-primary-rgb), .25);
}
.dlb-code-editor.ace_editor .ace_marker-layer .ace_active-line,
.dlb-code-editor.ace_editor .ace_gutter-active-line {
	background: var(--bs-secondary-bg);
}
.dlb-code-editor.ace_editor .ace_marker-layer .ace_selected-word,
.dlb-code-editor.ace_editor .ace_marker-layer .ace_bracket {
	border: 1px solid var(--bs-primary-text-emphasis);
}
.dlb-code-editor.ace_editor .ace_keyword,
.dlb-code-editor.ace_editor .ace_storage {
    color: var(--bs-code-color);
}
.dlb-code-editor.ace_editor .ace_string { color: var(--bs-success-text-emphasis); }
.dlb-code-editor.ace_editor .ace_constant { color: var(--bs-info-text-emphasis); }
.dlb-code-editor.ace_editor .ace_comment {
	color: var(--bs-secondary-color);
	font-style: italic;
}
.dlb-code-editor.ace_editor .ace_support,
.dlb-code-editor.ace_editor .ace_entity { color: var(--bs-warning-text-emphasis); }
.dlb-code-editor.ace_editor .ace_invalid {
	color: var(--bs-danger-text-emphasis);
	background: var(--bs-danger-bg-subtle);
}
.dlb-code-editor.ace_editor .ace_invisible,
.dlb-code-editor.ace_editor .ace_indent-guide { color: var(--bs-tertiary-color); }
.dlb-code-editor.ace_editor .ace_indent-guide { background: none; }
.dlb-code-editor.ace_editor .ace_fold {
	background: var(--bs-primary-text-emphasis);
	color: var(--bs-body-bg);
	border-color: var(--bs-primary-text-emphasis);
}
.dlb-code-editor.ace_editor .ace_search {
	background: var(--bs-tertiary-bg);
	color: var(--bs-body-color);
	border-color: var(--bs-border-color);
}
.dlb-code-editor.ace_editor .ace_search_field,
.dlb-code-editor.ace_editor .ace_searchbtn,
.dlb-code-editor.ace_editor .ace_replacebtn {
	background: var(--bs-body-bg);
	color: var(--bs-body-color);
	border-color: var(--bs-border-color);
}
.dlb-code-editor.ace_editor .ace_searchbtn:hover,
.dlb-code-editor.ace_editor .ace_replacebtn:hover,
.dlb-code-editor.ace_editor .ace_button:hover {
	background-color: var(--bs-secondary-bg);
}
.dlb-code-editor.ace_editor .ace_button {
	color: var(--bs-secondary-color);
	border-color: var(--bs-border-color);
}
.dlb-code-editor.ace_editor .ace_button.checked {
	color: var(--bs-primary-text-emphasis);
	background: var(--bs-primary-bg-subtle);
	border-color: var(--bs-primary-border-subtle);
}

/* #endregion */

/* #region treant */

#factory-tree-object .tree-unit,
#factory-tree-object .tree-manager {
	box-sizing: border-box;
	width: 180px;
	min-width: 180px;
	max-width: 180px;
	padding: .25rem .5rem;
	border: 3px solid var(--bs-border-color);
	background: var(--bs-body-bg);
	color: var(--bs-body-color);
	font-family: var(--bs-font-sans-serif);
	font-size: .875rem;
	line-height: 1.25;
	overflow-wrap: anywhere;
	cursor: pointer;
}
#factory-tree-object .tree-unit { border-radius: var(--bs-border-radius-sm); }
#factory-tree-object .tree-manager { border-radius: var(--bs-border-radius-pill); }
#factory-tree-object .tree-virtual { border-style: dashed; }
#factory-tree-object .node-name {
	margin: 0;
	padding: 0;
	text-align: center;
	font-weight: 700;
}
#factory-tree-object .node-desc {
	margin: .125rem 0 0;
	padding: 0;
	text-align: center;
	font-size: .75rem;
	color: var(--bs-secondary-color);
}
#factory-tree-object svg path { stroke: var(--bs-secondary-color); }
#factory-tree-object .collapse-switch { border-color: var(--bs-secondary-color); }
#factory-tree-object .collapsed .collapse-switch { background: var(--bs-primary-bg-subtle); }

#factory-tree-object .us-border-OK,
#factory-tree-object .us-border-Run { border-color: var(--bs-success); }
#factory-tree-object .us-border-Error,
#factory-tree-object .us-border-Alarm,
#factory-tree-object .us-border-NoCom { border-color: var(--bs-danger); }
#factory-tree-object .us-border-Warning,
#factory-tree-object .us-border-ResettingAlarms { border-color: var(--bs-warning); }
#factory-tree-object .us-border-Connected,
#factory-tree-object .us-border-Ready { border-color: var(--bs-info); }
#factory-tree-object .us-border-Transition,
#factory-tree-object .us-border-PoweringOn,
#factory-tree-object .us-border-PoweringOff,
#factory-tree-object .us-border-Connecting,
#factory-tree-object .us-border-Disconnecting,
#factory-tree-object .us-border-Activating,
#factory-tree-object .us-border-Deactivating,
#factory-tree-object .us-border-Starting,
#factory-tree-object .us-border-Stopping { border-color: var(--bs-info-border-subtle); }
#factory-tree-object .us-border-Disabled,
#factory-tree-object .us-border-Unknown,
#factory-tree-object .us-border-PoweredOff,
#factory-tree-object .us-border-PowerOff,
#factory-tree-object .us-border-Disconnected,
#factory-tree-object .us-border-Idle,
#factory-tree-object .us-border-NotUsed { border-color: var(--bs-secondary-color); }
/* #endregion */

/* #region component tree */
/* Existing custom ctree-* classes. Load after any legacy custom.css. */
.ctree-container .ctree-ver-bar {
	position: absolute;
	border-left: 2px solid var(--bs-secondary-color);
	pointer-events: none;
}
.ctree-container .ctree-hor-bar {
	position: absolute;
	border-top: 2px solid var(--bs-secondary-color);
	height: 0;
	pointer-events: none;
}
.ctree-container .ctree-object {
	display: none;
	border: 2px solid var(--bs-border-color);
	border-radius: var(--bs-border-radius-sm);
	background: var(--bs-body-bg);
	color: var(--bs-body-color);
	margin: 0 1rem;
	padding: .25rem .5rem;
	text-align: right;
	overflow: hidden;
	white-space: normal;
	overflow-wrap: anywhere;
	box-sizing: border-box;
	width: 160px;
	min-width: 160px;
	max-width: 160px;
	font-size: .7rem;
	height: 80px;
	min-height: 80px;
	max-height: 80px;
	vertical-align: top;
}
.ctree-container .ctree-object > .row { height: 100%; }
.ctree-container .ctree-object.show { display: inline-block; }
.ctree-container .ctree-object.has-child { border: 4px solid var(--bs-info); }
.ctree-container .ctree-spacer { display: none; height: 3rem; }
.ctree-container .ctree-spacer.show { display: block; }
.ctree-container .ctree-data { min-height: 2.1rem; }
.ctree-container .ctree-action { overflow: hidden; }
.ctree-container .ctree-action a { color: var(--bs-info-text-emphasis); }
.ctree-container .ctree-action a:hover { color: var(--bs-link-hover-color); }

/* #endregion*/

/* #region component led */
.component-led {
	--led-color: var(--bs-success);
	display: inline-block;
	box-sizing: border-box;
	width: 12px;
	height: 12px;
	border: 1px solid var(--led-color);
	border-radius: 50%;
	background: var(--led-color);
	box-shadow: none;
	filter: none;
	vertical-align: middle;
}
.component-led.off {
	border-color: var(--bs-secondary-color);
	background: var(--bs-secondary-bg);
}
/* #endregion*/

/* #region field editor*/
.factory-fields-table { width: 100%; }
.factory-fields-table .safe-text,
.factory-fields-table .safe-text-300 {
	max-width: 300px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.factory-fields-table > tbody > tr:has(> td[colspan="9"]) > * {
	--bs-table-bg: var(--bs-body-bg);
	--bs-table-color: var(--bs-body-color);
	--bs-table-bg-type: transparent;
	--bs-table-bg-state: transparent;
}
.factory-fields-table span.safe-text-300 { display: inline-block; vertical-align: middle; }
.factory-fields-table .relation-anim { animation: memory-relation 0.7s linear infinite; }
@keyframes memory-relation {
	0%, 100% { background-color: var(--bs-warning-bg-subtle); }
	50% { background-color: transparent; }
}
.factory-fields-table .memory-edit-field:not([type="checkbox"]) { min-width: 6rem; }
.memory-edit-field.modified {
	background-color: var(--bs-warning-bg-subtle);
	border-color: var(--bs-warning);
	color: var(--bs-warning-text-emphasis);
}
.memory-edit-field.form-check-input.modified:checked { background-color: var(--bs-warning); }
.bg-touched > td { --bs-table-bg: var(--bs-warning-bg-subtle); }
.factory-fields-table.no-borders > tbody > tr > * {
	--bs-table-bg-type: transparent;
	border-bottom-width: 0;
}
.factory-fields-table.no-borders > tbody > tr:nth-child(4n+1) > *,
.factory-fields-table.no-borders > tbody > tr:nth-child(4n+2) > * { --bs-table-bg: var(--bs-tertiary-bg); }
.factory-fields-table.no-borders > tbody > tr.tbl-border > * { border-bottom-width: 1px; }
.factory-fields-table > tbody > tr > td:first-child .material-symbols-outlined:is(.text-primary, .text-success),
.factory-fields-table .memory-pin-active {
	font-variation-settings: 'FILL' 1, 'wght' 600;
}
.factory-fields-table .memory-pin-active {
	background: transparent;
	box-shadow: none;
}
.factory-memory-table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	font-family: var(--bs-font-monospace);
	font-size: .75rem;
	color: var(--bs-body-color);
}
.factory-memory-table td,
.factory-memory-table th {
	border: 1px solid var(--bs-border-color);
	padding: .25rem .125rem;
	text-align: center;
}
.factory-memory-tr { border-top: 3px solid var(--bs-border-color); }
.memory-dump-char { color: var(--bs-info-text-emphasis); font-weight: 600; }
[data-memfield] { cursor: pointer; padding: .25rem .5rem; border-radius: var(--bs-border-radius-sm); }
[data-memfield].selected { color: var(--bs-info-text-emphasis); }

/* #endregion*/

/* #region component card*/
.dlb-value-card { container-type: inline-size; min-width: 0; height: 100%; }
.dlb-card-icon { width: 3.5rem; height: 3.5rem; }
.dlb-card-content { min-width: 0; }
.dlb-card-title, .dlb-card-value { overflow-wrap: anywhere; word-break: normal !important; }
.dlb-card-editor > .form-control,
.dlb-card-editor > .form-select { flex: 1 1 0; width: 0 !important; min-width: 0; }
.dlb-card-editor > .invalid-feedback { order: 3; flex-basis: 100%; }
.dlb-multicard { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: .5rem; margin: 0; }
.dlb-multicard > * { width: auto; max-width: 100%; margin: 0; padding: 0; min-width: 0; }
.dlb-card-group { container-type: inline-size; }
@container (max-width: 36rem) {
    .dlb-card-group > [class*="col-"]:has(.dlb-value-card) { width: 100%; }
}
@container (max-width: 18rem) {
    .dlb-card-icon { width: 2.5rem; height: 2.5rem; }
    .dlb-card-icon > .material-symbols-outlined { font-size: 1.25rem !important; }
    .dlb-card-value { font-size: 1.2rem !important; }
}
@container (max-width: 12rem) {
    .dlb-card-icon { display: none !important; }
}
/* #endregion*/

/* #region State-flow */
.dlb-state-flow { position: relative; margin: 5px; }
.dlb-state-flow .flow-item {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 35px;
    padding: 0 .25rem;
    border: 3px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius-sm);
    text-align: center;
    font-size: .875rem;
    line-height: 1.1;
}
:where(.dlb-state-flow .flow-item) {
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
}
.dlb-state-flow .flow-item-round { border-radius: var(--bs-border-radius-pill); }
.dlb-state-flow .connector { position: absolute; width: 50px; height: 50px; opacity: .3; }
.dlb-state-flow .connector-left { position: absolute; width: 50px; height: 25px; opacity: .3; }
.dlb-state-flow .vert-arrow {
    position: absolute;
    width: 28px;
    background: url('/public/components/images/arrowup.png') center / 28px repeat-y;
    opacity: .3;
}
/* #endregion */

/* #region map */
.dlb-map { min-width: 0; max-width: 100%; background: var(--bs-tertiary-bg); }
.dlb-map .leaflet-popup-content-wrapper,
.dlb-map .leaflet-popup-tip { background: var(--bs-body-bg); color: var(--bs-body-color); }
.dlb-map .leaflet-popup-content-wrapper { border-radius: var(--bs-border-radius); }
.dlb-map .leaflet-container a.leaflet-popup-close-button,
.dlb-map a.leaflet-popup-close-button { color: var(--bs-secondary-color); }
.dlb-map .leaflet-control-attribution { background: var(--bs-body-bg); color: var(--bs-secondary-color); }
.dlb-map .leaflet-control-attribution a { color: var(--bs-link-color); }
/* #endregion */

/* #region SVG */
.dlb-svg { min-width: 0; max-width: 100%; }
.dlb-svg > svg { max-width: 100%; height: auto; }
.dlb-svg [data-aldy-click], .dlb-svg [data-svg-button] { cursor: pointer; }
/* #endregion */

/* #region Weather */
.dlb-weather { min-width: 0; color: var(--bs-body-color); }
.dlb-weather .weather-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 6rem), 1fr));
    gap: .5rem;
}
.dlb-weather .weather-card {
    min-width: 0;
    padding: .75rem .5rem;
    text-align: center;
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    background: var(--bs-body-bg);
    overflow-wrap: anywhere;
}
.dlb-weather .weather-card-current {
    border-color: var(--bs-primary);
    background: var(--bs-primary-bg-subtle);
    color: var(--bs-primary-text-emphasis);
}
.dlb-weather .weather-time { font-size: .875rem; color: var(--bs-secondary-color); }
.dlb-weather .weather-icon { font-size: 2rem; line-height: 1.5; }
.dlb-weather .weather-temp { font-weight: 600; }
.dlb-weather .weather-irradiation { margin-top: .25rem; font-size: .75rem; }
/* #endregion */

/* #region Sequencer */
.dlb-sequencer { border: 1px solid var(--bs-border-color); border-inline-start-width: 4px; border-radius: var(--bs-border-radius); }
.dlb-sequencer.seq-running { border-inline-start-color: var(--bs-success); }
.dlb-sequencer.seq-paused { border-inline-start-color: var(--bs-warning); }
.dlb-sequencer.seq-blocked, .dlb-sequencer.seq-blocked-paused { border-inline-start-color: var(--bs-danger); }
.dlb-sequencer .button-bar { font-size: inherit; }
.dlb-sequencer .button-bar .btn { font-size: .875rem; padding: .25rem .5rem; }
.dlb-sequencer pre, .dlb-sequencer-help { max-width: 100%; }
.dlb-sequencer .dalic-sel-line { background: var(--bs-primary-bg-subtle); color: var(--bs-primary-text-emphasis); }
.dlb-sequencer .dalic-break-line { background: var(--bs-danger-bg-subtle); color: var(--bs-danger-text-emphasis); }
.dlb-sequencer .dad-station-container { background: var(--bs-tertiary-bg); border: 1px solid var(--bs-border-color); border-radius: var(--bs-border-radius); padding: .5rem; margin: 0 0 .75rem; min-height: 3rem; }
.dlb-sequencer .dad-title { background: var(--bs-secondary-bg); color: var(--bs-body-color); padding: .5rem; border-radius: var(--bs-border-radius-sm); }
.dlb-sequencer .dad-station { display: inline-block; width: 150px; max-width: 100%; padding: .5rem; margin: .25rem; border: 1px solid var(--bs-info-border-subtle); border-radius: var(--bs-border-radius-sm); background: var(--bs-body-bg); user-select: none; }
.dlb-sequencer .dad-station-title, .dlb-sequencer .dad-robot-title { background: transparent; color: var(--bs-body-color); font-weight: 600; overflow-wrap: anywhere; }
.dlb-sequencer .dad-mission { display: inline-block; padding: .25rem; color: var(--bs-success-text-emphasis); overflow-wrap: anywhere; }
.dlb-sequencer .dad-group-mission { display: none; padding: .25rem .5rem; margin: .125rem; border-radius: var(--bs-border-radius-sm); cursor: pointer; }
.dlb-sequencer .dad-group-mission.available { display: inline-block; color: var(--bs-body-color); background: var(--bs-body-bg); border: 1px solid var(--bs-border-color); }
.dlb-sequencer .dad-group-mission.enabled { display: inline-block; color: var(--bs-success-text-emphasis) !important; background: var(--bs-success-bg-subtle) !important; border: 1px solid var(--bs-success-border-subtle); }
.dlb-stations :is(.op-normal,.op-working,.op-ready,.op-stop) { height: 100%; border: 1px solid var(--bs-border-color); border-inline-start: 4px solid var(--bs-secondary-color); border-radius: var(--bs-border-radius); padding: .75rem; background: var(--bs-body-bg); color: var(--bs-body-color); overflow-wrap: anywhere; }
.dlb-stations .op-working { border-inline-start-color: var(--bs-info); }
.dlb-stations .op-ready { border-inline-start-color: var(--bs-success); }
.dlb-stations .op-stop { border-inline-start-color: var(--bs-danger); }
.dlb-stations .op-in-use { border-style: dashed; }
.dlb-stations .op-title { font-weight: 600; margin-bottom: .5rem; }
.dlb-stations .op-val { margin-top: .25rem; }

/* #endregion */

/* #endregion */