﻿.LoginPopupForm_Root {
    box-shadow: var(--boxShadowSmallLight);
    padding: var(--padding);
    /*outline:1px solid var(--complimentaryTheme);*/
    background: var(--brighter);
    /*backdrop-filter:blur(2px);*/
    cursor: default;
    border-bottom-left-radius: var(--round);
    border-bottom-right-radius: var(--round);
    /*margin-top:calc(-1 * var(--paddingX));*/
    text-align: initial;
    max-width: 60ch;
}

.darkTheme .LoginPopupForm_Root {
    background-color: var(--mediumDarkThemeBG);
    color: var(--bright);
}

.floatingContainer:has(*.LoginPopupForm_Root) {
    --minMargin: 0px;
}

#topBar_layout #top_login_info.popupActive {
    color: var(--accentThemeTxt);
    background-color: var(--accentTheme);
}

.LoginPopupForm_Root #mainButtonsRow {
    gap: 1em;
}


.twoFactorAuth_QRCode {
    width: 300px;
}

.darkTheme .twoFactorAuth_QRCode {
    filter: invert();
}

.twoFactorAuth_manualCode {
    font-family: monospace;
    letter-spacing: 1px;
    font-weight: bold;
    user-select: text;
}

.twoFactorAuth_headerContainer {
    margin-top: 1em;
}

.twoFactorAuth_QRCodeContainer {
    margin: 2em 0;
}

.twoFactorAuth_root {
    background-color: white;
    padding: 2em;
    margin-top: 1.5em;
}

.twoFactorAuth_explanationText_afterImg_container {
    margin-top: 1.5em;
}

.twoFactorAuth_FormContainer {
    margin-top: 1em;
}

.twoFactorAuth_inputContainer {
    display: flex;
    align-items: center;
    margin-bottom: 1em;
}

.twoFactorAuth_checboxContainer {
    display: flex;
    align-items: center;
}

.twoFactorAuth_checboxlabel {
    margin-right: 1em;
}

.twoFactorAuth_codeInput {
    width: 200px;
    display: inline-block;
    margin-right: 1em;
}

.twoFactorAuth_logoutButtonContainer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.twoFactorAuth_logoutButton {
    margin-right: 1.5em;
    margin-top: 2em;
    padding: 8px 16px;
}

/* KHB WEBKALENDER ENDZEITLABEL AUSBLENDEN */

.dojoxCalendarVertical .endTime {
    ;
    display: none !important;
    color: var(--bright);
}


/* PROJECTS */
*[data-table-type='ProjectFinder2Home'] td[data-colname='date'] {
    /*font-size: 1.2em;*/
    /*line-height: 1.2;*/
}


/*EvBookinEditor*/
.EvBookingEditorForm {
    --selectedRowColor: rgba(236, 103, 7, 0.2);
}

.EvBookingEditorForm .selectedTableRow {
    background-color: var(--selectedRowColor);
}

/* an das label-margin des inputs ausgleichen ------start*/
@media screen and (min-width: 674px) {
    .EvBookingditor_buttonShowEntityDialog {
        margin-top: 22px;
    }
}

@media screen and (max-width: 674px) {
    .EvBookingditor_buttonShowEntityDialog {
        margin-top: 0;
    }
}

.EvBookingEditor_editorFormButton {
    background-color: lightgray;
}

.EvBookingEditorForm .hintbox-items .EvRoomVacant:before {
    font-family: var(--fontawesome);
    font-weight: bold;
    margin-right: 0.4em;
    content: '\f274';
}

.EvBookingEditorForm .hintbox-items .EvRoomNotVacant:before {
    font-family: var(--fontawesome);
    font-weight: bold;
    margin-right: 0.4em;
    content: '\f273';
}

.EntityView {}

.EntityView.detailviewTable {
    width: 100%;
}

.EntityView .detailviewLabel {
    font-weight: bold;
    vertical-align: top;
    min-width: 10ch;
}

.EntityView.detailviewTable td {
    padding: 0.2em;
    line-height: 1.3;
}

.EntityView .detailviewContent {}

.EntityView .detailviewRow {}

/* an das label-margin des inputs ausgleichen ------end*/



/* Matrix */
.matrixRow {
    position: relative;
    width: 100%;
}


.orchestraMatrix .boxShadow {
    box-shadow: inset 0 0 0px 2px blue;
}

.matrixCell {
    float: left;
    text-align: center;
    line-height: 35px;
    font-size: 14pt;
    user-select: none;
}

.matrixCell_TOP_X {
    float: left;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    text-indent: 4px;
    height: 100%;
    font-size: 9pt;
}

.daygroupTop {
    border: 1px solid black;
    border-right-color: black;
    border-right-style: solid;
    border-right-width: 1px;
    border-right: none;
    text-align: center;
    font-weight: bold;
    font-size: 8pt;
}


/* Individual Datasheet */
.collapsiblesection {
    padding: var(--padding);
    /*padding-bottom:0;*/
    margin-top: var(--paddingY);
    border: 1px solid var(--tertiary);
    margin-bottom: var(--paddingY);
    border-radius: var(--round);
    background-color: var(--brightTransparent);
    position: relative;
}

.collapsiblesection {
    width: 100%;
    text-align: center;
}

.collapsiblesection .collapsibleAnimationContainer {
    position: absolute;
    bottom: -1px;
    left: 0;
    border-bottom-left-radius: var(--round);
    border-bottom-right-radius: var(--round);
    height: 1.5em;
    width: 100%;
    /*background-color: red;*/
    pointer-events: none;
}

.collapsiblesection .collapsibleAnimationContainer>div {
    position: relative;
    height: 100%;
    width: 100%;
    /*background-color: red;*/
    pointer-events: none;
}


/* REPORT DASHBOARD*/

.reportDashboardRoot .navigationContainer {}

.reportDashboardRoot .tilesContainer>.dashboardTileOuter {
    max-width: 45rem;
}

/* file dashboard*/
.fileDashboardRoot {}

/* Überschrift: */
.fileDashboardRoot>h2 {}

/* Navigation innerhalb eines Tabs: */
.tabContainer #contentNode .navigationContainer {
    display: flex;
    flex-flow: column;
    gap: 1em;
}

.tabContainer #contentNode .navigationContainer .NavigationArea {
    width: 100%;
    border-radius: var(--round);
    border: 0px solid var(--medium);
    padding: var(--padding);
}


.addressWizard {}

.addressWizard button.addCommunicationButton {
    border-radius: 20em;
}

*:is(.addressWizard, .contactPersonFormRoot) button.addCommunicationButton *:is(i, span) {
    pointer-events: none
}

*:is(.addressWizard, .contactPersonFormRoot) table td button {}

*:is(.addressWizard, .contactPersonFormRoot) table td button.deleteBtn {
    color: var(--warningText);
    background-color: var(--warning)
}

*:is(.addressWizard, .contactPersonFormRoot) table td button.editBtn {}

*:is(.addressWizard, .contactPersonFormRoot) table td:has(button)>div:not(:first-child) {
    margin-left: 0.4em;
}

/*EvBookingEditor - ProgrammEditor*/

.programEditor {}

.programEditor .editorRow {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: end;
}

.programEditor .editorFirstColumn {
    flex: 0 0 auto;
    width: 15%;
}

.programEditor .editorColumn {
    flex: auto;
}

.programEditor .inputEditColumn {
    width: 35%;
    margin: 0 2px;
}

.programEditor .inputDurationColumn {
    width: 20%;
    margin: 0 2px;
}

.programEditor .buttonColumn {
    width: 10%;
    padding: 4px 8px;
}


.todoForm_Root {
    container-type: inline-size;
    /* macht die Section zu einem Container für Container Queries */
    container-name: todoContainer;
}

.todoForm_Root .todoForm_MemberTodoEntry {
    flex-basis: 49%;
    flex-shrink: 0;
}


@container todoContainer (max-width: 800px) {

    /* für Elemente, die sich in einem solchen Container befinden */
    /* zb: Elemente in flex-containern sollen statt 49% lieber doch 100% flex-basis verwenden */
    .todoForm_Root .todoForm_MemberTodoEntry {
        flex-basis: 100%;
    }
}

.EvTaskView .taskDetailsTable {}

.EvTaskView .taskDetailsTable tr>td:first-child {
    text-align: end;
    font-size: 0.9em;
    color: var(--secondary);
}

.EvTaskView .taskDetailsTable tr>td:last-child::before {
    content: attr(data-label);

}

.EvTaskView *:is(.appointmentDetails, .taskDetails) {
    font-size: 1rem;
}

.EvTaskView *:is(.appointmentDetails, .taskDetails) label {
    font-size: 0.85em;
    color: var(--secondary);
}

.EvTaskView *:is(.appointmentDetails, .taskDetails) p {
    margin-top: 0;
}


.EvTaskView #todosContainer>* {
    flex-basis: 49%;
    flex-shrink: 0;
}

/* allgemeiner Style für Entityviews, weil Schema Label+Inhalt brauchen wir öfter.*/
.entityViewContainer {}

.entityViewContainer>label,
.entityViewContainer>*>label

/* weil manchmal was verschachtelt ist... */
    {
    font-size: 0.85em;
    color: var(--secondary);
}

.entityViewContainer>label+p {
    margin-top: 0;
}

/* OCCURRENCE / EFORMS */

/*-------------------------Occurrence----------------------------------------*/
.occurrenceFormRoot {
    min-height: 25em;
    user-select: none;
    --special: brown;
    --mandatory: var(--w3PaleYellow);
    --mandatoryTxt: inherit;
    --mandatoryMissing: var(--w3PaleYellow);
    --mandatoryMissingTxt: initial;
    /*var(--warning);*/
}

.occurrenceFormRoot .searchSelect_groupLabel {
    font-weight: bold;
}

.occurrenceFormRoot .searchSelect_groupLabel hr {
    border-color: var(--secondary);
}

.occurrenceFormRoot .propertiesTable {
    width: 100%;
}

.occurrenceFormRoot .OccurrenceForm_CommentContainer {
    /*margin-bottom: 32px;*/
    /* warum? */
}

.occurrenceFormRoot .propertiesTable {
    border-collapse: collapse;
    font-size: 0.9em;
    --secondaryBorderColors: var(--mediumBright);
    --mainBorderColors: var(--medium);
    /*border-top: 1px solid var(--secondaryBorderColors);*/
}

.occurrenceFormRoot .propertiesTable *:is(.propRow, .groupRow):not(.heading) .propertyContainer {
    margin: var(--paddingY) 0;
    border-radius: var(--round);
    padding: var(--paddingSmall);
}

/* ein Propertycontainer innerhalb einer anderen Propertytable (also Gruppe) verhält sich wie eine Table-Cell: */
.occurrenceFormRoot .propertiesTable tr.groupRow .propertiesTable .propertyContainer {
    display: table-cell;
}


.occurrenceFormRoot .propertiesTable .propertiesTable {
    font-size: 1em;
}

.occurrenceFormRoot .propertiesTable thead {
    font-weight: bold;
    font-size: 1.2em;
}

.occurrenceFormRoot .propertiesTable thead th,
.occurrenceFormRoot .propertiesTable thead td {
    border-bottom: 1px solid var(--mainBorderColors);
}

.occurrenceFormRoot .propertiesTable tr.propRow td {
    /*padding: var(--paddingSmall);
            border-color: var(--secondaryBorderColors);*/
    border-style: solid;
    border-width: 0px;
}

.occurrenceFormRoot .propertiesTable>tr.groupRow {
    border-right: 1px solid var(--mainBorderColors);
    border-left: 1px solid var(--mainBorderColors);
}


.occurrenceFormRoot .propertiesTable tr.mandatory>div.propertyContainer {
    background-color: var(--mandatory);
    color: var(--mandatoryTxt);
}

.occurrenceFormRoot .propertiesTable tr.mandatoryMissing>div.propertyContainer {
    background-color: var(--mandatoryMissing);
    color: var(--mandatoryMissingTxt);
}

.occurrenceFormRoot .propertiesTable tr.mandatoryMissing>div.propertyContainer>.propertyLabel {
    box-shadow: inset 0px -2px 0px 0px var(--mandatoryMissing);
}

.occurrenceFormRoot .propertiesTable tr.mandatoryMissing>div.propertyContainer>div.propertyValue {
    box-shadow: inset 0px -2px 0px 0px var(--mandatoryMissing);
}

.occurrenceFormRoot .propertiesTable tr.mandatoryMissing>td {
    color: var(--mandatoryMissing);
}

.occurrenceFormRoot .propertiesTable tr.groupRow.mandatoryMissing>td:last-child {
    color: unset;
}


.occurrenceFormRoot .propertiesTable div.helptext {
    /*padding: var(--paddingSmall);*/
    opacity: 1;
    color: var(--secondaryThemeD2);
    font-style: italic;
    font-size: 0.95em;
}

.occurrenceFormRoot .propertiesTable div.helptext span::before {
    content: '\f05a';
    font-family: var(--fontawesome);
    /*"Font Awesome 5 Free";*/
    margin-right: 0.4em;
    font-weight: bold;
    font-style: normal;
}

.occurrenceFormRoot .propertiesTable tr.propRow>td.groupEntryCounter {
    vertical-align: middle;
    border-width: 1px;
    border-style: solid;
    border-color: var(--mainBorderColors);
    text-align: center;
    font-weight: bold;
    border-right-color: var(--mainBorderColors);
}

.occurrenceFormRoot .propertiesTable tr.propRow>td.groupEntryCounter>div {
    display: flex;
    flex-direction: column;
    align-content: center;
}

.occurrenceFormRoot .propertiesTable tr:is(.propRow, .groupRow) label.propertyLabel {
    font-weight: bold;
    font-size: 1.2em;
    display: block;
}

.occurrenceFormRoot .propertiesTable tr.propRow.heading *:is(h3, h4, h5) {
    font-size: 1.5em;
    text-align: center;
    font-weight: bold;
    /*padding: var(--padding);*/
    background-color: unset;
    /*var(--secondary);*/
    /*color: var(--secondaryText);*/
}

.occurrenceFormRoot .propertiesTable tr.propRow.heading.small1 *:is(h3, h4, h5) {
    font-style: italic;
    font-size: 1.2em;
}

.occurrenceFormRoot .propertiesTable tr.propRow.heading.small2 *:is(h3, h4, h5) {
    font-size: 0.9em;
    /*text-align:left;*/
}

.occurrenceFormRoot .propertiesTable tr.propRow.heading>td.propertyLabel {
    /*box-shadow: inset 0px -2px 0px 1px var(--secondary);*/
    padding-top: 1.2em;
    border-bottom-color: var(--secondaryBorderColors);
    border-bottom-width: 2px;
}

.occurrenceFormRoot .propertiesTable tr.propRow.heading.small1>td.propertyLabel,
.occurrenceFormRoot .propertiesTable tr.propRow.heading.small2>td.propertyLabel {
    border-bottom: 0;
    padding-top: 0.8em;
}

.occurrenceFormRoot .propertiesTable tr.groupRow.modifier>td {
    text-align: center;
}

/* wenn sich Labels neu laden, die alten Labels langsam abblenden */
.occurrenceFormRoot .obsoleteLabels label.propertyLabel,
.occurrenceFormRoot .obsoleteLabels td.groupEntryCounter>div {
    transition: 0.5s;
    opacity: 0.3;
}

/* die linke Spalte, in der bei Gruppen über die ganze Höhe einfach das Label der Gruppe steht */
.occurrenceFormRoot .propertiesTable tr.groupRow>div.propertyContainer>label.groupLabel {
    padding: var(--paddingSmall);
    vertical-align: top;
}



.occurrenceFormRoot .propertiesTable tr.groupRow>div.propertyContainer>label.groupLabel>div>div.labelMinValue,
.occurrenceFormRoot .propertiesTable tr.groupRow>div.propertyContainer>label.groupLabel>div>div.labelMaxValue {
    font-style: italic;
    font-size: 0.9em;
}

.occurrenceFormRoot .propertiesTable tr.groupRow>div.propertyContainer>label.groupLabel>div>button {
    display: block;
}



/* VoiceAttributeForm */

.voice-attribute-form-number-container {
    white-space: nowrap;
    width: 30%
}

.voice-attribute-form-comment-container {
    width: 65%;
}

.voice-attribute-row {
    gap: 1em;
}

.voice-attribute-form-number-input {
    width: 35%;
}

.voice-attribute-number-checkbox {
    width: 55%;
}

.voice-attribute-form-comment-input {
    width: 80%;
}


@media screen and (max-width: 700px) {
    .voice-attribute-form-number-container {
        flex-direction: column;
    }

    .voice-attribute-form-comment-container {
        flex-direction: column;
    }

    .voice-attribute-form-number-input {
        width: 60%;
    }
}

/* Travel Booking Form */
.hintbox-travelbookingform {
    flex: 1 1 20em;
}

.travel-booking-form-location-start-input {
    flex: 1 1 20em;
}

.travel-booking-form-location-end-input {
    flex: 1 1 20em;
}

.travel-booking-form-date-forerun-input {
    flex: 1 1 20em;
    max-width: 25em;
}

.travel-booking-form-duration-forerun-input {
    flex: 1 1 5em;
    max-width: 10em;
}

.travel-booking-form-date-start-input {
    flex: 1 1 20em;
    max-width: 25em;
}

.travel-booking-form-date-end-input {
    flex: 1 1 20em;
    max-width: 25em;
}

.travel-booking-form-duration-input {
    flex: 1 1 5em;
    max-width: 10em;
}

.travel-booking-form-responsible-input {
    max-width: 20em;
}

.travel-booking-form-note-input {
    flex: 1 1 auto;
}

.travel-booking-form-responsible-input {
    flex: 1 1 20em;
}

.travel-booking-form-collector-input {
    flex: 1 1 25em;
}

.travel-booking-form-alternative-time-input {
    max-width: 20em;
}

.travel-booking-form-transportation-code-input {
    flex: 1 1 25em;
    max-width: 25em;
}

.travel-booking-form-vehicle-input {
    flex: 1 1 20em;
}

/* Booked For Form*/
.booked-for-form-address-hintbox {
    flex: 1 1 25em;
    max-width: 25em;
}

.booked-for-form-quantity-person-input {
    flex: 1 1 5em;
    max-width: 10em;
}

.booked-for-form-relation-type-input {
    flex: 1 1 25em;
    max-width: 25em;
}

.booked-for-form-smoking-attituded-input {
    flex: 1 1 25em;
    max-width: 25em;
}


/* Opus Editor */
.opus-editor-row {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(24em, 1fr));
    gap: 1em;
}

.opus-editor-row-full {
    width: 100%;
}

.opus-editor-row-half {
    width: 50%;
}

.opus-editor-row-third {
    width: 33%;
}

.opus-editor-row-quarter {
    width: 25%;
}

.opus-editor-row-fifth {
    width: 20%;
}

.opus-editor-column-span-full {
    grid-column: span 2;
}

.opus-editor-column {
    grid-template-rows: repeat(1, 1fr);
    gap: 0.5em;
}

.opus-editor-small-row {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(12em, 1fr));
    gap: 0.5em
}

.duration-container {
    width: 50%
}

.duration-input {
    flex: 1 2 35%;
}

.grid-row-container {
    width: 100%;
}

.grid-row-container>.grid-row {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
}





/* Evisio */


.evisio-logo {
    height: 25px;

    .darkTheme & {
        filter: brightness(70%);
    }
}

.evisio-logo-heading {
    height: 3em;
    margin-left: 0.5em;

    .darkTheme & {
        filter: brightness(70%);
    }
}

.evisio-heading {
    margin: 0;
}

.evisio-close-button {
    color: inherit;
    .darkTheme & {
        color: var(--bright);
    }
}

.evisio-close-button-container {
    height: 100%;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.evisio-chat-container {
    display: grid;
    grid-template-rows: 1fr 12fr 1fr;
    margin: 2em auto;
    background-color: #fff;
    border-radius: var(--rounder);
    overflow: auto;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    filter: drop-shadow(0px 0px 8px var(--darkTransparent));
    height: 90vh;
    width: 90vw;
    max-width: 950px;
    max-height: 950px;
    overscroll-behavior: none;
    .darkTheme & {
        background-color: var(--darkThemeBG);
        backdrop-filter: blur(2px);
    }
}



.evisio-chat-container>div {
    overscroll-behavior: none;
}

.evisio-chat-content-container {
    display: flex;
    flex-direction: column-reverse;
    overflow-y: scroll;
    overflow-x: hidden;
    border-left: 1px solid var(--secondaryThemeL4);
    border-right: 1px solid var(--secondaryThemeL4);
    width: 100%;
    user-select: text;
    .darkTheme & {
        border-left: 1px solid var(--secondaryThemeD4);
        border-right: 1px solid var(--secondaryThemeD4);
    }
}

.evisio-chat-top-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    background-color: var(--primary);
    color: var(--secondaryText);
    border-top-left-radius: var(--round);
    border-top-right-radius: var(--round);
    width: 100%;
    border-bottom: 1px solid var(--primaryTransparent);
    height: 100%;
    overflow: hidden;
    min-height: 3em;

    .darkTheme & {
        background-color: var(--primaryTransparent);
    }
}

.evisio-chat-container-action-bar {
    display: flex;
    gap: var(--paddingX);
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    background-color: var(--secondaryThemeL5);
    border-bottom-left-radius: var(--round);
    border-bottom-right-radius: var(--round);
    width: 100%;
    padding: 1em 1em;
    border-top: 1px solid var(--secondaryThemeL3);

    .darkTheme & {
        background-color: var(--secondaryThemeD5);
        border-top: 1px solid var(--secondaryThemeD3);
    }
}

.evisio-chat-message-input {
    width: 100%;
    border-radius: 2em;
    min-height: 2em;
    max-height: 6em;
    padding: 0.5em 1em;
    resize: none;
    overflow: hidden;
}

.evisio-chat-message-input:focus-visible {
    outline: 0.2em solid var(--primary);

    .darkTheme & {
        outline: 0.2em solid var(--primaryTransparent);
    }
}

.evisio-clear-history-button {
    height: 2.5em;
    width: 3em;
    border: 0;
    text-align: center;
    vertical-align: middle;
    padding: var(--paddingSmall);
    user-select: none;
    position: relative;

    .darkTheme & {
        background-color: var(--secondaryThemeD3);
        color: var(--brighter);
    }
}


.evisio-send-message-button {
    width: 3em;
    height: 2.5em;
    border-radius: 3em;
    border: 0;
    text-align: center;
    vertical-align: middle;
    padding: var(--paddingSmall);
    user-select: none;
    position: relative;

    .darkTheme & {
        background-color: var(--accentTheme);
        color: var(--brighter);
    }
}

.evisio-button-icon {
    display: flex;
    justify-content: center;
    align-items: center;
}

.evisio-chat-date-label-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    text-align: center;
    margin: 0.5em 0;
    width: 100%;
}

.evisio-chat-date-label {
    font-size: 0.9em;
    background-color: var(--secondaryThemeL5);
    max-width: 30%;
    border-radius: var(--roundest);
    padding: 0.2em 0.5em;

    .darkTheme & {
        background-color: var(--secondaryThemeD5);
        color: var(--bright);
    }
}

.chat-bubble {
    padding: 10px;
    margin: 10px;
    border-radius: var(--round);
    max-width: 70%;
    min-width: 20%;
    text-align: left;
    word-wrap: break-word;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5em;
}

.chat-bubble>br {
    margin: 0.5em 0;
}

.chat-bubble-timestamp-container {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    width: 100%;
    user-select: none;
}

.chat-bubble-timestamp {
    font-size: 0.8em;
}

.receiver-chat-bubble {
    background-color: var(--primaryTransparent);
    color: var(--light);
    align-self: flex-end;

    .darkTheme & {
        color: var(--bright);
    }
}

.sender-chat-bubble {
    background-color: var(--secondaryThemeL5);
    color: var(--dark);
    align-self: flex-start;

    .darkTheme & {
        color: var(--bright);
        background-color: var(--secondaryThemeD5);
    }
}

.chat-bubble-typing {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    min-width: 5em;
    max-width: 10em;
}

.typing-circle {
    display: block;
    height: 0.5em;
    width: 0.5em;
    border-radius: 50%;
    background-color: #8d8d8d;
    margin: 0.2em;
}

.typing-scaling {
    animation: typing 1000ms ease-in-out infinite;
    animation-delay: 3600ms;
}

.typing-circle:nth-child(1) {
    animation-delay: 0ms;
}

.typing-circle:nth-child(2) {
    animation-delay: 333ms;
}

.typing-circle:nth-child(3) {
    animation-delay: 666ms;
}

@keyframes typing {
    0% {
        transform: scale(1)
    }

    33% {
        transform: scale(1)
    }

    50% {
        transform: scale(1.4)
    }

    100% {
        transform: scale(1)
    }
}

@media screen and (min-width: 800px) and (min-height: 800px) {
    .evisio-chat-container {
        width: 50vw;
        height: 90vh;
    }
}


.google-icon {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z" fill="%234285F4"/><path d="M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z" fill="%2334A853"/><path d="M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z" fill="%23FBBC05"/><path d="M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z" fill="%23EA4335"/><path d="M1 1h22v22H1z" fill="none"/></svg>');
    height: 10px;
    width: 10px;
    display: inline-block;
    background-size: contain;
    margin-right: 4px;
}

/* imageViewer */
.imageViewerWidget .fileViewerImageViewer img {
    max-width: 60vh;
    height: auto;
}

.imageViewerWidget {
    overflow: hidden;
}

/* pdf viewer, siehe Site.css .repeatingStripesBG */
.e-pv-viewer-container { /*background*/
    --stripe1Color: var(--mediumTransparent);
    --stripe2Color: var(--brightTransparent);
    --stripe1Width: 10px;
    --stripe2Width: var(--stripe1Width, 6px);
    --smooth1to2: 1px;
    --smooth2to1: 1px;
    --angle: -35deg;
    background-image: repeating-linear-gradient(var(--angle), var(--stripe1Color) 0px, var(--stripe1Color) var(--stripe1Width), var(--stripe2Color) calc(var(--stripe1Width) + var(--smooth1to2)), var(--stripe2Color) calc(var(--stripe1Width) + var(--stripe2Width)), var(--stripe1Color) calc(var(--stripe1Width) + var(--stripe2Width) + var(--smooth2to1)));
}
.e-pv-sidebar-toolbar-splitter,
.e-pv-sidebar-content-splitter,
.e-pv-sidebar-content{
    z-index: 16 !important;
}

.e-dlg-overlay,
.e-pv-sidebar-toolbar{
    z-index: 17 !important;
}

.fileViewerPdfViewer{
    height: 70vh !important;
}

body:has(.calendarView) .pdfViewerWidget{ /* fix weil es einen conflict mit den calendar syncfusion css zeugs gibt... */
    .e-pv-toolbar{
        padding-top: 10px !important;
    }

    .e-pv-sidebar-toolbar{
        top: 52px !important; /* default ist: 42px */
    }
}

.pdfEditorSaveIconColorSaved{
    color: #4CAF50 !important;
}

.pdfEditorSaveIconColorUnsaved{ /* fuer syncfusion pdf editor save icon, wird auch vom syncfusion documentEditor verwendet */
    color: #f44336 !important;
}

.pdfViewerWidget.disabledAnnotationImporExportMenuButton [aria-label="annotation button"]{
    display:none;
}

.pdfViewerWidget .e-pv-stamp-separator-container,
.pdfViewerWidget .e-pv-stamp-template-container{
    display: none !important; /* stamp menu */
}

/* document editor */
.documentEditorWidget .documentEditorWidgetContainer,
.documentEditorWidget{
    height: 100%;
}

.documentEditorWidget .e-split-btn-wrapper .e-split-btn{
    z-index: 0 !important;
}

.documentEditorWidget{
    min-height: 45vh;
}
