/*
 * Copyright (c) 2026 Evo~ERP, Inc. All rights reserved.
 */

.tas-program {
    width: 100%;
    min-height: 20rem;
    background: var(--tas-theme-001-background);
    color: var(--tas-theme-002-color);
    font-family: Arial, "MS Sans Serif", Tahoma, sans-serif;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 0;
}

.tas-program,
.tas-program * {
    box-sizing: border-box;
}

.tas-program__surface-frame {
    width: 100%;
    overflow: auto;
    padding: 0;
    border: var(--tas-theme-003-border);
    border-radius: var(--tas-theme-004-border-radius);
    background: var(--tas-theme-005-background);
}

.tas-jtui-component {
    box-sizing: border-box;
    color: var(--tas-theme-006-color);
    font-family: Arial, "MS Sans Serif", Tahoma, sans-serif;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 0;
}

.tas-jtui-component--root,
.tas-jtui-component--tform,
.tas-jtui-component[class*="tas-jtui-component--teditform"] {
    overflow: hidden;
    border: var(--tas-theme-007-border);
    border-radius: var(--tas-theme-008-border-radius);
    background: var(--tas-theme-009-background);
    color: var(--tas-theme-010-color);
    box-shadow: var(--tas-theme-011-box-shadow);
}

.tas-program--chained {
    border-radius: var(--tas-theme-012-border-radius);
}

.tas-jtui-container,
.tas-jtui-role-panel,
.tas-jtui-role-groupbox {
    overflow: hidden;
    background: var(--tas-theme-013-background);
}

.tas-jtui-role-panel {
    border: var(--tas-theme-014-border);
    border-top-color: var(--tas-theme-015-border-top-color);
    border-left-color: var(--tas-theme-016-border-left-color);
}

.tas-jtui-role-panel.tas-jtui-component--align-alclient {
    border: var(--tas-theme-017-border);
}

.tas-jtui-role-groupbox {
    border: var(--tas-theme-018-border);
}

.tas-jtui-component--tbevel,
.tas-jtui-component--tshape {
    overflow: hidden;
    border: var(--tas-theme-019-border);
    border-right-color: var(--tas-theme-020-border-right-color);
    border-bottom-color: var(--tas-theme-021-border-bottom-color);
    background: var(--tas-theme-022-background);
    pointer-events: none;
}

.tas-jtui-image {
    display: block;
    object-fit: contain;
}

.tas-jtui-role-toolbar,
.tas-jtui-component--ttoolbar {
    overflow: hidden;
    border: var(--tas-theme-023-border);
    border-top: var(--tas-theme-024-border-top);
    border-bottom: var(--tas-theme-025-border-bottom);
    background: var(--tas-theme-026-background);
}

.tas-jtui-component[class*="tas-jtui-component--teditform"] > .tas-jtui-caption,
.tas-jtui-component--tform > .tas-jtui-caption,
.tas-jtui-role-panel > .tas-jtui-caption,
.tas-jtui-role-toolbar > .tas-jtui-caption {
    display: none;
}

.tas-jtui-caption {
    display: block;
    padding: 2px 4px;
    overflow: hidden;
    color: var(--tas-theme-027-color);
    font-family: Arial, "MS Sans Serif", Tahoma, sans-serif;
    font-size: 12px;
    font-weight: var(--tas-theme-028-font-weight);
    line-height: 16px;
    white-space: nowrap;
}

.tas-jtui-role-page-control {
    overflow: hidden;
    border-top: var(--tas-theme-029-border-top);
    background: var(--tas-theme-030-background);
}

.tas-jtui-role-tab-sheet {
    overflow: hidden;
    border: var(--tas-theme-031-border);
    border-top-color: var(--tas-theme-032-border-top-color);
    border-left-color: var(--tas-theme-033-border-left-color);
    background: var(--tas-theme-034-background);
}

.tas-jtui-role-tab-sheet > .tas-jtui-caption {
    display: inline-flex;
    align-items: center;
    height: 21px;
    margin: 0 -1px 0 0;
    padding: 2px 8px 1px;
    border: var(--tas-theme-035-border);
    border-bottom-color: var(--tas-theme-036-border-bottom-color);
    background: var(--tas-theme-037-background);
    line-height: 15px;
}

.tas-jtui-label,
.tas-jtui-role-label {
    overflow: visible;
    color: var(--tas-theme-038-color);
    font-family: Arial, "MS Sans Serif", Tahoma, sans-serif;
    font-size: 12px;
    font-weight: var(--tas-theme-039-font-weight);
    line-height: 16px;
    white-space: nowrap;
}

.tas-jtui-input,
.tas-jtui-button,
.tas-jtui-checkbox,
.tas-jtui-radio-button,
.tas-jtui-grid {
    width: 100%;
    height: 100%;
    min-width: 0;
    margin: 0;
}

.tas-program vaadin-text-field.tas-jtui-input,
.tas-program vaadin-combo-box.tas-jtui-input,
.tas-program vaadin-date-picker.tas-jtui-input,
.tas-program vaadin-time-picker.tas-jtui-input,
.tas-program vaadin-text-area.tas-jtui-input {
    margin: 0;
    padding: 0;
    min-height: 0;
    overflow: hidden;
    font: 12px "MS Sans Serif", Tahoma, Arial, sans-serif;
    --vaadin-input-field-background: transparent;
    --vaadin-input-field-border-color: transparent;
    --vaadin-input-field-border-radius: 0;
    --vaadin-input-field-border-width: 0;
    --vaadin-input-field-height: 100%;
    --vaadin-input-field-padding: 0 3px;
    --vaadin-input-field-value-color: var(--tas-text);
    --vaadin-input-field-placeholder-color: var(--tas-text-muted);
    --vaadin-input-field-disabled-text-color: var(--tas-text-muted);
    --vaadin-input-field-value-font-size: 12px;
    --vaadin-input-field-value-line-height: 16px;
    --vaadin-focus-ring-width: var(--tas-theme-040-vaadin-focus-ring-width);
}

.tas-program vaadin-text-field.tas-jtui-input::part(input-field),
.tas-program vaadin-combo-box.tas-jtui-input::part(input-field),
.tas-program vaadin-date-picker.tas-jtui-input::part(input-field),
.tas-program vaadin-time-picker.tas-jtui-input::part(input-field),
.tas-program vaadin-text-area.tas-jtui-input::part(input-field) {
    width: 100%;
    height: 100%;
    min-height: 0;
    padding: 1px 3px;
    border: var(--tas-theme-041-border);
    border-right-color: var(--tas-theme-042-border-right-color);
    border-bottom-color: var(--tas-theme-043-border-bottom-color);
    border-radius: var(--tas-theme-044-border-radius);
    background: var(--tas-theme-045-background);
    box-shadow: var(--tas-theme-046-box-shadow);
}

.tas-program vaadin-text-field.tas-jtui-component--ttasnumberenter::part(input-field),
.tas-program vaadin-text-field.tas-jtui-component--ttasnumenter::part(input-field),
.tas-program vaadin-text-field.tas-jtui-component--tnumberenter::part(input-field),
.tas-program vaadin-text-field.tas-jtui-component--tnumericedit::part(input-field) {
    background: var(--tas-theme-047-background);
}

.tas-program vaadin-text-field.tas-jtui-number-input {
    text-align: right;
    --vaadin-input-field-value-text-align: right;
}

.tas-program vaadin-text-field.tas-jtui-number-input > input {
    text-align: right;
}

.tas-program vaadin-text-field.tas-jtui-input--readonly,
.tas-program vaadin-date-picker.tas-jtui-input--readonly,
.tas-program vaadin-time-picker.tas-jtui-input--readonly,
.tas-program vaadin-text-field.tas-jtui-input[readonly] {
    color: var(--tas-text);
    --vaadin-input-field-readonly-border: 0;
    --vaadin-input-field-disabled-value-color: var(--tas-text);
    --vaadin-input-field-value-color: var(--tas-text);
}

.tas-program vaadin-text-field.tas-jtui-input--readonly::part(input-field),
.tas-program vaadin-date-picker.tas-jtui-input--readonly::part(input-field),
.tas-program vaadin-time-picker.tas-jtui-input--readonly::part(input-field),
.tas-program vaadin-text-field.tas-jtui-input[readonly]::part(input-field) {
    border: var(--tas-theme-041-border);
    border-right-color: var(--tas-theme-042-border-right-color);
    border-bottom-color: var(--tas-theme-043-border-bottom-color);
    background: var(--tas-face);
    box-shadow: var(--tas-theme-046-box-shadow);
}

.tas-program vaadin-text-field.tas-jtui-input--readonly > input,
.tas-program vaadin-date-picker.tas-jtui-input--readonly > input,
.tas-program vaadin-time-picker.tas-jtui-input--readonly > input,
.tas-program vaadin-text-field.tas-jtui-input[readonly] > input {
    color: var(--tas-text);
    -webkit-text-fill-color: var(--tas-text);
    opacity: 1;
}

.tas-program vaadin-text-field.tas-jtui-input[focused]::part(input-field),
.tas-program vaadin-combo-box.tas-jtui-input[focused]::part(input-field),
.tas-program vaadin-date-picker.tas-jtui-input[focused]::part(input-field),
.tas-program vaadin-time-picker.tas-jtui-input[focused]::part(input-field),
.tas-program vaadin-text-area.tas-jtui-input[focused]::part(input-field),
.tas-program vaadin-text-field.tas-jtui-input.tas-jtui-component--focused::part(input-field),
.tas-program vaadin-combo-box.tas-jtui-input.tas-jtui-component--focused::part(input-field),
.tas-program vaadin-date-picker.tas-jtui-input.tas-jtui-component--focused::part(input-field),
.tas-program vaadin-time-picker.tas-jtui-input.tas-jtui-component--focused::part(input-field),
.tas-program vaadin-text-area.tas-jtui-input.tas-jtui-component--focused::part(input-field) {
    border-color: var(--tas-theme-048-border-color);
    background: var(--tas-theme-049-background);
    box-shadow: var(--tas-theme-050-box-shadow);
}

.tas-program vaadin-text-field.tas-jtui-input > input,
.tas-program vaadin-combo-box.tas-jtui-input > input,
.tas-program vaadin-date-picker.tas-jtui-input > input,
.tas-program vaadin-time-picker.tas-jtui-input > input,
.tas-program vaadin-text-area.tas-jtui-input > textarea {
    height: 100%;
    min-height: 0;
    padding: 0;
    font: 12px/16px "MS Sans Serif", Tahoma, Arial, sans-serif;
}

.tas-program vaadin-date-picker.tas-jtui-date-input {
    min-width: 0;
    --vaadin-date-picker-overlay-width: 18rem;
}

.tas-program vaadin-date-picker.tas-jtui-date-input::part(toggle-button) {
    width: 18px;
    min-width: 18px;
    height: 100%;
    padding: 0;
    border-left: var(--tas-theme-051-border-left);
    border-radius: var(--tas-theme-052-border-radius);
    background: var(--tas-theme-053-background);
    color: var(--tas-theme-054-color);
}

.tas-program vaadin-date-picker.tas-jtui-date-input::part(input-field) {
    overflow: hidden;
}

.tas-program vaadin-date-picker.tas-jtui-date-input::part(label),
.tas-program vaadin-date-picker.tas-jtui-date-input::part(helper-text),
.tas-program vaadin-date-picker.tas-jtui-date-input::part(error-message) {
    display: none;
}

.tas-program vaadin-time-picker.tas-jtui-time-input {
    min-width: 0;
}

.tas-program vaadin-time-picker.tas-jtui-time-input::part(toggle-button) {
    width: 18px;
    min-width: 18px;
    height: 100%;
    padding: 0;
}

.tas-program vaadin-time-picker.tas-jtui-time-input::part(input-field) {
    overflow: hidden;
}

.tas-program vaadin-time-picker.tas-jtui-time-input::part(label),
.tas-program vaadin-time-picker.tas-jtui-time-input::part(helper-text),
.tas-program vaadin-time-picker.tas-jtui-time-input::part(error-message) {
    display: none;
}

.tas-program vaadin-combo-box.tas-jtui-input::part(toggle-button),
.tas-program vaadin-combo-box.tas-jtui-input::part(field-button) {
    width: 18px;
    min-width: 18px;
    height: 100%;
    padding: 0;
    border-left: var(--tas-theme-051-border-left);
    border-radius: var(--tas-theme-052-border-radius);
    background: var(--tas-theme-053-background);
    color: var(--tas-theme-054-color);
}

.tas-program .tas-jtui-combo-enter {
    display: flex;
    align-items: stretch;
    overflow: hidden;
    gap: 0;
    background: var(--tas-theme-055-background);
}

.tas-program vaadin-text-field.tas-jtui-combo-enter__field {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    height: 100%;
}

.tas-program vaadin-text-field.tas-jtui-combo-enter__field::part(input-field) {
    border-right-width: var(--tas-theme-056-border-right-width);
    border-radius: var(--tas-theme-057-border-radius);
}

.tas-program .tas-jtui-combo-enter.tas-jtui-component--focused vaadin-text-field.tas-jtui-combo-enter__field::part(input-field) {
    background: var(--tas-theme-058-background);
}

.tas-program vaadin-button.tas-jtui-combo-enter__button {
    flex: 0 0 20px;
    width: 20px;
    min-width: 18px;
    height: 100%;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: var(--tas-theme-059-border);
    border-left-color: var(--tas-theme-060-border-left-color);
    border-top-color: var(--tas-theme-061-border-top-color);
    border-radius: var(--tas-theme-062-border-radius);
    background: var(--tas-theme-063-background);
    color: var(--tas-theme-064-color);
    box-shadow: var(--tas-theme-065-box-shadow);
    --vaadin-button-background: var(--tas-theme-066-vaadin-button-background);
    --vaadin-button-border-radius: var(--tas-theme-067-vaadin-button-border-radius);
    --vaadin-button-padding: 0;
}

.tas-program vaadin-button.tas-jtui-combo-enter__button:active {
    border-color: var(--tas-theme-068-border-color);
    background: var(--tas-theme-069-background);
    box-shadow: var(--tas-theme-070-box-shadow);
}

.tas-program vaadin-button.tas-jtui-combo-enter__button vaadin-icon {
    width: 12px;
    height: 12px;
    color: var(--tas-theme-071-color);
}

.tas-program vaadin-checkbox.tas-jtui-checkbox {
    display: flex;
    align-items: center;
    padding: 0;
    font: 12px/16px "MS Sans Serif", Tahoma, Arial, sans-serif;
}

.tas-program vaadin-checkbox.tas-jtui-checkbox.tas-jtui-choice-caption-first {
    flex-direction: row-reverse;
    justify-content: space-between;
}

.tas-program vaadin-checkbox.tas-jtui-checkbox::part(checkbox) {
    width: 13px;
    height: 13px;
    min-width: 13px;
    border: var(--tas-theme-072-border);
    border-right-color: var(--tas-theme-073-border-right-color);
    border-bottom-color: var(--tas-theme-074-border-bottom-color);
    border-radius: var(--tas-theme-075-border-radius);
    background: var(--tas-theme-076-background);
    box-shadow: var(--tas-theme-077-box-shadow);
}

.tas-program vaadin-checkbox.tas-jtui-checkbox::part(label) {
    padding-inline-start: 4px;
    color: var(--tas-theme-078-color);
    font-size: 12px;
    line-height: 16px;
}

.tas-program vaadin-checkbox.tas-jtui-checkbox.tas-jtui-choice-caption-first::part(label) {
    padding-inline-start: 0;
    padding-inline-end: 4px;
}

.tas-program .tas-jtui-choice {
    display: flex;
    align-items: center;
    min-width: 0;
    min-height: 0;
    margin: 0;
    padding: 0;
    overflow: visible;
    gap: 4px;
    border: 0;
    background: transparent;
    font: 12px/16px "MS Sans Serif", Tahoma, Arial, sans-serif;
}

.tas-program .tas-jtui-choice:not(.tas-jtui-choice-caption-first) {
    flex-direction: row-reverse;
    justify-content: flex-end;
}

.tas-program .tas-jtui-choice.tas-jtui-choice-caption-first {
    justify-content: space-between;
}

.tas-program .tas-jtui-choice__label {
    display: block;
    min-width: 0;
    overflow: visible;
    color: var(--tas-theme-078-color);
    white-space: nowrap;
    font: 12px/16px "MS Sans Serif", Tahoma, Arial, sans-serif;
}

.tas-program .tas-jtui-choice__input {
    flex: 0 0 auto;
    width: 13px;
    height: 13px;
    min-width: 13px;
    margin: 0;
    padding: 0;
}

.tas-program .tas-jtui-radio-button .tas-jtui-choice__input {
    border-radius: 50%;
}

.tas-program vaadin-radio-group.tas-jtui-radio-button {
    display: block;
    min-width: 0;
    min-height: 0;
    margin: 0;
    padding: 0;
    font: 12px/16px "MS Sans Serif", Tahoma, Arial, sans-serif;
}

.tas-program vaadin-radio-group.tas-jtui-radio-button::part(group-field) {
    display: block;
    width: 100%;
    height: 100%;
}

.tas-program vaadin-radio-group.tas-jtui-radio-button vaadin-radio-button {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    min-height: 0;
    margin: 0;
    padding: 0;
    font: 12px/16px "MS Sans Serif", Tahoma, Arial, sans-serif;
}

.tas-program vaadin-radio-group.tas-jtui-radio-button.tas-jtui-choice-caption-first vaadin-radio-button {
    flex-direction: row-reverse;
    justify-content: space-between;
}

.tas-program vaadin-radio-group.tas-jtui-radio-button vaadin-radio-button::part(radio) {
    width: 13px;
    height: 13px;
    min-width: 13px;
    border: var(--tas-theme-072-border);
    border-right-color: var(--tas-theme-073-border-right-color);
    border-bottom-color: var(--tas-theme-074-border-bottom-color);
    border-radius: 50%;
    background: var(--tas-theme-076-background);
    box-shadow: var(--tas-theme-077-box-shadow);
}

.tas-program vaadin-radio-group.tas-jtui-radio-button vaadin-radio-button::part(label) {
    padding-inline-start: 4px;
    color: var(--tas-theme-078-color);
    font-size: 12px;
    line-height: 16px;
}

.tas-program vaadin-radio-group.tas-jtui-radio-button.tas-jtui-choice-caption-first vaadin-radio-button::part(label) {
    padding-inline-start: 0;
    padding-inline-end: 4px;
}

.tas-program vaadin-button.tas-jtui-button {
    position: relative;
    min-width: 0;
    min-height: 0;
    margin: 0;
    padding: 0 5px;
    border: var(--tas-theme-079-border);
    border-left-color: var(--tas-theme-080-border-left-color);
    border-top-color: var(--tas-theme-081-border-top-color);
    border-radius: var(--tas-theme-082-border-radius);
    background: var(--tas-theme-083-background);
    color: var(--tas-theme-084-color);
    box-shadow: var(--tas-theme-085-box-shadow);
    font-family: "MS Sans Serif", Tahoma, Arial, sans-serif;
    font-size: 12px;
    line-height: 16px;
    text-align: center;
}

.tas-program vaadin-button.tas-jtui-button:hover,
.tas-program vaadin-button.tas-jtui-button:focus {
    background: var(--tas-theme-086-background);
    border-color: var(--tas-theme-087-border-color);
}

.tas-program vaadin-button.tas-jtui-button:active {
    border-color: var(--tas-theme-088-border-color);
    background: var(--tas-theme-089-background);
    box-shadow: var(--tas-theme-090-box-shadow);
    padding: 1px 4px 0 6px;
}

.tas-program vaadin-button.tas-jtui-button::part(label) {
    overflow: hidden;
    color: var(--tas-theme-091-color);
    text-overflow: clip;
    white-space: nowrap;
}

.tas-program vaadin-button.tas-jtui-button .tas-jtui-button-text {
    overflow: hidden;
    max-width: 100%;
    text-overflow: clip;
    white-space: nowrap;
}

.tas-program vaadin-button.tas-jtui-button .tas-jtui-button-hotkey {
    text-decoration-line: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}

.tas-program vaadin-button.tas-jtui-button.tas-jtui-component--tglyphbtn::part(label),
.tas-program vaadin-button.tas-jtui-button.tas-jtui-component--ttoolbutton::part(label) {
    padding-left: 17px;
}

.tas-program vaadin-button.tas-jtui-button.tas-jtui-button--has-glyph::part(label) {
    padding-left: 19px;
}

.tas-program vaadin-button.tas-jtui-button.tas-jtui-button--glyph-only::part(label) {
    padding-left: 0;
    font-size: 0;
}

.tas-program .tas-jtui-role-toolbar > vaadin-button.tas-jtui-button {
    padding: 0;
}

.tas-program .tas-jtui-role-toolbar > vaadin-button.tas-jtui-button.tas-jtui-component--ttoolbutton::part(label),
.tas-program .tas-jtui-role-toolbar > vaadin-button.tas-jtui-button.tas-jtui-button--glyph-only::part(label) {
    padding-left: 0;
    font-size: 0;
}

.tas-program vaadin-button.tas-jtui-button .tas-jtui-button-glyph {
    position: absolute;
    top: 50%;
    left: 4px;
    width: 16px;
    height: 16px;
    transform: translateY(-50%);
    object-fit: contain;
    image-rendering: auto;
    pointer-events: none;
}

.tas-program .tas-jtui-role-toolbar > vaadin-button.tas-jtui-button.tas-jtui-button--glyph-only .tas-jtui-button-glyph,
.tas-program vaadin-button.tas-jtui-button.tas-jtui-button--glyph-only .tas-jtui-button-glyph {
    left: 50%;
    transform: translate(-50%, -50%);
}

.tas-program vaadin-button.tas-jtui-button.tas-jtui-component--tglyphbtn::before,
.tas-program vaadin-button.tas-jtui-button.tas-jtui-component--ttoolbutton::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 4px;
    width: 14px;
    height: 14px;
    transform: translateY(-50%);
    border: var(--tas-theme-092-border);
    border-radius: var(--tas-theme-093-border-radius);
    background: var(--tas-theme-094-background);
}

.tas-program vaadin-button.tas-jtui-button.tas-jtui-button--has-glyph::before {
    content: none;
    display: none;
}

.tas-program .tas-jtui-role-toolbar > vaadin-button.tas-jtui-button.tas-jtui-component--ttoolbutton::before {
    left: 50%;
    transform: translate(-50%, -50%);
}

.tas-program vaadin-button.tas-jtui-button[data-jtui-name="btnExit"]::before {
    border-color: var(--tas-theme-095-border-color);
    background: var(--tas-theme-096-background);
}

.tas-program vaadin-button.tas-jtui-button[data-jtui-name="btnPrint"]::before {
    background: var(--tas-theme-097-background);
}

.tas-program vaadin-grid.tas-jtui-grid {
    border: var(--tas-theme-098-border);
    border-radius: var(--tas-theme-099-border-radius);
    background: var(--tas-theme-100-background);
    color: var(--tas-theme-101-color);
    font-family: Arial, "MS Sans Serif", Tahoma, sans-serif;
    font-size: 13px;
    line-height: 16px;
    --vaadin-grid-cell-padding: 0 2px;
    --vaadin-grid-row-height: 20px;
    --vaadin-grid-header-row-height: 19px;
    --vaadin-grid-background: var(--tas-theme-100-background);
    --vaadin-grid-row-background-color: var(--tas-theme-111-background);
    --vaadin-grid-row-selected-background-color: var(--tas-theme-114-background);
    --vaadin-focus-ring-width: var(--tas-theme-102-vaadin-focus-ring-width);
}

.tas-program vaadin-grid.tas-jtui-grid::part(table) {
    border-collapse: var(--tas-theme-103-border-collapse);
}

.tas-program vaadin-grid.tas-jtui-grid::part(header-cell) {
    min-height: 19px;
    border-right: var(--tas-theme-104-border-right);
    border-bottom: var(--tas-theme-105-border-bottom);
    background: var(--tas-theme-106-background);
    color: var(--tas-theme-107-color);
    font-weight: var(--tas-theme-108-font-weight);
    line-height: 16px;
}

.tas-program vaadin-grid.tas-jtui-grid::part(body-cell) {
    min-height: 20px;
    border-right: var(--tas-theme-109-border-right);
    border-bottom: var(--tas-theme-110-border-bottom);
    background: var(--tas-theme-111-background);
    color: var(--tas-theme-112-color);
    font-weight: var(--tas-theme-113-font-weight);
    line-height: 16px;
}

.tas-program vaadin-grid.tas-jtui-grid::part(selected-row),
.tas-program vaadin-grid.tas-jtui-grid::part(selected-row-cell),
.tas-program vaadin-grid.tas-jtui-grid::part(tas-selected-row),
.tas-program vaadin-grid.tas-jtui-grid::part(tas-selected-row-cell) {
    background: var(--tas-theme-114-background);
    color: var(--tas-theme-115-color);
}

.tas-program vaadin-grid.tas-jtui-grid::part(focused-cell),
.tas-program vaadin-grid.tas-jtui-grid::part(focused-cell selected-row-cell),
.tas-program vaadin-grid.tas-jtui-grid::part(focused-cell tas-selected-row-cell) {
    box-shadow: var(--tas-theme-116-box-shadow);
}

.tas-jtui-component--focused {
    outline: var(--tas-theme-117-outline);
    outline-offset: -2px;
}

.tas-jtui-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 8rem;
    padding: 1rem;
    background: var(--tas-theme-118-background);
    color: var(--tas-theme-119-color);
    font-family: "MS Sans Serif", Tahoma, Arial, sans-serif;
    font-size: 12px;
}

.tas-message-dialog__text {
    min-width: 20rem;
    max-width: 42rem;
    max-height: 28rem;
    overflow: auto;
    margin: 0 0 0.75rem;
    padding: 0.75rem;
    border: var(--tas-theme-120-border);
    border-radius: var(--tas-theme-121-border-radius);
    background: var(--tas-theme-122-background);
    color: var(--tas-theme-123-color);
    font-family: "Cascadia Mono", "Consolas", monospace;
    font-size: 0.9rem;
    line-height: 1.35;
    letter-spacing: 0;
    white-space: pre-wrap;
}

vaadin-dialog.tas-chain-dialog,
vaadin-dialog-overlay.tas-chain-dialog {
    --vaadin-dialog-border-radius: var(--tas-theme-124-vaadin-dialog-border-radius);
    --vaadin-dialog-shadow: var(--tas-theme-125-vaadin-dialog-shadow);
}

vaadin-dialog.tas-chain-dialog::part(overlay),
vaadin-dialog-overlay.tas-chain-dialog::part(overlay) {
    border: var(--tas-theme-126-border);
    border-radius: var(--tas-theme-127-border-radius);
    background: var(--tas-theme-128-background);
    box-shadow: var(--tas-theme-129-box-shadow);
    overflow: hidden;
    --vaadin-dialog-padding: 0;
    --vaadin-overlay-viewport-inset: 4px;
}

vaadin-dialog.tas-chain-dialog::part(header),
vaadin-dialog-overlay.tas-chain-dialog::part(header) {
    min-height: 25px;
    padding: 0;
    border-bottom: var(--tas-theme-130-border-bottom);
    background: var(--tas-theme-131-background);
    color: var(--tas-theme-132-color);
}

vaadin-dialog.tas-chain-dialog::part(content),
vaadin-dialog-overlay.tas-chain-dialog::part(content) {
    padding: 0;
    background: var(--tas-theme-133-background);
    overflow: hidden;
}

.tas-chain-dialog__body {
    padding: 6px;
    background: var(--tas-theme-134-background);
    overflow: hidden;
}

.tas-chain-dialog__titlebar {
    align-items: center;
    width: 100%;
    min-height: 25px;
    padding: 2px 3px 2px 6px;
    background: var(--tas-theme-135-background);
    color: var(--tas-theme-136-color);
    font-family: Arial, "MS Sans Serif", Tahoma, sans-serif;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 0;
}

.tas-chain-dialog__titlebar.draggable {
    cursor: move;
}

.tas-chain-dialog__title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

vaadin-button.tas-chain-dialog__close {
    width: 20px;
    min-width: 20px;
    height: 19px;
    min-height: 19px;
    margin: 0;
    color: var(--tas-theme-137-color);
    --vaadin-button-background: var(--tas-theme-138-vaadin-button-background);
    --vaadin-button-border-radius: var(--tas-theme-139-vaadin-button-border-radius);
    --vaadin-button-padding: 0;
    border: var(--tas-theme-140-border);
    border-top-color: var(--tas-theme-141-border-top-color);
    border-left-color: var(--tas-theme-142-border-left-color);
    border-radius: var(--tas-theme-143-border-radius);
    box-shadow: var(--tas-theme-144-box-shadow);
}

vaadin-button.tas-chain-dialog__close vaadin-icon {
    width: 12px;
    height: 12px;
}

vaadin-dialog.tas-lookup-dialog::part(overlay),
vaadin-dialog-overlay.tas-lookup-dialog::part(overlay) {
    border: var(--tas-theme-145-border);
    border-radius: var(--tas-theme-146-border-radius);
    background: var(--tas-theme-147-background);
    box-shadow: var(--tas-theme-148-box-shadow);
}

vaadin-dialog.tas-lookup-dialog::part(content),
vaadin-dialog-overlay.tas-lookup-dialog::part(content) {
    padding: 0;
    background: var(--tas-theme-149-background);
}

.tas-lookup-dialog__layout {
    gap: 8px;
    padding: 20px 28px 24px;
    background: var(--tas-theme-150-background);
    color: var(--tas-theme-151-color);
    font-family: Arial, Tahoma, sans-serif;
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0;
}

.tas-lookup-dialog__titlebar {
    gap: 8px;
    min-height: 32px;
    align-items: center;
}

.tas-lookup-dialog__title {
    margin: 0;
    color: var(--tas-theme-152-color);
    font-size: 16px;
    font-weight: var(--tas-theme-153-font-weight);
    line-height: 22px;
}

vaadin-button.tas-lookup-dialog__close {
    width: 32px;
    min-width: 32px;
    height: 32px;
    min-height: 32px;
    color: var(--tas-theme-154-color);
    --vaadin-button-background: var(--tas-theme-155-vaadin-button-background);
    --vaadin-button-border-radius: var(--tas-theme-156-vaadin-button-border-radius);
    --vaadin-button-padding: 0;
}

.tas-lookup-dialog__filterbar {
    gap: 12px;
    min-height: 36px;
    padding: 0;
    background: var(--tas-theme-157-background);
    color: var(--tas-theme-158-color);
}

vaadin-text-field.tas-lookup-dialog__search {
    --vaadin-input-field-value-color: var(--tas-text);
    --vaadin-input-field-placeholder-color: var(--tas-text-muted);
    margin: 0;
    padding: 0;
    width: min(492px, 48vw);
    min-width: 240px;
    height: 36px;
    min-height: 36px;
    --vaadin-input-field-background: #ffffff;
    --vaadin-input-field-border-radius: 8px;
    --vaadin-input-field-height: 36px;
    --vaadin-input-field-padding: 0 10px;
    --vaadin-input-field-value-font-size: 14px;
}

vaadin-text-field.tas-lookup-dialog__search::part(input-field) {
    border: var(--tas-theme-159-border);
    border-radius: var(--tas-theme-160-border-radius);
    background: var(--tas-theme-161-background);
    box-shadow: var(--tas-theme-162-box-shadow);
}

vaadin-text-field.tas-lookup-dialog__search vaadin-icon {
    width: 18px;
    height: 18px;
    color: var(--tas-theme-163-color);
}

vaadin-button.tas-lookup-dialog__clear {
    min-width: 76px;
    color: var(--tas-theme-164-color);
    --vaadin-button-background: var(--tas-theme-165-vaadin-button-background);
    --vaadin-button-border-radius: var(--tas-theme-166-vaadin-button-border-radius);
}

vaadin-grid.tas-lookup-dialog__grid {
    --vaadin-grid-background: var(--tas-theme-169-background);
    --vaadin-grid-row-background-color: var(--tas-theme-178-background);
    --vaadin-grid-row-selected-background-color: var(--tas-theme-181-background);
    flex: 1 1 auto;
    margin: 0;
    border: var(--tas-theme-167-border);
    border-radius: var(--tas-theme-168-border-radius);
    background: var(--tas-theme-169-background);
    color: var(--tas-theme-170-color);
    --vaadin-grid-cell-padding: 0 8px;
    --vaadin-grid-row-height: 34px;
    --vaadin-grid-header-row-height: 32px;
    --vaadin-focus-ring-width: var(--tas-theme-171-vaadin-focus-ring-width);
}

vaadin-grid.tas-lookup-dialog__grid::part(header-cell) {
    border-right: var(--tas-theme-172-border-right);
    border-bottom: var(--tas-theme-173-border-bottom);
    background: var(--tas-theme-174-background);
    color: var(--tas-theme-175-color);
    font-weight: var(--tas-theme-176-font-weight);
}

vaadin-grid.tas-lookup-dialog__grid::part(body-cell) {
    border-right: var(--tas-theme-177-border-right);
    background: var(--tas-theme-178-background);
    color: var(--tas-theme-179-color);
}

vaadin-grid.tas-lookup-dialog__grid::part(odd-row-cell) {
    background: var(--tas-theme-180-background);
}

vaadin-grid.tas-lookup-dialog__grid::part(selected-row-cell) {
    background: var(--tas-theme-181-background);
    color: var(--tas-theme-182-color);
}

.tas-debugger {
    width: 100%;
    padding: 0.75rem;
    border: var(--tas-theme-183-border);
    border-top: var(--tas-theme-184-border-top);
    background: var(--tas-theme-185-background);
    box-sizing: border-box;
}

.tas-debugger[hidden] {
    display: none;
}

.tas-debugger__layout {
    gap: 0.65rem;
}

.tas-debugger__toolbar {
    gap: 0.4rem;
}

.tas-debugger__button {
    width: 2.25rem;
    min-width: 2.25rem;
    height: 2.25rem;
}

.tas-debugger__state {
    font-family: "Cascadia Mono", "Consolas", monospace;
    font-size: 0.84rem;
    letter-spacing: 0;
}

.tas-document-downloads {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
}

.tas-document-downloads:not(:empty) {
    padding-block: 0.5rem;
}

.tas-report-dialog::part(overlay) {
    width: 30rem;
    max-width: calc(100vw - 2rem);
}

.tas-report-dialog__description {
    margin-block: 0 1rem;
}

.tas-report-dialog__template {
    width: 100%;
}

.tas-report-dialog__error {
    margin-block: 1rem 0;
    color: var(--vaadin-text-color);
    border-inline-start: 0.2rem solid var(--vaadin-text-color);
    padding-inline-start: 0.75rem;
}
