/* Thin */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-Thin.ttf');
    font-weight: 100;
    font-style: normal;
}

/* Thin Italic */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-ThinItalic.ttf');
    font-weight: 100;
    font-style: italic;
}

/* ExtraLight */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-ExtraLight.ttf');
    font-weight: 200;
    font-style: normal;
}

/* ExtraLight Italic */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-ExtraLightItalic.ttf');
    font-weight: 200;
    font-style: italic;
}

/* Light */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-Light.ttf');
    font-weight: 300;
    font-style: normal;
}

/* Light Italic */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-LightItalic.ttf');
    font-weight: 300;
    font-style: italic;
}

/* Regular */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-Regular.ttf');
    font-weight: 400;
    font-style: normal;
}

/* Italic */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-Italic.ttf');
    font-weight: 400;
    font-style: italic;
}

/* Medium */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-Medium.ttf');
    font-weight: 500;
    font-style: normal;
}

/* Medium Italic */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-MediumItalic.ttf');
    font-weight: 500;
    font-style: italic;
}

/* SemiBold */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-SemiBold.ttf');
    font-weight: 600;
    font-style: normal;
}

/* SemiBold Italic */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-SemiBoldItalic.ttf');
    font-weight: 600;
    font-style: italic;
}

/* Bold */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-Bold.ttf');
    font-weight: 700;
    font-style: normal;
}

/* Bold Italic */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-BoldItalic.ttf');
    font-weight: 700;
    font-style: italic;
}

/* ExtraBold */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}

/* ExtraBold Italic */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-ExtraBoldItalic.ttf') format('truetype');
    font-weight: 800;
    font-style: italic;
}

/* Black */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}

/* Black Italic */
@font-face {
    font-family: 'Asap';
    src: url('../../fonts/Asap/Asap-BlackItalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
}

body.preloader-site {
    overflow: hidden;
}

.preloader-wrapper {
    height: 100%;
    width: 100%;
    background: #FFF;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999999;
    display:flex;
    justify-content:center;
    align-items:center;
}

.preloader-wrapper .preloader {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        
    }


body.wrongsystem-wrapper {
    overflow: hidden;
}

.wrongsystem-wrapper {
    height: 100%;
    width: 100%;
    background: #FFF;
    opacity: .7;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999999;
}

.wrongsystem {
    position: absolute;
    top: 32%;
    left: 25%;
    background-color: #BED250;
    color: #FFF;
    opacity: 1;
    width: 50%;
    height: 20%;
    padding: 20px;
    text-align: center;
    z-index: 9999999999;
}

.systeminfo p {
    font-size:14px;
}

.browserinfo {
    font-size:40px;
}

.btn-withe {
    background-color: #fff;
}

.savd-spinner {
    width: 72px;
    height: 72px;
    position: relative;
}

    .savd-spinner .layer {
        background-image: url(../../images/icons/icon-72x72.png);
        background-repeat: no-repeat;
        background-size: contain;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        transform-origin: 50% 58%;
        animation: spin 2.5s infinite ease;
    }

.savd-spinner.large {
    width: 96px;
    height: 96px;
    position: relative;
}

.savd-spinner.large .layer {
    background-image: url(../../images/icons/icon-96x96.png);
}

.savd-spinner.small {
    width: 32px;
    height: 32px;
    position: relative;
}

.savd-spinner.small .layer {
    background-image: url(../../images/icons/icon-32x32.png);
}

.savd-spinner.large .layer:nth-child(2) {
    opacity: 0.5;
    animation-delay: 50ms;
}

.savd-spinner.large .layer:nth-child(3) {
    opacity: 0.2;
    animation-delay: 100ms;
}

.layer:nth-child(2) {
    opacity: 0.5;
    animation-delay: 40ms;
}

.layer:nth-child(3) {
    opacity: 0.2;
    animation-delay: 80ms;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

:root {
    --header-height-min: 80px;
    --header-height-medium: 90px;
    --header-height-large: 100px;
    --mobile-footer-height: 60px;
    --mobile-header-height: 120px;
    --mobile-header-margin: 20px;
    --mobile-footer-margin: 15px;
    --cookie-bar-height: 60px;
    --content-top-padding: 25px;
    --content-bottom-padding: 0px;
    --savd-green: #bed250;
    --savd-green-darker: #859338;
    --savd-red: #f0645a;
    --savd-red-darker: #A8463F;
    --savd-blue: #6ebebe;
    --savd-blue-darker: #427272;
    --savd-grey: #d9d9d9;
    --full-view-height: 100vh;
    --full-view-width: 100vw;
    --default-text-colour: #1F1F1F;
    --sso-colour-google: #ea4335;
    --sso-colour-microsoft: #00a1f1;
    --sso-colour-amazon: #febd69;
}

@supports (height: 100dvh) {
    :root {
        --full-view-height: 100dvh;
    }
}

body {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.5;
    font-family: 'Asap', sans-serif;
    color: var(--default-text-colour);
    max-width: var(--full-view-width);
    min-height: var(--full-view-height);
    height: var(--full-view-height);
    overflow-x: hidden;
}

.body-wrapper {
    width: var(--full-view-width);
    min-height: var(--full-view-height);
    height: var(--full-view-height);
    overflow-x: hidden;
    overflow-y: auto;
}

.modal {
    width: var(--full-view-width);
    min-height: var(--full-view-height);
    height: var(--full-view-height);
}

input, textarea, select, button, option {
    font-family: 'Asap', sans-serif !important;
}

    button.accept-policy {
        white-space: nowrap;
    }

    button:not(.button-show-page):not(.no-text) i, a.btn i {
        margin-right: .25rem;
    }

    button.button-show-page {
        width: 38px;
    }

    button.btn {
        font-weight: 500;
    }

    button.no-wrap {
        white-space: nowrap;
    }

    input:-webkit-autofill,
    input:-webkit-autofill:hover,
    input:-webkit-autofill:focus,
    input:-webkit-autofill:active {
        -webkit-animation: autofill 0s forwards;
        animation: autofill 0s forwards;
    }

@keyframes autofill {
    100% {
        background: transparent;
        color: inherit;
    }
}

@-webkit-keyframes autofill {
    100% {
        background: transparent;
        color: inherit;
    }
}

.savd-green {
    color: var(--savd-green);
}

.savd-red {
    color: var(--savd-red);
}

.savd-blue {
    color: var(--savd-blue);
}

.savd-grey {
    color: var(--savd-grey);
}

a {
    color: var(--savd-green);
}

    a:hover,
    a:focus,
    a:active {
        text-decoration: none;
        color: var(--savd-green-darker);
    }

    a.link {
        color: var(--savd-blue);
    }

        a.link:hover, a.link:active {
            color: var(--savd-blue);
            text-decoration: underline;
        }

    a.red {
        color: var(--savd-red);
    }

        a.red:hover, a.red:active {
            color: var(--savd-red-darker);
        }

    a.red-frame {
        color: var(--savd-red);
        border: 1px solid var(--savd-red);
        padding: .15rem .3rem;
        border-radius: .2rem;
        background-color: #fff;
        display: inline-block;
    }

        a.red-frame:hover, a.red-frame:active {
            color: var(--savd-red-darker);
            border: 1px solid var(--savd-red-darker);
        }

    a.blue-frame {
        color: var(--savd-blue);
        border: 1px solid var(--savd-blue);
        padding: .15rem .3rem;
        border-radius: .2rem;
        background-color: #fff;
        display: inline-block;
    }

        a.blue-frame:hover, a.blue-frame:active {
            color: var(--savd-blue-darker);
            border: 1px solid var(--savd-blue-darker);
        }

    a.blue {
        color: var(--savd-blue);
        padding: 2px;
        padding-left: 0;
        display: block;
    }

        a.blue .text {
            text-decoration: underline;
            /*border-bottom:1px dashed var(--savd-blue);*/
        }

        a.blue:hover, a.blue:active {
            color: var(--savd-blue-darker);
        }

#supportmodal .modal-dialog {
    z-index: 10040;
    overflow: auto;
    overflow-y: auto;
}

#supportmodal.over-call {
    z-index:2000;
    width:100%;
}

#supportmodal.over-call .modal-dialog {
    display:flex;
    justify-self:flex-end;
    flex-direction:row;
    width:100%;
    margin:1.75rem;
}

#show-password {
    cursor: pointer;
}

    #show-password:hover .input-group-text {
        background-color: #E5EDB9;
    }

i.fa-center-spin {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.loader-container {
    width: 100%;
    min-height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

hr.savd-hr {
    opacity: .5;
    border: none;
    border-top: 1px dashed var(--savd-green);
    margin-top: 1rem;
    margin-bottom: 2rem;
}

.modal-content {
    border: 3px solid var(--savd-green);
    box-shadow: rgba(0, 0, 0, .4) 0 0 10px;
    border-radius: 10px;
}

.modal:not(.no-blur):not(.over-call) {
    backdrop-filter: blur(3px);
}

.alert-danger p {
    font-size: 1.1rem;
}
/* Header */
header {
    overflow: hidden;
}

.toprow {
    padding-top: 10px;
    padding-left: 80px !important;
}

.topinfo {
    padding-top: 15px;
    font-size: 1.1rem;
    color: #fff;
}

.firstrow {
    min-height: 80px;
    position: relative;
}

    .firstrow:before {
        content: '';
        position: absolute;
        top: 0;
        left: -70px;
        width: 100%;
        height: 100%;
        background-color: var(--savd-green);
        border-right: 10px solid var(--savd-green);
        -webkit-transform-origin: 100% 100%;
        -ms-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        transform: skewX(-30deg);
    }

.vdo {
    min-height: 80px;
    position: relative;
}

    .vdo:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0px;
        width: 100%;
        height: 100%;
        background-color: transparent;
        border-right: 20px solid var(--savd-green);
        -webkit-transform-origin: 100% 100%;
        -ms-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        transform: skewX(-30deg);
    }

.savd {
    min-height: 80px;
    position: relative;
}

.vdo img {
    position: absolute;
    bottom: 0px;
    left: -15px;
}

.savd img {
    position: absolute;
    bottom: 0px;
    left: 20px;
}



.applogos {
    background-color: #fff;
}

    .applogos img {
        width: 90%;
    }

.smallbottom {
    padding-bottom: 10px;
}


.btn {
    font-size: 1.4rem;
}

.custom-control-label::before {
    top: 0.65rem;
}

.custom-switch .custom-control-label::after {
    top: calc(0.65rem + 2px);
}

.custom-control-label::after {
    top: 0.65rem;
}

/* Login Screen */
.right {
    text-align: right;
}

.center {
    text-align: center;
}


.text-danger {
    color: #dc3545 !important;
    display: block;
}

.header-container {
    height: 80px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}

.minimal-layout-content {
    width: 100%;
    margin-top: var(--content-top-padding);
}

.minimal-layout-content-window {
    background: linear-gradient(0deg, #555, #aaa);
    border-radius: 6px;
    border: 2px solid var(--savd-green);
    display: none;
    height: 100%;
}

    .minimal-layout-content-window.content-visible {
        display: block;
    }

@media only screen and (min-width: 768px) {
    .header-container {
        height: var(--header-height-min);
    }

    .minimal-layout-content {
        height: calc(var(--full-view-height) - (var(--header-height-min) + (var(--content-top-padding) * 2)));
    }

    body.cookie-accepted .column-container, body.no-cookie .column-container {
        height: calc(var(--full-view-height) - (var(--header-height-min) + var(--content-top-padding) + var(--content-bottom-padding)));
    }

    body:not(.cookie-accepted):not(.no-cookie) .column-container {
        height: calc(var(--full-view-height) - (var(--header-height-min) + var(--content-top-padding) + var(--content-bottom-padding) + var(--cookie-bar-height)));
    }
}

@media only screen and (min-width: 1440px) {
    .header-container {
        height: var(--header-height-medium);
    }

    .minimal-layout-content {
        height: calc(var(--full-view-height) - (var(--header-height-medium) + (var(--content-top-padding) * 2)));
    }

    body.cookie-accepted .column-container, body.no-cookie .column-container {
        height: calc(var(--full-view-height) - (var(--header-height-medium) + var(--content-top-padding) + var(--content-bottom-padding)));
    }

    body:not(.cookie-accepted):not(.no-cookie) .column-container {
        height: calc(var(--full-view-height) - (var(--header-height-medium) + var(--content-top-padding) + var(--content-bottom-padding) + var(--cookie-bar-height)));
    }
}

@media only screen and (min-width: 2000px) {
    .header-container {
        height: var(--header-height-large);
    }

    .minimal-layout-content {
        height: calc(var(--full-view-height) - (var(--header-height-large) + (var(--content-top-padding) * 2)));
    }

    body.cookie-accepted .column-container, body.no-cookie .column-container {
        height: calc(var(--full-view-height) - (var(--header-height-large) + var(--content-top-padding) + var(--content-bottom-padding)));
    }

    body:not(.cookie-accepted):not(.no-cookie) .column-container {
        height: calc(var(--full-view-height) - (var(--header-height-large) + var(--content-top-padding) + var(--content-bottom-padding) + var(--cookie-bar-height)));
    }
}

.header-container .header-bar {
    display: flex;
    flex-grow: 1;
    position: relative;
    height: 100%;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
}

    .header-container .header-bar .header-exit {
        display: flex;
        align-items: center;
        height: 100%;
        max-width: 600px;
        min-width: 340px;
        margin-left: 65px;
    }

    .header-container .header-bar .header-user-details {
        display: flex;
        font-size: 1.1rem;
        color: #fff;
        min-width: 350px;
        max-width: 100%;
        justify-content: flex-start;
        flex-grow: 1;
        padding-right: 40px;
    }

        .header-container .header-bar .header-user-details .grid {
            width: unset;
        }

        .header-container .header-bar .header-user-details .header-username {
            white-space: nowrap;
        }

.header-username {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.header-container .header-bar:before {
    content: '';
    position: absolute;
    top: 0;
    left: -70px;
    width: 100%;
    height: 100%;
    background-color: var(--savd-green);
    border-right: 10px solid var(--savd-green);
    -webkit-transform-origin: 100% 100%;
    -ms-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    transform: skewX(-32deg);
    z-index: -5;
}

.mobile-header-bar {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--mobile-header-height);
}

body:not(.cookie-accepted):not(.no-cookie) .mobile-header-bar {
    top: 50px;
}

.mobile-header-bar:before {
    content: '';
    position: absolute;
    top: 0;
    left: -70px;
    width: calc(var(--full-view-width) - 230px);
    height: var(--mobile-header-height);
    background-color: var(--savd-green);
    border-right: 10px solid var(--savd-green);
    -webkit-transform-origin: 100% 100%;
    -ms-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    transform: skewX(-30deg);
    z-index: -5;
}

.mobile-header-bar .header-exit {
    display: flex;
    align-items: center;
    height: 100%;
    margin-left: 15px;
}

.mobile-header-bar .winbutton span {
    display: none;
}

.mobile-footer-bar:before {
    content: '';
    position: absolute;
    right: -70px;
    width: calc(var(--full-view-width) - 180px);
    height: var(--mobile-footer-height);
    background-color: var(--savd-blue);
    -webkit-transform-origin: 100% 100%;
    -ms-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    transform: skewX(-30deg);
    z-index: -5;
}

.mobile-footer-bar {
    width: 100%;
    height: var(--mobile-footer-height);
    position: absolute;
    bottom: 0;
    overflow: hidden;
}

.mobile-footer-content {
    font-size: 1rem;
    display: flex;
    align-items: center;
    height: 100%;
    padding-left: 15px;
    padding-right: calc(var(--full-view-width) - 270px);
}

.header-container .header-logo {
    display: flex;
    flex-shrink: 1;
    padding: 6px 10px 6px 0; /*top right bottom left*/
    width: 220px;
    height: 100%;
}

.mobile-ready-element .header-logo {
    display: flex;
    padding: 0;
    width: 100%;
    height: 120px;
    padding: 15px;
}

.header-container .header-logo .header-image {
    display: block;
    width: 100%;
    height: 100%;
    background: url(../../images/SAVD-VD-Group-Zusatz-Logo-RGB.png);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: contain;
}

.mobile-ready-element .header-logo .header-image {
    display: block;
    width: 100%;
    height: 100%;
    background: url(../../images/SAVD-VD-Group-Zusatz-Logo-RGB.png);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: contain;
}

.header-logo img {
    max-height: 100%;
    max-width: 100%;
}

a.logout-button {
    display: block;
    background-color: #fff;
    width: 60px;
    height: 60px;
    border-radius: 30px;
    transition: .5s all ease;
}

.header-bar a.logout-button:hover,
.header-bar a.logout-button:focus,
.header-bar a.logout-button:active {
    width: 100%;
    color: var(--savd-green);
}

a.logout-button:hover .winbutton span,
a.logout-button:focus .winbutton span,
a.logout-button:active .winbutton span {
    color: var(--savd-green);
}

.footer {
    min-height: 80px;
}

.fobuttons {
    padding-left: 50px;
}

.applogo img {
    width: 350px;
    padding-top: 10px;
    padding-right: 10px;
}

.card-header-clickable {
    background-color: #eee;
    padding: 1.2rem 1.5rem;
    cursor: pointer;
    user-select: none;
}

.card-header-icon {
    color: #ccc;
    margin-right: .5rem;
}

.card-header-clickable h5 {
    display: flex;
    flex-direction: row;
    gap: .5rem;
    align-items: center;
}

    .card-header-clickable h5 i {
        font-size: 120%;
    }

.card-header-clickable:not(.collapsed) {
    background-color: #dde4ba;
}

    .card-header-clickable:not(.collapsed) .card-header-icon {
        color: var(--savd-green);
    }

.card-header-clickable h5 {
    font-weight: 400;
    font-size: 1.2rem;
}

.card-header-clickable.collapsed:hover {
    background-color: #E7EAD9;
}

.sidecontainer {
    position: relative;
    z-index: 5;
}

.sidebuttons {
    padding-top: 100px;
    padding-left: 50px;
    display:flex;
    gap:1rem;
    flex-direction:column;
}

.appsidebuttonshelplogin {
    position: absolute;
    bottom: -10px;
    left: 51px;
    width: calc(90% - 50px);
    display: flex;
    flex-direction: column;
    transition: all ease-in .4s;
    box-sizing: border-box;
}

    .appsidebuttonshelplogin.solid.expanded {
        box-shadow: 5px 5px 8px rgba(0, 0, 0, 0.3);
        border-radius: 40px;
    }

    .appsidebuttonshelplogin.static {
        max-height: fit-content;
        gap: .8rem;
    }

.mobilessobuttons a {
    margin-top: 1rem;
}

#menu-more-container {
    display: none;
}

#menu-more-inner {
    margin-top: .8rem;
    display: flex;
    flex-direction: column;
    gap: .8rem;
}

.midcontent,
.rightcontent {
    padding-top: 40px;
}

.rightcontent {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

a.abutton {
    display: block;
    border-radius: 30px;
    background: #D9D9D9;
    width: 60px;
    height: 60px;
    min-height: 60px;
    min-width:60px;
    transition: all 0.5s ease;
    color: inherit;
}

.abutton.mini {
    max-width: 60px;
}

a.abutton.green,
a.abutton.green:hover,
a.abutton.green:focus,
a.abutton.green:active {
    background: var(--savd-green);
}

a.abutton.red,
a.abutton.red:hover,
a.abutton.red:focus,
a.abutton.red:active {
    background: var(--savd-red);
}

a.abutton.microsoft,
a.abutton.microsoft:hover,
a.abutton.microsoft:focus,
a.abutton.microsoft:active {
    background: var(--sso-colour-microsoft);
}

a.abutton.amazon,
a.abutton.amazon:hover,
a.abutton.amazon:focus,
a.abutton.amazon:active {
    background: var(--sso-colour-amazon);
}

a.abutton.google,
a.abutton.google:hover,
a.abutton.google:focus,
a.abutton.google:active {
    background: var(--sso-colour-google);
}


a.abutton#call-test, a.sbutton#call-test-mobile {
    background-color: var(--savd-red);
}

    a.abutton#call-test.call-test-complete, a.sbutton#call-test-mobile.call-test-complete {
        background-color: var(--savd-green);
    }

a.wbutton {
    display: block;
    border-radius: 30px;
    background: #fff;
    width: 60px;
    height: 60px;
    transition: all 0.5s ease;
}

a.sbutton {
    display: block;
    border-radius: 30px;
    background: var(--savd-green);
    width: 60px;
    height: 60px;
    transition: all 0.5s ease;
    color: inherit;
}

    a.sbutton.savd-red,
    a.abutton.savd-red,
    a.wbutton.savd-red {
        background: var(--savd-red);
    }

        a.sbutton.savd-red:hover,
        a.abutton.savd-red:hover,
        a.wbutton.savd-red:hover,
        a.sbutton.savd-red:active,
        a.abutton.savd-red:active,
        a.wbutton.savd-red:active {
            background: var(--savd-red);
        }

a.abutton:hover,
a.abutton:focus,
a.abutton:active {
    display: block;
    color: #fff;
    border-radius: 50px;
    background: #9C9C9C;
    min-width: 100%;
}

a.abutton.button-highlight {
    background-color: var(--savd-blue);
}

a.wbutton:hover,
a.wbutton:focus,
a.wbutton:active {
    display: block;
    color: var(--savd-green);
    border-radius: 50px;
    background: #fff;
    width: 100%;
}

@media only screen and (max-width: 1400px) {
    a.abutton {
        font-size: 1.0rem;
    }
}

a.sbutton:hover,
a.sbutton:focus,
a.sbutton:active {
    display: block;
    color: #fff;
    border-radius: 50px;
    background: var(--savd-green);
}

a.abutton:hover .inbutton span,
a.abutton:focus .inbutton span,
a.abutton:active .inbutton span {
    color: #fff;
}

a.wbutton:hover .winbutton span,
a.wbutton:focus .winbutton span,
a.wbutton:active .winbutton span {
    color: var(--savd-green);
}



a.activelink {
    display: block;
    color: #fff;
    border-radius: 50px;
    background: #9C9C9C;
    width: 100%;
    height: 60px;
    transition: all 0.5s ease;
    /*z-index: -1;*/
}

.div-button-style {
    border: 1px solid var(--savd-grey);
    padding: .1rem .8rem;
    border-radius: .25rem;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: .5rem;
    height: 40px;
    box-sizing: border-box;
    font-size: 95%;
}

    .div-button-style i {
        margin-right: .2rem;
    }

.div-button-style-label {
    font-weight: 500;
}

.menu-focus-container {
    width: 100%;
}

a.activelink span {
    color: #fff;
}

a.activelink.green {
    background: var(--savd-green);
}

a.activeserviceline {
    display: block;
    color: #fff;
    background: var(--savd-green);
    width: 100%;
}

    a.activeserviceline span {
        color: #fff;
    }

.inbutton {
    min-width: 340px;
    padding-left: 16px;
    display: flex;
    align-items: center;
    height: 100%;
}

.winbutton {
    min-width: 240px;
    padding-left: 16px;
    display: flex;
    align-items: center;
    height: 100%;
}

    .inbutton i, .winbutton i {
        font-size: 1.4rem;
        color: #fff;
        min-width: 30px;
    }

.inbutton span {
    padding-left: 30px;
    white-space: nowrap;
}

.winbutton i {
    font-size: 1.4rem;
    color: var(--savd-green);
}

.winbutton span {
    padding-left: 30px;
    color: #fff;
}

.ebutton .inbutton {
    padding-top: 17px;
    padding-left: 20px;
}

.confline {
    position: absolute;
    top: 120px;
    height: 2px;
    width: 250px;
    background: var(--savd-green);
    transition: all 0.3s ease;
    margin-left: -250px;
    z-index: -1;
}

.login-button-line {
    position: absolute;
    top: 130px;
    height: 2px;
    width: 50px;
    background: var(--savd-green);
    transition: all 0.3s ease;
    right: -15px;
    z-index: -1;
}

.button-line {
    position: absolute;
    top: 0;
    height: 2px;
    width: 40px;
    background: var(--savd-green);
    transition: all .5s ease;
    left: -50px;
    z-index: -1;
}

#appointment-single-message {
    display: none;
}

/* Loginform */
.loginform, .authform {
    margin-top: 60px;
    padding: 20px;
    background-color: #fff;
    border: var(--savd-green) 2px solid;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    position: relative;
    z-index: 999;
}

.authform-no-email {
    margin-top: 1rem;
    font-size: 80%;
    padding: 16px 20px;
    background-color: #fff;
    border: var(--savd-red) 2px solid;
    border-radius: 10px;
    display: flex;
    align-items: center;
    gap: 1rem;
}

    .authform-no-email .icon {
        font-size: 150%;
        display: flex;
        flex-grow: 0;
        color: var(--savd-red);
    }

    .authform-no-email .text {
        flex-grow: 1;
    }

#termform input::placeholder, #termform textarea::placeholder {
    color: #aaa;
}

#termform input:focus::placeholder, #termform textarea:focus::placeholder {
    color: transparent;
}

.loginform input,
.termform input {
    border: none;
    background-color: transparent;
}

.termtext input {
    border: 1px solid #ced4da;
}

.loginform .form-group input.form-control,
.termform .form-group input.form-control,
.paraform .form-group input.form-control {
    display: inline;
    padding: 8px;
    padding-left: 50px;
    height: 43px;
    border: 1px solid var(--savd-green);
    box-sizing: border-box;
}

.form-group input.form-control.error,
.form-group input.form-control.required:not(.valid) {
    border-color: #f00;
}

.field-error-message {
    padding: 3px;
}

.loginform .form-control:focus,
.termform input.form-control:focus {
    color: #1F1F1F;
    box-shadow: none;
}

.loginform .form-group,
.termform .form-group,
.paraform .form-group {
    padding: 0;
    position: relative;
}

.form-group .form-icon, .form-icon {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 6;
    width: 50px;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #555;
    pointer-events: none;
}

.form-icon-input-group {
    position: relative;
}

    .form-icon-input-group select {
        padding-left: 30px;
        height: 40px;
    }

        .form-icon-input-group select.lg {
            padding-left: 30px;
            height: 100%;
            min-height: 40px;
        }

    .form-icon-input-group input {
        padding-left: 34px;
        height: 40px;
    }

    .form-icon-input-group textarea {
        padding-left: 34px;
    }

    .form-group .form-icon-input-group .form-icon, .form-icon-input-group .form-icon {
        width: 38px;
        height: 40px;
        color: #aaa !important;
        font-size: 1.1rem;
    }

        .form-icon-input-group .form-icon.lg {
            width: 38px;
            height: 100%;
            font-size: 1.1rem;
        }

        .form-icon-input-group .form-icon.savd-blue {
            color: var(--savd-blue) !important;
        }

        .form-icon-input-group .form-icon.savd-green {
            color: var(--savd-green) !important;
        }

.form-icon {
    font-size: 1.1rem;
}

.form-group .form-icon-input-group .code-field {
    letter-spacing: .1rem;
    font-weight: 500;
    font-size: 36px;
    text-align: center;
    padding: .5rem;
    text-indent: .4rem;
    height: 64px;
    border-width: 2px;
}

    .form-group .form-icon-input-group .code-field::placeholder {
        opacity: .7;
    }


.form-group .form-icon-input-group .form-icon.code-icon {
    height: 64px;
    width: 50px;
    font-size: 20px;
}

.loginform .form-group .input-group-text,
.termform .form-group .input-group-text,
.paraform .form-group .input-group-text {
    background-color: #EBF1CA;
    border-color: var(--savd-green);
    color: #333;
}

#error-display {
    margin-bottom: 1rem;
    font-size: 80%;
    color: #ff0000;
    border: 1px solid rgba(255, 0, 0, 0.3);
    padding: .5rem;
    padding-left: 50px;
    border-radius: .25rem;
    position: relative;
}

    #error-display i {
        position: absolute;
        left: 0;
        top: 0;
        width: 50px;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

.btn-black {
    color: #fff;
    background-color: #9C9C9C;
    border-color: #9C9C9C;
}

/* Custom styles for radio buttons */
.form-check {
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 1.5rem;
}

.form-check-input {
    position: absolute;
    margin-top: 0;
    margin-left: -1.5rem;
    width: 1.25rem;
    height: 1.25rem;
    background-color: var(--savd-green);
    border-radius: 50%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    transition: background-color .2s;
}

    .form-check-input:hover {
        box-shadow: 0 0 2px #aaa;
    }

    .form-check-input:active {
        box-shadow: 0 0 5px var(--savd-green);
    }

    .form-check-input:not(:checked) {
        background-color: #aaa;
    }

        .form-check-input:not(:checked)::before {
            content: '';
            display: block;
            width: 0.9rem;
            height: 0.9rem;
            margin: auto;
            background-color: #fff;
            border-radius: 50%;
            position: relative;
            top: 50%;
            transform: translateY(-50%);
            transition: width .2s, height .2s;
        }

    .form-check-input:checked::before {
        content: '';
        display: block;
        width: 0.5rem;
        height: 0.5rem;
        margin: auto;
        background-color: #fff;
        border-radius: 50%;
        position: relative;
        top: 50%;
        transform: translateY(-50%);
        transition: width .2s, height .2s;
    }

.form-group label.form-check-label {
    margin-bottom: 0;
    padding-left: 0.5rem;
}

/* Custom checkbox */
.omni-checkbox-container {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 22px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Hide the browser's default checkbox */
.omni-checkbox-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* Create a custom checkbox */
.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
    /*border: 2px solid #000;*/
    border-radius: 3px;
}

/* On mouse-over, add a grey background color */
.omni-checkbox-container:hover input ~ .checkmark {
    background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.omni-checkbox-container input:checked ~ .checkmark {
    background-color: var(--savd-green);
    animation: glow-animation .3s forwards ease-out;
}

.checkmark .checkmark-true {
    display: none;
    color: #fff;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
}

.omni-checkbox-container input ~ .checkmark .checkmark-true {
    display: none;
}

.omni-checkbox-container input:checked ~ .checkmark .checkmark-true {
    display: flex;
}

.form-error {
    color: var(--savd-red);
    font-style: italic;
    font-weight: bold;
    font-size: 90%;
}

.termin-gender-select {
    display: none;
}

hr.omni-hr {
    margin-top: 1.5rem;
    margin-bottom: 1rem;
    border-top: 1px solid #eee;
}

#forgot-password {
    font-size: 14px;
    line-height: 26px;
    padding: 0.5rem 0.45rem;
    min-height: 47px;
}

.btn-black:hover {
    color: #fff;
    background-color: #636362;
    border-color: #636362;
}

.btn-green {
    color: #fff;
    background-color: var(--savd-green);
    border-color: var(--savd-green);
}

.btn-green-frame {
    color: var(--savd-green);
    background-color: #fff;
    border-color: var(--savd-green);
}

    .btn-green-frame:hover {
        color: var(--savd-green-darker);
        border-color: var(--savd-green-darker);
    }

.btn-red-frame {
    color: var(--savd-red);
    background-color: #fff;
    border-color: var(--savd-red);
}

    .btn-red-frame:hover {
        color: var(--savd-red-darker);
        border-color: var(--savd-red-darker);
    }

.btn-blue-frame {
    color: var(--savd-blue);
    background-color: #fff;
    border-color: var(--savd-blue);
}

    .btn-blue-frame:hover {
        color: var(--savd-blue-darker);
        border-color: var(--savd-blue-darker);
    }

.select-green-frame {
    color: var(--savd-green);
    background-color: #fff;
    border-color: var(--savd-green);
    font-size: 1.2rem;
    display: inline-block;
    width: fit-content;
}

.select-blue-frame {
    color: var(--savd-blue);
    background-color: #fff;
    border-color: var(--savd-blue);
    font-size: 1.2rem;
    display: inline-block;
    width: fit-content;
}

    .select-blue-frame:hover {
        color: var(--savd-blue-darker);
        border-color: var(--savd-blue-darker);
    }

.btn-green-frame:hover {
    color: var(--savd-green-darker);
    border-color: var(--savd-green-darker);
    /*        color: #98a840;
        border-color: rgba(188, 206, 30, 0.801);*/
}

.btn-blue-frame {
    color: var(--savd-blue);
    background-color: #fff;
    border-color: var(--savd-blue);
}

.btn-green-frame:hover {
    color: var(--savd-green-darker);
    border-color: var(--savd-green-darker);
    /*        color: #98a840;
        border-color: rgba(188, 206, 30, 0.801);*/
}

.btn-blue-frame {
    color: var(--savd-blue);
    background-color: #fff;
    border-color: var(--savd-blue);
}

    .btn-blue-frame:hover {
        color: var(--savd-blue-darker);
        border-color: var(--savd-blue-darker);
    }

.alert-green {
    color: #fff;
    background-color: var(--savd-green);
    border-color: #a7ba45;
    font-size: 1.1rem;
}

.btn-grey {
    color: #1F1F1F;
    background-color: #CFDBE8;
    border-color: #CFDBE8;
}

.btn-green:hover {
    color: #fff;
    background-color: rgba(188, 206, 30, 0.801);
    border-color: var(--savd-green);
}

.btn-grey:hover {
    color: #404c5d;
    background-color: rgba(207, 219, 232, 0.74);
    border-color: #CFDBE8;
}

.btn-red {
    color: #fff;
    background-color: red;
    border-color: red;
}

    .btn-red:hover {
        color: #fff;
        background-color: rgba(255, 0, 0, 0.70);
        border-color: red;
    }

.savdred {
    color: #F1645A !important;
}

.btn-savdred {
    color: #fff;
    background-color: #F1645A;
    border-color: #F1645A;
    color: white
}

    .btn-savdred:hover {
        color: #fff;
        background-color: #ec4135;
        border-color: #ec4135;
    }

.loginsmall {
    font-size: 12px;
    line-height: 14px;
}

/* Error */
.validation-summary-errors {
    border: #ff8c8c 2px solid;
    background-color: #fee1e1;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin-bottom: 10px;
}

    .validation-summary-errors ul {
        margin-bottom: 0;
    }


/* Forget Password*/
.forpasswordform {
    padding: 20px;
    background-color: #fff;
    border: var(--savd-green) 2px solid;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

#appointments-overview, #news-view-container {
    border: var(--savd-green) 2px solid;
    border-radius: 10px;
    padding: 20px;
    max-height: 100%;
    overflow-y: auto;
    background-color: #fff;
}

#call-overview-container, #calendar-container {
    display: none;
    border: var(--savd-green) 2px solid;
    border-radius: 10px;
    /*    padding: 20px;*/
    max-height: 100%;
    height: calc(var(--full-view-height) - 140px);
    /*overflow-y:auto;*/
    background-color: #fff;
    position: relative;
}

#call-overview-mobile-pagination {
    display: flex;
    flex-grow: 0;
    width: 100%;
    gap: .2rem;
    padding: .4rem;
    justify-content: center;
    align-items: stretch;
}

#calls-overview-body {
    display: flex;
    flex-direction: column;
    height: 100%;
}

#calls-overview-scroll-body {
    display: flex;
    flex-grow: 1;
    overflow-y: auto;
}

#calls-overview-inner-body {
    display: block;
    padding: 20px;
    box-sizing: border-box;
    width: 100%;
}

#calls-overview-mobile-configuration {
    display: none;
}

#calls-overview-mobile-configuration-content {
    margin-top: 1rem;
    display: flex;
    gap: .3rem;
    flex-wrap: wrap;
}

.calls-overview-page-info {
    display: flex;
    gap: .3rem;
    align-items: flex-start;
    flex-grow: .5;
}

.calls-overview-navigation {
    display: flex;
    width: 100%;
    flex-direction: row;
}

    .calls-overview-navigation .calls-overview-pages {
        display: flex;
        gap: .3rem;
        justify-content: flex-start;
        align-items: flex-start;
    }

    .calls-overview-navigation .calls-overview-pagination-container {
        display: flex;
        flex-grow: .5;
        gap: .2rem;
        flex-wrap: wrap;
        margin-top: .2rem;
        justify-content: flex-end;
        align-items: stretch;
        margin-bottom: 1rem;
    }

.calls-overview-star-container {
    display: flex;
    flex-direction: column;
    gap: .2rem;
}

.calls-overview-configuration {
    display: flex;
    gap: .2rem;
}

.calls-overview-pages-mobile {
    display: flex;
    gap: .5rem;
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
}

.calls-overview-icon {
    color: var(--savd-blue);
}

#news-view-container {
    display: none;
    border: var(--savd-green) 2px solid;
    border-radius: 10px;
    padding: 20px;
    max-height: 100%;
    height: calc(var(--full-view-height) - 140px);
    overflow-y: auto;
    overflow-x: hidden;
    background-color: #fff;
}

#CallOverviewWidget {
    overflow-y: scroll !important;
    overflow-x: hidden !important;
    overflow: hidden;
    height: 100%; /* optional */
    width: 100%; /* optional */
    border: none; /* optional */
}

.grid.calendar-grid {
    gap: 0;
}

#calendar-container {
    overflow-y: auto;
}

.calendar-configuration {
    gap: .2rem;
}

#calendar-body {
    display: flex;
    width: 100%;
    height: 100%;
    padding: 1rem;
    flex-direction: column;
}

#calendar-inner-header {
    display: flex;
    width: 100%;
    align-items: center;
    flex-direction: row;
    flex-grow: 0;
}

#calendar-inner-body {
    display: flex;
    width: 100%;
    flex-grow: 1;
}

#calendar-inner-body-scroll {
    display: flex;
    width: 100%;
    flex-grow: 1;
    overflow-y: auto;
}

#calendar-horizontal-body {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.day-container {
    font-size: 1.1rem;
    padding-left: .6rem;
    padding-top: .3rem;
    padding-right: .6rem;
    overflow-x: hidden;
    overflow-y: hidden;
}

    .day-container.today {
        /*background-color:#f9f9f9;*/
    }

    .day-container:not(:last-of-type) {
        border-right: 1px dashed var(--savd-grey);
    }

    .day-container:first-of-type {
        padding-left: 0;
    }

    .day-container:last-of-type {
        padding-right: 0;
    }

.day-header {
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
    padding-bottom: .6rem;
    margin-bottom: .6rem;
    border-bottom: 1px dashed var(--savd-grey);
    overflow-x: hidden;
    gap: .2rem;
}

    .day-header .day-header-title {
        display: flex;
        flex-direction: column;
        overflow-x: hidden;
    }

        .day-header .day-header-title .day-header-title-name {
            font-weight: 500;
        }

        .day-header .day-header-title .day-header-title-date {
            font-size: 70%;
        }

.day-header-count {
    font-size: 75%;
}

.day-container.horizontal {
    display: flex;
    flex-direction: row;
    width: 100%;
    border-bottom: 1px dashed #ccc;
    padding: 1rem 0;
    overflow: visible;
    border-right: none;
}

.day-header.horizontal {
    max-width: 200px;
    border: none;
    padding-bottom: 0;
    margin-bottom: 0;
    overflow: visible;
}

.day-items.horizontal {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    padding-left: 1rem;
    margin-left: 1rem;
    border-left: 1px dashed #ccc;
    row-gap: 1rem;
}

.day-item {
    /*default*/
}

    .day-item.horizontal {
        min-width: 150px;
        max-width: 200px;
    }

        .day-item.horizontal:not(:last-of-type) {
            border-bottom: none;
            margin-bottom: 0;
            padding-bottom: 0;
            border-right: 1px dashed #ccc;
            padding-right: .8rem;
            margin-right: .8rem;
        }

        .day-item.horizontal.last-in-row {
            border-right: none;
            padding-right: 0;
            margin-right: 0;
        }

    .day-item.confirmed {
        /*border:1px solid var(--savd-blue);*/
    }

    .day-item:not(:last-of-type) {
        margin-bottom: .6rem;
        border-bottom: 1px dashed var(--savd-grey);
        padding-bottom: .6rem;
    }

.day-item-title {
    font-size: 80%;
    font-weight: 400;
    width: 100%;
}

.confirmed .day-item-title {
    font-weight: 500;
}

.day-item:not(.confirmed) {
    /*opacity:.9;*/
}

.appointment-more {
    margin-bottom: .1rem;
    font-weight: 500;
}

.day-item-menu {
    display: none;
    border: 1px solid var(--savd-blue);
    border-radius: .3rem;
    text-align: left;
    border-left-style: dashed;
}

.day-item-content {
    font-size: 75%;
}

.day-item-menu-option {
    padding-left: .1rem;
    padding-right: .4rem;
    padding-top: .2rem;
    padding-bottom: .2rem;
    cursor: pointer;
    display: flex;
    gap: .1rem;
    align-items: center;
    min-width: 100px;
}

    .day-item-menu-option.disabled {
        color: #555;
        cursor: default;
    }

        .day-item-menu-option.disabled i {
            color: var(--savd-grey);
        }

    .day-item-menu-option i {
        color: var(--savd-blue);
        width: 22px;
    }

    .day-item-menu-option:not(.disabled):hover {
        background-color: #efefef;
    }

        .day-item-menu-option:not(.disabled):hover i {
            color: var(--savd-blue-darker);
        }

.button-menu-wrapper {
    position: relative;
}

@media only screen and (max-width: 1400px) {
    .day-container {
        font-size: 0.9rem;
    }

    .appointment-item {
        font-size: 85%;
    }

        .appointment-item button {
            font-size: 90%;
        }
}

.ellipsis {
    display: block;
    white-space: nowrap;
    overflow-x: hidden;
    text-overflow: ellipsis;
    width: 100%;
}

.page-title.calendar-title i {
    width: 30px;
}

.calendar-range {
    font-size: 70%;
    font-weight: 400;
}

    .calendar-range i {
        color: var(--savd-grey);
    }

/* Calendar things end */

.page-title-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-bottom: .4rem;
}

.page-title {
    font-size: 24px;
    font-weight: 500;
}

.page-title-icon {
    color: var(--savd-green);
    margin-right: 5px;
}

.page-no-items-icon {
    color: var(--savd-grey);
    margin-right: 5px;
}

.appointment-item {
    padding-top: 1.5rem;
    margin-top: 2rem;
    border-top: 1px dashed var(--savd-green);
}

.appointment-title {
    padding: .5rem 0;
    border-radius: 10px 10px 0 0;
    margin-bottom: 0;
}

.appointment-quick-join, .appointment-no-join {
    min-width: 210px;
}

.appointment-title .sub {
    font-size: 80%;
}

.appointment-item-row {
    display: flex;
    flex-direction: row;
    gap: 10px;
}

.appointment-item-icon {
    display: flex;
    flex-grow: 0;
    align-items: center;
    justify-content: flex-start;
    min-width: 25px;
}

.appointment-item-content {
    display: flex;
    flex-grow: 1;
}

.appointment-content-title {
    font-weight: 600;
}

.appointment-content {
    /*   border: 2px solid var(--savd-green);*/
    border-top: none;
    border-radius: 0 0 10px 10px;
    padding: 10px 0;
}

#videoWidgetFrame {
    border-radius: 0.25rem;
    height: 100%;
}

.forpasswordform h1 {
    font-size: 18px;
}

.forpasswordform h4 {
    font-size: 16px;
}
/* APP */
.appsidebuttons {
    padding-left: 50px;
}

.logoffbut {
    padding-top: 10px;
    padding-left: 65px;
}

.appsidebuttons a {
    margin-bottom: 1rem;
}

.middle,
.rightcol,
.righterror,
.terminbox {
    position: relative;
    padding: 20px;
    background-color: #fff;
    border: var(--savd-green) 2px solid;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    max-width: 90%;
    overflow-y:auto;
    max-height:100%;
}

.middle {
    min-height: 250px;
}

.grid {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 1rem;
    row-gap: 0.25rem;
    width: 100%;
}

.grid-header {
    font-weight: 500;
}

.grid-title {
    font-weight: 500;
}

.grid-column {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    min-height: 3.2rem;
}

.grid .call-rating-score, .grid .call-rating-comment {
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.grid-mobile-label {
    display: none;
    font-weight: 500;
}

@media (max-width: 768px) {
    .grid-header {
        display: none;
    }

    .grid-mobile-label {
        display: inline-block;
    }

    .grid-column {
        width: 1fr;
        min-height: 1rem;
        align-items: center;
    }

        .grid-column.last:not(:last-of-type) {
            padding-bottom: 1.5rem;
            margin-bottom: 2rem;
            border-bottom: 1px dashed var(--savd-green);
        }
}

.grid-no-info {
    color: #999;
    font-style: italic;
}

.grid-fill-row {
    grid-column: 1 / -1;
}

.grid-divider {
    grid-column: 1 / -1;
    min-height: 1rem;
}

.grid-full-title {
    margin-top: .8rem;
    margin-bottom: .4rem;
    padding-bottom: .2rem;
    font-size: 105%;
    font-weight: 500;
    color: var(--savd-green);
    border-bottom: 1px dashed var(--savd-green);
}

.grid-data {
    display: none;
}

.grid-cell-no-wrap {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: .5rem;
    white-space: nowrap;
}

ul.adhoclist {
    padding: 0;
    margin-bottom: 0;
}

    ul.adhoclist li {
        list-style: none;
    }

        ul.adhoclist li a i {
            color: var(--savd-green);
        }

        ul.adhoclist li a:hover i {
            color: #fff;
        }

        ul.adhoclist li a {
            padding: 5px;
            border-radius: 25px;
            width: 80%;
            min-width: 0;
            cursor: pointer;
            padding-left: 25px;
            margin-left: -10px;
            margin-bottom: 2px;
            transition: .2s all ease;
            white-space: nowrap;
        }

            ul.adhoclist li a:not(.activeadhoc):hover,
            ul.adhoclist li a:not(.activeadhoc):focus,
            ul.adhoclist li a:not(.activeadhoc):active {
                background-color: #9C9C9C;
                color: #fff !important;
            }

a.language-a {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    color: var(--default-text-colour);
}

.activeadhoc {
    background-color: var(--savd-green);
    color: #fff !important;
}

    .activeadhoc i {
        color: #fff !important;
    }

    .activeadhoc.disable {
        color: white;
    }

.parabutton {
    margin-top: 20px;
}

.para_geschlecht {
    border: 1px solid var(--savd-green);
    padding: 10px;
    border-radius: .25rem;
    box-sizing: border-box;
    margin-bottom: 1rem;
}

.custom-control-input:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: var(--savd-green);
    background-color: var(--savd-green);
}

/*.righterror {
  margin-top: 40px;
}*/

.ebutton {
    display: block;
    border-radius: 30px;
    background: var(--savd-green);
    width: 60px;
    height: 60px;
    transition: all 0.5s ease;
    z-index: -1;
    margin-left: 41%;
}

    .ebutton .inbutton {
        min-width: 70px;
    }

    .ebutton i {
        font-size: 36px;
        margin-top: -5px;
        margin-left: -8px;
    }

.righterror,
.middle {
    position: relative;
}

.errorline {
    position: absolute;
    top: -20px;
    left: 44%;
    height: 2px;
    width: 50px;
    background: var(--savd-green);
    -ms-transform: rotate(90deg);
    /* IE 9 */
    -webkit-transform: rotate(90deg);
    /* Safari prior 9.0 */
    transform: rotate(90deg);
    /* Standard syntax */
    transition: all 0.3s ease 0s;
    z-index: -1;
}

.langline {
    position: absolute;
    top: 44px;
    right: -45px;
    height: 2px;
    width: 40px;
    background: var(--savd-green);
    transition: all 0.3s ease 0s;
    z-index: -1;
}

h3.parahead {
    font-size: 16px;
}

.fielderror {
    border: red 1px solid !important;
}

.disable {
    color: #a2a3a4;
}
/* Voting */
.outerwrapper {
    position: relative;
}

.voting_wrapper {
    position: absolute;
    width: var(--full-view-width);
    height: var(--full-view-height);
    background-color: rgba(17, 17, 17, 0.8);
    top: 0px;
    z-index: 1090;
}

.voting {
    padding: 20px;
    background-color: #fff;
    border: var(--savd-green) 2px solid;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    border-radius: 40px;
}


.outercard {
    position: absolute;
    top: 25vh;
    width: 100%;
}

.votecard {
    width: 40%;
    padding: 20px;
    background-color: #fff;
    border: var(--savd-green) 2px solid;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    border-radius: 40px;
    margin-left: auto;
    margin-right: auto;
}

    .votecard img {
        padding-bottom: 20px;
    }

.topcenter {
    padding-top: 25vh;
}

.ftopcenter {
    position: absolute;
    top: 25vh;
}

.quest {
    font-weight: bold;
    margin-bottom: 10px;
}

.votebuttons {
    padding-top: 20px;
}

.jq-ry-container {
    position: relative;
    padding: 0 5px;
    line-height: 0;
    margin-bottom: 10px;
    display: block;
    cursor: pointer;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    direction: ltr;
}

    .jq-ry-container[readonly="readonly"] {
        cursor: default;
    }

    .jq-ry-container > .jq-ry-group-wrapper {
        position: relative;
        width: 100%;
    }

        .jq-ry-container > .jq-ry-group-wrapper > .jq-ry-group {
            position: relative;
            line-height: 0;
            z-index: 10;
            white-space: nowrap;
        }

            .jq-ry-container > .jq-ry-group-wrapper > .jq-ry-group > svg {
                display: inline-block;
            }

            .jq-ry-container > .jq-ry-group-wrapper > .jq-ry-group.jq-ry-normal-group {
                width: 100%;
            }

            .jq-ry-container > .jq-ry-group-wrapper > .jq-ry-group.jq-ry-rated-group {
                width: 0;
                z-index: 11;
                position: absolute;
                top: 0;
                left: 0;
                overflow: hidden;
            }

/* Omni iframe*/
#OmniWidget {
    display: flex;
    flex-grow: 1;
}

    #OmniWidget iframe {
        border: none;
    }

.Omni-window {
    position: relative;
    display: flex;
    width: 100%;
}

#OmniPanel {
    display: flex;
    min-width: 250px;
    flex-grow: 0;
    padding: 16px;
    box-sizing: border-box;
    flex-direction: column;
    padding-top: 0;
    padding-right: 0;
    gap: 1rem;
}

    #OmniPanel button {
        width: 250px;
        margin-top: 0;
    }

.omni-quick-dropdown {
}

    .omni-quick-dropdown.open button {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }

.omni-quick-dropdown-content {
    display: none;
    max-height: 300px;
    max-width: 250px;
    overflow-x: hidden;
    overflow-y: auto;
    font-size: 80%;
    border: 2px solid var(--savd-green);
    padding: 10px 0;
    border-radius: 0 0 6px 6px;
    border-top: none;
}

.omni-quick-dropdown-item {
    cursor: pointer;
    padding: 4px 10px;
    user-select: none;
}

    .omni-quick-dropdown-item.dropdown-item-highlight {
        font-weight: bold;
    }

.minimal-layout-monitor-container {
    width: 100%;
    margin-top: 15px;
    height: calc(var(--full-view-height) - 115px);
    position: relative;
}

    .minimal-layout-monitor-container .monitor-display-window {
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 10;
        position: absolute;
        width: 100%;
        height: 100%;
    }

        .minimal-layout-monitor-container .monitor-display-window > div {
            border-radius: 6px;
            overflow: hidden;
            border: 2px solid var(--savd-green);
            box-shadow: 0px 0px 50px rgba(0, 0, 0, .6);
            box-sizing: content-box;
            min-width: 1024px;
            min-height: 768px;
        }

#invite-content-container {
    position: relative;
}

#invite-content-error {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 200%;
}

#invite-content-window {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    width: 100%;
    height: 100%;
}


.omni-quick-dropdown-item:hover {
    background-color: #eee;
}

.iframe-container {
    overflow: hidden;
    padding-top: 56.25%; /* 16:9*/
    position: relative;
}

    .iframe-container iframe {
        border: 0;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
    }

#breakcall {
    position: absolute;
    top: 30vh;
    left: 20vw;
    z-index: 99999999999999;
    width: 60%;
    background-color: #fff;
    border: var(--savd-green) 2px solid;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    border-radius: 40px;
    padding: 20px;
}
/* Side Panel*/
.slider-left {
    background-color: #fff;
    box-shadow: -5px 0 15px -6px #585858 inset;
    padding: 20px;
}

.mobile-ready-element {
    display: none;
}

.forminfo {
    margin-top: 20px;
}

/* Modal Content*/
.impressum p {
    font-size: 1.2rem;
}

.impressum h3 {
    font-size: 1.3rem;
    font-weight: bold;
}

.impressum h4 {
    font-size: 1.2rem;
    font-weight: bold;
}

.impressum a {
    color: var(--savd-green);
}

    .impressum a:hover {
        text-decoration: underline;
    }

.datenschutz p {
    font-size: 1.1rem;
}

.datenschutz li {
    font-size: 1.1rem;
}

.datenschutz h2 {
    font-size: 1.3rem;
    font-weight: bold;
}

.datenschutz h3 {
    font-size: 1.2rem;
    font-weight: bold;
}

.datenschutz h4 {
    font-size: 1.1rem;
    font-weight: bold;
}

.datenschutz a {
    color: var(--savd-green);
}

.datenschutza:hover {
    text-decoration: underline;
}

.alert-info-savd {
    color: #fff;
    background-color: var(--savd-green);
    border: none;
    border-radius: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
}

.alert-dismissible {
    padding-right: 0.75rem;
}

#cookieConsent {
    padding: 0.5rem 0.75rem;
    max-height: var(--cookie-bar-height);
}

    #cookieConsent a {
        color: #fff;
        text-decoration: underline;
    }

.alert.alert-info-savd {
    margin-bottom: 0rem;
}


.alert-success {
    font-size: 0.9rem;
}

    .alert-success a:hover {
        color: #155724;
        text-decoration: underline;
    }

.btn {
    font-size: 1.2rem;
}

.btn-xsm {
    font-size: 1rem;
    padding: .3rem .5rem;
}


.midcontent, .rightcontent, .sidecontainer {
    padding-top: var(--content-top-padding);
}

#middle-content {
    transition: max-width ease .3s;
}

#language-list-container {
    display: block;
    width: 100%;
    height: 100%;
}

#adhoclist {
    max-height: calc(var(--full-view-height) - 140px);
    overflow-y: auto;
    overflow-x: hidden;
}

.middle-line-container {
    width: calc(100% - 50px);
    /*height: calc(100% - var(--header-height-large));*/
    border: none;
    position: absolute;
    top: 0;
    left: 25px;
    z-index: -5;
}

.middle,
.rightcol,
.righterror,
.terminbox {
    max-width: 100%;
}

ul.adhoclist li a:hover,
ul.adhoclist li a:focus,
ul.adhoclist li a:active {
    width: 100%;
}

.activeadhoc {
    width: 103% !important;
}

.topcenter {
    padding-top: 15vh;
}

/* Chatbutton*/
.bottom_chatbut {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: transparent;
    text-align: right;
    z-index: 10000000;
}

.chatbut_position {
    position: relative;
    width: 60px;
    height: 60px;
    left: 94%;
    top: -60px;
}

.bottom_chatbut a.abutton {
    display: block;
    border-radius: 30px;
    background: var(--savd-green);
    color: #fff;
    width: 60px;
    height: 60px;
    transition: all 0.5s ease;
    z-index: -1;
}

    .bottom_chatbut a.abutton:hover {
        background: #D9D9D9;
    }

    .bottom_chatbut a.abutton div {
        position: relative;
        top: 13px;
        left: -17px;
    }

        .bottom_chatbut a.abutton div i {
            color: #fff;
        }

        .bottom_chatbut a.abutton div i {
            color: #fff;
        }


.smalltext {
    font-size: 14px;
}

/* Modal Pills*/
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    color: #fff;
    background-color: var(--savd-green);
}

.nav-pills a:hover {
    color: var(--savd-green)
}

.tab-pane p a {
    color: var(--savd-green)
}

    .tab-pane p a:hover {
        color: #1F1F1F
    }


/* Termformular*/
#termsentok {
    display: none
}

#termsentno {
    display: none
}

.form-group label {
    font-size: 18px
}

#termform .form-group span {
    font-size: 14px;
    color: red;
}

#termsentno {
    font-size: 14px;
}

.form-group .required {
    position: relative;
}

    .form-group .required::after {
        content: "*";
        color: red;
        position: absolute;
        top: -0.2em;
        margin-left: 0.25em;
    }

/* Formular Validierungen */
.form-group .error:not(select) {
    color: red;
}

.form-group .form-control.valid {
    /*border-color:green;*/
}

.form-group .error:not(.form-control) {
    font-size: 12px;
}

.form-group input.error,
.form-group select.error {
    border: 1px solid red;
}

.modal-header-icon {
    margin-right: 5px;
    color: var(--savd-green);
}

.icon-shadow {
    text-shadow: #000 1px 1px 1px;
}

.modal-header-icon.mid {
    margin-left: 8px;
}

.high-visibility-menu {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 15px;
}

    .high-visibility-menu #menu-focus-default a.abutton {
        background-color: var(--savd-blue);
    }

@media only screen and (min-width: 768px) {
    .mobile-no-right-padding {
        padding-right: 0;
    }

    a.sbutton:hover,
    a.sbutton:focus,
    a.sbutton:active {
        width: 100%;
    }

    .appsidebuttonshelplogin.solid {
        background-color: #fff;
        padding: .4rem;
        padding-left: .8rem;
        border-radius: 10px;
    }

        .appsidebuttonshelplogin.solid.expanded {
            padding: .8rem;
        }

    .mobile-menu-overlay {
        display: none !important;
    }

    .authform-no-email {
        margin-top: 1.6rem;
    }
}


.mobile-ready-hide {
    display: block;
}

.mobile-ready-hide-flex {
    display: flex;
}

.mobile-ready-show, .mobile-ready-show-flex {
    display: none !important;
}


.mobile-menu-container {
    display: flex;
    flex-direction: column;
    gap: .8rem;
    padding: var(--mobile-header-margin) 15px 0 15px;
    width: 100%;
}

.mobile-menu-overlay {
    display: none;
}

@media (max-height: 700px) and (min-width: 768px) {
    body {
        font-size: 1.2rem;
    }

    a.sbutton, a.abutton, a.logout-button {
        height: 52px;
        width: 52px;
        min-height: 52px;
        font-size: 1.1rem;
    }

        a.sbutton.activelink, a.abutton.activelink {
            width: 100%;
        }

    .inbutton, .winbutton {
        padding-left: 11px;
    }

        .inbutton i, .winbutton i {
            font-size: 1.2rem;
        }

    .appsidebuttons a {
        margin-bottom: .6rem;
    }

    .login-button-line {
        top: 125px;
    }

    .news-display-content {
        font-size: 1rem !important;
    }

        .news-display-content h1 {
            font-size: 1.3rem !important;
        }

        .news-display-content h2 {
            font-size: 1.25rem !important;
        }

        .news-display-content h3 {
            font-size: 1.1rem !important;
        }
}

.mobile-ready-soft-show {
    display: none;
}




.modal-body.lobbyview {
    text-align: center;
    padding: 3rem;
}

.widget-calltest-container {
    width: 100%;
    height: calc(100% - 30px);
    border-radius: 4px;
    overflow: hidden;
}

    .news-display-content p {
        margin-bottom: 0;
    }

.news-display-frontpage {
    margin-top: 60px;
    padding-bottom: 30px;
}

.paste-buttons {
    width: 100%;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    flex-wrap: wrap;
    gap: .8rem;
}

.modal-body.lobbyview {
    text-align: center;
    padding: 3rem;
}

.widget-calltest-container {
    width: 100%;
    height: calc(100% - 30px);
    border-radius: 4px;
    overflow: hidden;
}

.menu-item-more {
    display: block;
}

.menu-item-less {
    display: none;
}

@media (min-width:768px) {
    .modal .modal-dialog.modal-xl:not(.not-full) {
        max-width: calc(100% - 2rem);
        margin: 1rem;
    }
}

.modal .modal-dialog.modal-xl.not-full .modal-content {
    max-height: calc(var(--full-view-height) - (3.5rem));
    overflow-y: auto;
}

.modal .modal-xl .bootbox-body, .modal .modal-xl .modal-body {
    height: calc(var(--full-view-height) - (5rem + 110px));
}

.modal.xl-no-buttons .modal-xl .bootbox-body, .modal.xl-no-buttons .modal-xl .modal-body {
    height: calc(var(--full-view-height) - (5rem + 40px));
}

.invite-bad-id-text {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    flex-direction: column;
    gap: 1.5rem;
}

#icon-preloader {
    visibility: hidden;
    position: absolute;
    z-index: -1;
    pointer-events: none;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0;
    overflow: hidden;
}

.shake-me {
    animation: tilt-shaking 3s infinite;
}

@keyframes tilt-shaking {
    0% {
        transform: rotate(0deg);
    }

    2% {
        transform: rotate(8deg);
    }

    4% {
        transform: rotate(0eg);
    }

    6% {
        transform: rotate(-12deg);
    }

    8% {
        transform: rotate(0deg);
    }

    10% {
        transform: rotate(12deg);
    }

    12% {
        transform: rotate(0eg);
    }

    14% {
        transform: rotate(-8deg);
    }

    16% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(0deg);
    }
}

.header-environment {
    font-weight: 700;
    color: var(--savd-red);
    text-shadow: 1px 1px 2px #fff;
    margin-left: .5rem;
    letter-spacing: .1rem;
    transform: rotate(-8deg);
}

.savd-spinner-container {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: .5rem;
}

.date-pick-button-display {
    margin-left: .5rem;
}

.date-pick-button-container {
    position: relative;
    display: inline-block;
}

    .date-pick-button-container .date-pick-field {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
        visibility: hidden;
        height: 100%;
    }

.rating-picker {
    display: flex;
    white-space: nowrap;
}

    .rating-picker .rating-item {
        cursor: pointer;
        padding: 2px 3px;
    }

        .rating-picker .rating-item.picked {
            animation: glow-animation .5s forwards ease-out;
        }

        .rating-picker .rating-item.selected {
            color: var(--savd-green);
        }

        .rating-picker .rating-item.unselected {
            color: var(--savd-grey);
        }

.rating-title {
    font-weight: 500;
}

.rating-sub-title, .rating-label {
    font-size: 90%;
}

.rating-sub-label {
    font-size: 80%;
}

.rating-gap {
    margin-top: 1.5rem;
}

.rating-hr {
    opacity: .5;
    border: none;
    width: 100%;
    border-top: 1px dashed var(--savd-grey);
    margin-top: 1rem;
    margin-bottom: 1.2rem;
    margin-left: auto;
    margin-right: auto;
}

@keyframes glow-animation {
    0% {
        transform: scale(1);
    }

    30% {
        transform: scale(1.3);
    }

    70% {
        transform: scale(.7);
    }

    100% {
        transform: scale(1);
    }
}

.repeater-container {
    display: flex;
    white-space: nowrap;
}


.ql-editor {
    font-family: 'Asap', sans-serif;
    font-size: 1rem;
    min-height: 250px;
}

.ql-blank {
    height: 100%;
}

.ql-picker-label {
    font-family: 'Asap', sans-serif;
}

.ql-picker-options {
    font-family: 'Asap', sans-serif;
}

.ql-container {
    min-height: 250px;
    max-height: 400px;
    overflow-x: visible;
    overflow-y: auto;
}

.news-content {
    border: 1px solid var(--savd-grey);
    border-radius: .3rem;
    padding: .8rem 1rem;
    display: none;
    margin: 1rem 0;
}

.news-functions {
    display: flex;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.news-details {
    display: flex;
    flex-direction: column;
    margin-bottom: 1rem;
    font-size: 80%;
}

.news-display-title {
    color: var(--savd-red);
    font-size: 1.6rem;
    font-weight: 500;
    padding-bottom: .4rem;
    margin-bottom: .8rem;
    border-bottom: 1px dashed var(--savd-red);
}

    .news-display-title i {
        margin-right: .3rem;
    }

    .news-display-title:not(:first-of-type) {
        margin-top: 2rem;
    }

.news-display-content {
    font-size: 1.1rem;
}

    .news-display-content h1 {
        font-size: 1.4rem !important;
        font-weight: 600;
    }

    .news-display-content h2 {
        font-size: 1.3rem !important;
        font-weight: 500;
    }

    .news-display-content h3 {
        font-size: 1.2rem !important;
        font-weight: 500;
    }

    .news-display-content a {
        color: var(--savd-blue);
        font-weight: 500;
        text-decoration: underline;
    }

        .news-display-content a:hover {
            color: var(--savd-blue-darker);
        }


.midcontent-fader {
    display: none;
}

/* MOBILE READY */
@media (max-width: 768px) {
    body {
        font-size: 1.2rem;
        font-weight: 400;
        line-height: 1.3;
    }

    .mobile-menu-overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: calc(100% - var(--mobile-footer-height));
        background-color: #fff;
        z-index: 10;
    }

    .mobile-ready-soft-show {
        display: block;
    }


    .mobile-bottom-padding {
        padding-bottom: .6rem;
    }

    .mobile-menu-scroller {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        overflow-y: auto;
        overflow-x: hidden;
        padding-bottom: 1rem;
        width: 100%;
        gap: .8rem;
    }

    .mobile-menu-overlay .fader {
        position: absolute;
        left: 0;
        height: 20px;
        z-index: 11;
        width: 100%;
        pointer-events: none;
    }

    .mobile-menu-overlay .top-fade {
        top: 0;
        background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    }

    .mobile-menu-overlay .bottom-fade {
        bottom: 0;
        background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    }

    .abutton.mobile-ready-button-extended {
        width: 100%;
    }

    .modal-dialog {
        margin: .5rem;
        width: calc(100% - 1rem);
        min-width: calc(100% - 1rem);
        max-width: calc(100% - 1rem);
        box-sizing: border-box;
    }

    .middle, .terminbox {
        border-radius: 30px;
    }

    .outerwrapper {
        height: calc(var(--full-view-height) - var(--mobile-header-height));
        min-height: calc(var(--full-view-height) - var(--mobile-header-height));
        max-height: calc(var(--full-view-height) - var(--mobile-header-height));
        overflow: hidden;
    }

    body:not(.cookie-accepted) .outerwrapper {
        height: calc(var(--full-view-height) - (var(--mobile-header-height) + var(--cookie-bar-height)));
        min-height: calc(var(--full-view-height) - (var(--mobile-header-height) + var(--cookie-bar-height)));
        max-height: calc(var(--full-view-height) - (var(--mobile-header-height) + var(--cookie-bar-height)));
        overflow: hidden;
    }

    .menu-fill {
        display: flex;
        flex-grow: 1;
    }

    .menu-focus-container {
        display: flex;
        flex-grow: 1;
        flex-direction: column;
        gap: 0.8rem;
    }

    .high-visibility-menu a.abutton {
        width: 100%;
    }

    .menu-adapt {
        display: flex;
        flex-grow: 0;
        width: 60px;
    }

    .btn {
        font-size: 1.2rem;
    }

    .winbutton {
        min-width: 100px;
    }

    .midcontentlogin {
        padding-left: 15px;
        max-height: calc(var(--full-view-height) - (var(--mobile-footer-height) + var(--mobile-header-height) + 160px + (2 * var(--mobile-header-margin))));
        overflow-y: auto;
    }

    .midcontent {
        padding-top: var(--mobile-header-margin);
        min-height: calc(var(--full-view-height) - (var(--mobile-footer-height) + var(--mobile-header-height) + 60px + (2 * var(--mobile-header-margin))));
        max-height: calc(var(--full-view-height) - (var(--mobile-footer-height) + var(--mobile-header-height) + 60px + (2 * var(--mobile-header-margin))));
        height: calc(var(--full-view-height) - (var(--mobile-footer-height) + var(--mobile-header-height) + 60px + (2 * var(--mobile-header-margin))));
    }

    body:not(.cookie-accepted) .midcontent {
        padding-top: var(--mobile-header-margin);
        min-height: calc(var(--full-view-height) - (var(--mobile-footer-height) + var(--mobile-header-height) + var(--cookie-bar-height) + 60px + (2 * var(--mobile-header-margin))));
        max-height: calc(var(--full-view-height) - (var(--mobile-footer-height) + var(--mobile-header-height) + var(--cookie-bar-height) + 60px + (2 * var(--mobile-header-margin))));
        height: calc(var(--full-view-height) - (var(--mobile-footer-height) + var(--mobile-header-height) + var(--cookie-bar-height) + 60px + (2 * var(--mobile-header-margin))));
    }

    .minimal-layout-content {
        margin-top: var(--mobile-header-margin);
        height: calc(var(--full-view-height) - (var(--mobile-footer-height) + var(--mobile-header-height) + var(--mobile-header-margin) + var(--mobile-footer-margin)));
    }

    ul.adhoclist li a.language-a {
        width: 100%;
        padding-left: 10px;
        margin-left: 0;
    }

    #adhoclist {
        height: 100%;
    }

    .sidecontainer {
        padding-top: var(--mobile-header-margin);
        box-sizing: border-box;
    }

    .sidecontainer-login {
        position: absolute;
        top: var(--mobile-header-height);
        bottom: calc(var(--mobile-footer-margin) + var(--mobile-footer-height));
        height: calc(var(--full-view-height) - (var(--mobile-header-height) + var(--mobile-footer-height)));
        width: 100%;
        box-sizing: border-box;
    }

    .appsidebuttonshelplogin {
        width: 100%;
        position: absolute;
        bottom: var(--mobile-footer-margin);
        padding-left: 15px;
        padding-right: 15px;
        left: 0;
    }

    .news-display-frontpage {
        margin-top: 10px;
        padding: 20px;
        margin-bottom: 30px;
    }

    .mobile-ready-element {
        display: block;
    }

    .mobile-ready-hide, .mobile-ready-hide-flex {
        display: none !important;
    }

    .mobile-ready-show {
        display: block !important;
    }

    .mobile-ready-show-flex {
        display: flex !important;
    }

    .inbutton {
        width: 80px;
        min-width: 80px;
    }

    .moinbutton {
        padding-left: 20px;
        padding-top: 8px;
        font-size: 1.0rem;
        color: #fff;
    }

        .moinbutton span {
            color: #fff;
            font-size: 1.0rem;
        }

    a.mabutton {
        display: block;
        border-radius: 30px;
        background: #D9D9D9;
        width: 100%;
        height: 40px;
        transition: all 0.5s ease;
        z-index: -1;
    }

    .appsidebuttons,
    .sidebuttons {
        padding-left: 0;
        display: flex;
        flex-direction: column;
        gap: .8rem;
    }

    a.sbutton,
    a.abutton {
        background-color: var(--savd-green);
        height: 60px;
        min-height: 60px;
    }

        a.sbutton.mobile-full-width,
        a.abutton.mobile-full-width {
            width: 100%;
        }

        a.sbutton.mobile-shrink,
        a.abutton.mobile-shrink {
            height: 50px;
            max-height: 50px;
            min-height: 50px;
        }

    .appsidebuttons a {
        margin-bottom: 0;
    }

    a.mabutton {
        width: 100%;
        height: 40px
    }

    a.abutton:hover,
    a.abutton:focus,
    a.abutton:active {
        background-color: var(--savd-green);
    }

    a.activelink {
        height: 50px;
    }

    .inbutton span {
        padding-left: 20px;
        color: #fff;
        font-size: 1.2rem;
    }

    .button-line {
        display: none;
        width: 0;
    }


    .line {
        display: none;
        width: 0;
    }

    .tline, .aline {
        display: none;
        width: 0;
    }

    .center img {
        margin-left: 30%;
    }

    .handlogo {
        margin-bottom: 10px;
    }


    .rightcontent {
        margin-bottom: 20px;
    }

    .fobuttons {
        padding-left: 10px;
        padding-bottom: 20px;
    }

        .fobuttons .col-md-3 {
            width: 24%;
        }

    .loginform, .authform {
        margin-top: var(--mobile-header-margin);
        width: 100%;
    }

    .login-button-line,
    .langline {
        width: 0%;
    }

    .loginsmall {
        margin-top: 10px;
    }

    .custom-control-label::before {
        top: 0.25rem;
    }

    .custom-switch .custom-control-label::after {
        top: calc(0.25rem + 2px);
    }

    .custom-control-label::after {
        top: 0.25rem;
    }

    #breakcall {
        top: 20vh;
        left: 2vw;
        width: 95%;
    }

    #supportmodal .modal-dialog {
        position: absolute;
        z-index: 10040;
        overflow: auto;
        overflow-y: auto;
    }

    #appointments-overview {
        border-radius: 30px;
    }

    #cookieConsent .cookie-text {
        font-size: 70%;
    }

    #cookieConsent button {
        font-size:90%;
    }

    .grid.mobile-ready-grid {
        grid-template-columns: 1fr !important;
    }

    .midcontent-fader {
        display: block;
        position: absolute;
        left: 0;
        width: 100%;
        height: 20px;
        z-index: 1000;
        pointer-events: none;
    }

        .midcontent-fader.fade-top {
            top: var(--mobile-header-height);
            background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
        }

        .midcontent-fader.fade-bottom {
            height: 40px;
            bottom: calc(var(--mobile-footer-height) + var(--mobile-footer-margin) + 175px);
            background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
        }


    /* Mobile-Ready Calendar */
    .day-container {
        padding: 0;
        font-size: 1.2rem;
    }

        .day-container:not(:last-of-type) {
            border-right: none;
        }

        .day-container:not(.empty) {
            /*        padding-bottom: 1.2rem;
        margin-bottom: 1.6rem;
        border-bottom: 1px dashed var(--savd-grey);*/
            margin-bottom: 2rem;
        }

    .day-item-menu-option {
        padding-top: .3rem;
        padding-bottom: .3rem;
    }

    .day-container:not(:first-of-type) {
        /*margin-top:2rem;*/
    }

    /*#calendar-inner-header .page-title-container {
        flex-direction:column;
        align-items:flex-start;
        gap:.6rem;
    }

    .calendar-configuration {
        width:100%;
        display:flex;
        gap:.3rem;
    }*/
}

.text-smaller-warning {
    display: block;
    font-size: 80%;
    font-style: italic;
    margin-top: .5rem;
    color: var(--savd-red);
}

.more-cog {
    transition: transform 0.6s ease;
}

    .more-cog.open {
        transform: rotate(60deg);
    }

h1.text-header {
    color:var(--savd-blue);
    border-bottom:1px dashed var(--savd-blue);
    margin-bottom:1rem;
}

#request-appointment-from-call-container {
    display:none;
}

#dev-tools {
    display: flex;
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    background-color: #fff;
    z-index: 9999;
    padding: .6rem;
    border: 1px solid #000;
    border-radius: .3rem;
    display: none;
    box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.4);
    align-items:center;
}

.env-link {
    cursor:pointer;
}
