/**********************************************************************************
* AV Userscript CSS
***********************************************************************************


/* File: ../res/Main.css */
/*
    Attemt to rework the AV Experience
*/


/* Roboto */
/* cyrillic-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu72xKOzY.woff2) format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu5mxKOzY.woff2) format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu7mxKOzY.woff2) format('woff2');
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu4WxKOzY.woff2) format('woff2');
    unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu7WxKOzY.woff2) format('woff2');
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu7GxKOzY.woff2) format('woff2');
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu4mxK.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

body {
    margin: 0px !important;
    padding: 0px !important;
}

body.rework-font, 
body.rework-font td,
body.rework-font th,
body.rework-font a,
body.rework-font input,
body.rework-font button {
    font-family: 'Roboto', sans-serif, Arial;
}

/* Error Message */
.error-message {
    position: fixed;
    top: 30px;
    left: 20px;
    right: 20px;
    width: auto !important;
    margin: auto !important;
    height: auto !important;
    background-color: #ff9c9c;
    border: 1px solid red;
    border-radius: 2px;
    color: black;
    padding: 5px !important;

    animation:hide 1.5s 1;
    -webkit-animation:hide 1.5s 1;
    animation-fill-mode: forwards;

    animation-delay: 20s;
    -webkit-animation-delay: 20s; /* Safari and Chrome */
    -webkit-animation-fill-mode: forwards;

}

@keyframes hide {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}


/* Login Page */
body.rework.login {
    height: 100%;
}
body.rework.login > table {
    width: 100% !important;
}

body.rework.login form[name="loginForm"] {
    width: 100%;
    height: 90%;

    display: flex;
    align-items: center;
    justify-content: center;
}
body.rework.login form[name="loginForm"] > table {
    /*margin: auto !important;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: fixed;*/
    font-size: 20px;
    background-color: white;
}
body.rework.login form[name="loginForm"] > table tr:nth-child(1) {
    height: 30px;
    font-size: 20px !important;
    text-align: center;
}
body.rework.login form[name="loginForm"] > table tr:nth-child(1) span,
body.rework.login form[name="loginForm"] > table .loginheader,
body.rework.login form[name="loginForm"] > table td span {
    font-size: 20px !important;
    font-family: 'Roboto', sans-serif, Arial !important;
}
body.rework.login form[name="loginForm"] > table tr:nth-child(2) table td {
    text-align: center !important;
    font-size: 20px;
    height: 50px;
    width: 200px;
    vertical-align: middle !important;
}
body.rework.login form[name="loginForm"] > table tr:nth-child(2) table td input,
body.rework.login form[name="loginForm"] > table #username,
body.rework.login form[name="loginForm"] > table #password {
    margin-top: 10px !important;
    margin-left: 10px !important;
    font-size: 20px;
    height: 30px;
    width: 80% !important;
}
body.rework.login form[name="loginForm"] > table tr:nth-child(2) table tr:nth-child(1) td:first-child,
body.rework.login form[name="loginForm"] > table tr:nth-child(2) table tr:nth-child(2) td:first-child,
body.rework.login form[name="loginForm"] > table td.content {
    display: none;
}

body.rework.login #copyright {
    margin: auto;
    right: 0;
    bottom: 0;
    position: fixed;
}
body.rework.login #wrapper {
    border: unset;
}
body.rework.login input:-webkit-autofill,
body.rework.login input:-webkit-autofill::first-line {
    font-size: 20px !important;
}

.changelog-modal {
    display: none;
    position: fixed;
    z-index: 100;
    left: 10%;
    top: 10%;
    right: 10%;
    bottom: 10%;
    background-color: #fefefe;
    box-shadow: #a7a7a7 3px 3px 6px;
    overflow: hidden;
}

.changelog-modal-content {
    margin: auto;
}

.changelog-modal-content > div {
    margin: -20px -20px -37px 0px;
    overflow-y: scroll;
    overflow-x: clip;
    width: calc(100% - 40px);
    height: calc(100% - 57px);
    padding: 0px 20px;
    position: absolute;
}

.changelog-close {
    color: #aaaaaa;
    float: right;
    font-size: 40px;
    font-weight: bold;
    padding-right: 20px;
    line-height: 0;
    padding-top: 6px;
}

.changelog-close:hover, .changelog-close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}

.changelog-modal hr {
    border: gray solid 1px;
    background-color: gray;
    margin: 0px;
}

.changelog-modal ul {
    list-style-type: none;
    margin-top: 5px;
}

.changelog-modal li {
    text-indent: -5px;
    font-size: 15px;
}

.changelog-modal li:before {
    content: '»';
    padding-right: 5px;
}

.changelog-modal h1 {
    padding-left: 20px;
    font-size: 30px;
}

.changelog-modal h3:first-child {
    margin-top: 0px;
}

.changelog-modal h3 {
    font-size: 20px;
    margin-bottom: 0px;
}

/* Aufgaben */
.task-table .timer, .task-table .time {
    font-size: 15px;
    margin-top: 4px;
    position: absolute;
    right: 10px;
}
.task-table .time {
    right: 100px;
}
.task-table .timer .value, .task-table .time .value {
    display: inline-block;
    padding-left: 5px;
}

/* Time Reporting */
#timeHistory {
    height: 100%;
    width: 100%;
    position: fixed;
    background-color: rgba(0,0,0,0.5);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10500;
}

#timeHistory .window {
    position: fixed;
    width: 75%;
    height: 75%;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: white;
    box-shadow: #a7a7a7 3px 3px 6px;
}

#timeHistory .window > h2 {
    margin-left: 10px;
}

#timeHistory .window .overview {
    position: absolute;
    margin: auto;
    top: 50px;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: auto;
}

#timeHistory .window .overview table {
    width: 100%;
    padding: 0px 10px;
}

#timeHistory .window .close {
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 30px;
    cursor: pointer;
}

#timeHistory .window .close:hover {
    color: red;
}

#timeHistory .window .button {
    border: 1px solid gray;
    background: linear-gradient(160deg, #c0c0c0, #dcd9d9);
    border-radius: 3px;
    padding: 0px 10px;
}

#timeHistory .window .button:hover {
    background: linear-gradient(160deg, #d0d0d0, #f7f7f7);
}


/* All Pages */
tr.listhead {
    height: 30px;
}

.nvabar {
    width: 100%;
}

.navbar a.menu {
    background: none;
    padding: 0px;
}

.navbar table tr td {
    padding: 3px 10px !important;
}

.navbar .dropdown,
.navbar .subhead3 a {
    position: relative;
    display: inline-block;
}

.navbar .dropdown-content {
    display: none;
    position: absolute;
    background-color: #f1f1f1;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1002;
}

.navbar .dropdown-content a {
    color: black;
    padding: 5px 10px !important;
    text-decoration: none;
    min-width: 160px;
    display: block;
    margin-right: 0px !important;
}

.navbar .dropdown-content .menu {
    background: none;
}

.navbar .dropdown-content a:hover {
    background-color: #5E9DDE;
}

.navbar .dropdown:hover .dropdown-content {
    display: block;
}


.navbar .submenutoggle {
    float: right;
    display: block;
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    font-size: 18px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.navbar .submenutoggle input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.navbar .submenutoggle .indicator {
    position: absolute;
    color: black;
    top: 0px;
    padding-bottom: 2px;
    right: 10px;
    height: 20px;
    width: 20px;
    color: #eee;
    content: "\/";
}

.navbar .submenutoggle:hover input ~ .indicator {
    color: #ccc;
}

.navbar .submenutoggle input ~ .indicator:after {
    content: "\25B2";
}

.navbar .submenutoggle input:checked ~ .indicator:after {
    content: "\25BC";
}

#menu-search {
    float: right;
    height: 20px;
    width: 300px;
    top: 5px;
    position: relative;
}
#menu-search #navbar-search {
    height: 100%;
    width: 140px;
    padding-left: 22px;
    font-size: 16px;
    display: inline-block;
    vertical-align: top;
}
#menu-search select {
    height: 100%;
    width: 84px;
    font-size: 16px;
    display: inline-block;
    vertical-align: top;
    padding: 1px;
}
#menu-search .submit {
    height: 80%;
    width: 5%;
    font-size: 16px;
    padding: 0px 7px 6px 8px;
    display: inline-block;
    vertical-align: top;
}
#menu-search .mdi {
    font-size: 22px;
    padding-top: 1px;
    position: absolute;
    color: #999999;
    line-height: normal;
    box-sizing: content-box;
}
body.rework *, body.rework ::after, body.rework ::before {
    box-sizing: content-box;
}
body.rework button,
body.rework input,
body.rework optgroup,
body.rework select,
body.rework textarea {
    line-height: normal;
}

#settings-cog {
    float: right;
    font-size: 20px;
}

#settings-cog:hover {
    color: gray;
}

.collapsible {
    border: 1px solid gray;
    background-color: lightgray;
    padding: 2px 0px 2px 4px;
    cursor: pointer;
    background: linear-gradient(180deg, #e3e8e9, #bab7b7);
    border-radius: 3px;
}

.collapsible:hover {
    background-color: #e0dede;
}

.collapsible label {
    pointer-events: none;
    font-size: 14px;
    font-weight: bold;
}

.togglebox {
    display: none;
}

.togglebox:checked + label {
    background-image: url(images/minus.png);
}

.togglebox + label {
    background-image: url(images/plus.png);
    width: 11px;
    height: 11px;
    display: inline-block;
    background-size: cover;
}

.flexbox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: flex-start;
}
.flexbox .group {
    padding: 5px 10px;
}


/* Context Menu */
.contextmenu {
    position: fixed;
    z-index: 9999;
    visibility: hidden;
    opacity: 0;
    padding: 0px;
    font-family: sans-serif;
    font-size: 11px;
    background: #fff;
    color: #555;
    border: 1px solid #C6C6C6;
    width: fit-content;
    -webkit-transition: opacity .2s ease-in-out;
    -moz-transition: opacity .2s ease-in-out;
    transition: opacity .2s ease-in-out;
    -webkit-box-shadow: 2px 2px 2px 0px rgba(143, 144, 145, 1);
    -moz-box-shadow: 2px 2px 2px 0px rgba(143, 144, 145, 1);
    box-shadow: 2px 2px 2px 0px rgba(143, 144, 145, 1);
}

.contextmenu a {
    display: block;
    color: #555;
    text-decoration: none;
    padding: 4px 0px 4px 2px;
    width: 100%;
    height: fit-content;
    margin-right: 10px;
}

.contextmenu a div.mdi {
    font-size: 16px;
    margin-left: 2px;
    margin-right: 2px;
    display: inline-block;
}

.contextmenu a div.text {
    font-size: 12px;
}

.contextmenu a:hover {
    color: #fff;
    background: #3879D9;
}

.contextmenu hr {
    border: 1px solid #EBEBEB;
    border-bottom: 0;
}
.center {
    text-align: center;
}

/* Task List */
.advanced-search td .mdi {
    font-size: 22px;
    float: right;
    height: 0px;
    width: 0px;
    margin-right: 20px;
    margin-top: -4px;
    display: none;
    color: orange;
}

.advanced-search td:hover .mdi {
    display: block;
}

#custom-search {
    padding: 5px 10px;
}
#custom-search .content {
    display: grid;
    grid-template-columns: repeat(20, 20px) repeat(auto-fill, 20px);
    grid-template-rows: min-content 23px;
    grid-auto-rows: minmax(23px, auto);
    grid-auto-columns: 20px;
    grid-gap: 0px 0px;
}

#custom-search .content .search {
    vertical-align: middle;
}
#custom-search .content .search td {
    display: inline-block;
}
#custom-search .content .search input,
#custom-search .content .search select {
    vertical-align: middle;
}

#custom-search .content .break {
    flex-basis: 100%;
    height: 0px;
}

#custom-search.editmode {
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
}
#custom-search.editmode .search {
    cursor: move;
    cursor: grab;
    cursor: -moz-grab;
    cursor: -webkit-grab;
}
#custom-search.editmode .search input,
#custom-search.editmode .search select {
    pointer-events: none; 
}
#custom-search.editmode .search:hover {
    background-color: #5E9DDE;
}
#custom-search.editmode .search.active {
    background-color: #0680fb;
    
}
#custom-search.editmode .content {
    grid-template-rows: repeat(20, 23px);
    background-image:
      repeating-linear-gradient(#ccc 0 1px, transparent 1px 100%),
      repeating-linear-gradient(90deg, #ccc 0 1px, transparent 1px 100%);
    background-size: 20px 23px;
}


#layout-editor {
    background-color: #ff9c9c;
    padding: 5px 0px 5px 20px;
}
#layout-editor .title {
    font-size: 20px;
    font-weight: bold;
}
#layout-editor .label {
    font-size: 12px;
    font-weight: bold;
    vertical-align: super;
}
#layout-editor .slider#height {
    width: 50px;
}
#layout-editor .slider#width {
    width: 200px;
    margin-right: 20px;
}

body.rework .button,
body.rework  button,
body.rework  input[type="submit"],
body.rework  input[type="button"] {
	box-shadow: inset 0px 1px 0px 0px #ffffff;
	background: linear-gradient(to bottom, #e5e5e5 5%, #ffffff 100%);
	background-color: #ffffff;
	border-radius: 6px;
	border: 1px solid gray;
	display: inline-block;
	cursor: pointer;
	color: #444444;
	font-family: Arial;
	font-size: 12px;
	font-weight: bold;
	padding: 3px 5px;
	text-decoration: none;
	text-shadow: 0px 1px 0px #ffffff;
}
body.rework .button:hover, 
body.rework  button:hover,
body.rework  input[type="submit"]:hover,
body.rework  input[type="button"]:hover {
	background: linear-gradient(to bottom, #f6f6f6 5%, #ffffff 100%);
	background-color: #f6f6f6;
}
body.rework .button:active,
body.rework  button:active,
body.rework  input[type="submit"]:active,
body.rework  input[type="button"]:active {
	position: relative;
	top: 1px;
}
body.rework .button:disabled,
body.rework  button:disabled,
body.rework  input[type="submit"]:disabled,
body.rework  input[type="button"]:disabled {
	background: linear-gradient(to bottom, #8f8f8f 5%, #c2c2c2 100%);
    cursor: not-allowed;
}
body.rework select,
body.rework input[type="text"] {
    border-radius: 3px;
    border: 1px solid gray;
}

body.rework .option-buttons img,
body.rework .extraButtons a img {
    width: 16px;
    height: 16px;
}

#tabs-1 table.table-border-gray tr td:nth-child(3),
#tabs-1 table.table-border-gray tr td:nth-child(2) {
    max-width: 566px;
    text-overflow: ellipsis;
    overflow: hidden;
}

body.rework .navbar {
    padding: 0px;
}
body.rework button.note-color-btn,
body.rework .modal button {
    border-color: red;
    background: #ff6262;
    box-shadow: none;
}
body.rework .modal {
    z-index: 10001;
}

/* Hide Season Background when reduced motion is enabled
** (This should be the case when using RDP or other
** reduced motion settings)
*/
@media screen and (prefers-reduced-motion: reduce) {
    .body .season-background {
        display: none !important;
    }
}

.note-editor.note-airframe.fullscreen, .note-editor.note-frame.fullscreen {
    z-index: 10001 !important;
}
.note-modal {
    z-index: 10002 !important;
}
.note-editor.note-airframe .note-editing-area .note-editable, .note-editor.note-frame .note-editing-area .note-editable {
    background-color: white;
}


/* Time Reporting */
body.rework .EintragDialog input[name="von1"],
body.rework .EintragDialog input[name="bis1"],
body.rework .EintragDialog input[name="von2"],
body.rework .EintragDialog input[name="bis2"] {
    width: 20px;
    text-align: center;
}
body.rework .EintragDialog input[name="pause"] {
    width: 40px;
}
body.rework .EintragDialog #aufgabeNr,
body.rework .EintragDialog #projektNr,
body.rework .EintragDialog input[name=ort] {
    width: 95% !important;
}
body.rework .EintragDialog #eintragsDatum {
    width: calc(100% - 30px) !important;
}
body.rework .EintragDialog table .EintragDialog td:first-child {
    text-align: right;
    padding-right: 10px;
}

.stop-scrolling {
    height: 100%;
    overflow: hidden;
}

.booking-popup {
    position: fixed;
    margin: auto;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 999999;
}
.booking-popup .background {
    position: fixed;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
}

.booking-popup .window {
    width: 240px;
    height: 230px;
    background-color: white;
    margin: auto;
    padding: 10px;
    top: 0;
    left: 0;
    position: fixed;
    box-shadow: 2px 2px 5px 0px #00394f;
}
.booking-popup .window > div {
    padding-bottom: 8px;
    display: inline-block;
    padding-right: 5px;
}
.booking-popup .window .label {
    padding-right: 3px;
}
.booking-popup #tasklist-clone {
    display: none;
    position: absolute;
    left: -275px;
    width: 800px;
    top: 96px;
    overflow: scroll;
}

.reworked-time-reporting {
    .calendar {
        margin-left: 1%;
    }
    .calendar .week:first-child {
        margin-top: 10px;
    }
    .calendar .week {
        display: grid;
        grid-template-columns: 50px repeat(7, 13.5%);
        grid-auto-rows: minmax(40px, auto);
        grid-gap: 0px;
        margin-top: 40px;
    }
    .calendar .week .header {
        background-color: #e4f8ff;
        font-weight: bold;
        height: 45px;
    }
    .calendar .week .day:nth-child(n+7) .header {
        background-color: #ff8383;
    }
    .calendar .week .day.next .header,
    .calendar .week .day.prev .header {
        background-color: #c1c1c1;
    }
    .calendar .week .day.next .times,
    .calendar .week .day.prev .times {
        background-color: #e2e2e2 !important;
    }

    .calendar .week > .sum {
        height: 30px;
        grid-column: 2 / 9;
        text-align: center;
    }
    .calendar .week .sum,
    .calendar .week .header,
    .month-sum {
        text-align: center;
        font-size: 18px;
        background: #e2f7ff;
    }
    .month-sum {
        font-size: 25px;
    }
    .month-sum .plus,
    .calendar .week .sum .plus {
        padding-left: 5px;
        color: green;
    }
    .month-sum .minus,
    .calendar .week .sum .minus {
        padding-left: 5px;
        color: red;
    }

    .calendar .week .week-legend .hour {
        display: grid;
        grid-template-rows: repeat(23, 40px);
        grid-auto-rows: minmax(100px, auto);

        background-image:
            repeating-linear-gradient(#ccc 0 1px, transparent 1px 100%),
            repeating-linear-gradient(#f3f3f3 0 240px, transparent 240px 720px, #f3f3f3 720px 960px, transparent 960px 100%);
        background-size: 40px 40px, 40px 1000px;
        background-position-y: 39px, 0px; 
        
        margin-top: 45px;

        text-align: center;
        padding: 34px 4px 0px 6px;
        font-weight: bold;
    }
    .calendar .week .week-legend .calendar-week {
        position: absolute;
        margin-top: 6px;
        margin-left: 9px;
        font-size: 25px;
        font-weight: bold;
    }

    .calendar .week .day .times {
        display: grid;
        grid-template-rows: repeat(96, 10px);
        grid-auto-rows: minmax(100px, auto);
        grid-gap: 0px;

        background-color: #fbfbfb;
        background-image:
            repeating-linear-gradient(#ccc 0 1px, transparent 1px 100%),
            repeating-linear-gradient(#f3f3f3 0 240px, transparent 240px 720px, #f3f3f3 720px 960px, transparent 960px 100%),
            repeating-linear-gradient(90deg, #bfbdbd 0px 1px, transparent 1px 100%);
        background-size: 40px 40px, 40px 1000px, 100% 1000px;
        background-position-y: 39px, 0px; 
        
        -webkit-user-select: none; /* Safari */
        -ms-user-select: none; /* IE 10 and IE 11 */
        user-select: none; /* Standard syntax */
        
        cursor: copy;

        overflow: hidden;
    }
    .calendar .week .day:nth-child(n+7) .times {
        background-color: #f3f3f3;
        background-image:
            repeating-linear-gradient(#ccc 0 1px, transparent 1px 100%);
        background-size: 40px 40px, 40px 100%;
        background-position-y: 39px, 0px;
    }

    .calendar .week .day .times .time:hover {
        z-index: 999;
        background: #50ccfb;
        min-height: 50px;
        height: fit-content;
    }
    .calendar .week .day .times .time,
    .calendar .week .day .times .selection,
    .calendar .week .day .times .holiday {
        border: 2px solid #00b8ff;
        background: #50ccfb;
        background: rgb(119 217 255 / 50%);
        font-size: 10px;
        padding: 0px 6px;
        position: relative;

        min-width: 3px;

        margin: 1px 3px 1px 3px;
    }
    .calendar .week .day .times .holiday {
        grid-row: 1 / span 2;
        border: 2px solid #fcba03;
        background: #ffd561;
        background: rgb(255, 213, 97 / 50%);
        padding: 0px;
    }
    .calendar .week .day .times .selection,
    .calendar .week .day .times .holiday {
        font-weight: bold;
        text-align: center;
        font-size: 12px;
        min-width: 120px;
    }
    .calendar .week .day .times .selection {
        border: 2px solid #0087bc;
        background: #2f88a8;
        background: rgba(99, 186, 221, 0.5);

        /*transition: all 0.3s ease;*/

        margin: 1px 3px 0px 3px;
    }
    .calendar .week .day .times .time.external {
        border: 2px solid #a3a3a3;
        background: #f2f7ff;
        background: rgb(205 206 207 / 50%);
    }
    .calendar .week .day .times .time.home {
        border: 2px solid #91ffbc;
        background: #baffd5;
        background: rgb(186, 255, 213 / 50%);
    }
    .calendar .week .day .times .time.home:hover {
        background: #00ff88;
    }
    .calendar .week .day .times .time.missing {
        border: 2px solid #f0ff91;
        background: #fffaba;
        background: rgb(186, 255, 213 / 50%);
        cursor: pointer;
    }
    .calendar .week .day .times .time.delete {
        border: 2px solid #ff3939;
    }
    .calendar .week .day .times .time.edit {
        border: 2px solid #00be5c;
    }
    

    .calendar .week .day .times .time .left-border {
        position: absolute;
        top: -2px;
        left: -7px;
        height: 14px;
        width: 7px;
        background-color: #00b8ff;
    }
    .calendar .week .day .times .time.home .left-border {
        background-color: #91ffbc;
    }
    .calendar .week .day .times .time.external .left-border {
        background-color: #a3a3a3;
    }
    .calendar .week .day .times .time.missing .left-border {
        background-color: #f0ff91;
    }
    .calendar .week .day .times .time.delete .left-border {
        background-color: #ff3939;
    }
    .calendar .week .day .times .time.edit .left-border {
        background-color: #00be5c;
    }
        
    .calendar .week .day .times .time .data {
        overflow: hidden;
        text-overflow: ellipsis;
        max-height: 100%;
        max-height: -webkit-fill-available;
    }

    .calendar .week .day .times .time .span,
    .calendar .week .day .times .time .task {
        text-align: center;
        font-weight: bold;
    }

    .calendar .week .day .times .time .place,
    .calendar .week .day .times .time .span,
    .calendar .week .day .times .time .type,
    .calendar .week .day .times .time .project {
        display: none;
    }

    .calendar .week .day .times .time:hover .span,
    .calendar .week .day .times .time:hover .project {
        display: block;
    }
    .calendar .week .day .times .time:hover .place,
    .calendar .week .day .times .time:hover .type {
        display: inline;
    }
    .calendar .week .day .times .time:hover .place::before{
        content: "\a";
        white-space: pre;
    }
    .calendar .week .day .times .time:hover .place::after{
        content: " - ";
    }


    .calendar .week .day .times .time .task {
        margin-right: 5px;
    }

    .calendar .week .day .times .time .task,
    .calendar .week .day .times .time .desc {
        display: inline;
        text-align: center;
    }

    .calendar .week .day .times .time .pause {
        position: absolute;
        bottom: 1px;
        right: 5px;
        color: #00ad00;
        font-weight: bold;
    }

    .calendar.hide-weekend .week .day:nth-child(n+7) {
        display: none;
    }
    .calendar.hide-weekend .week {
        grid-template-columns: 50px repeat(5, 18.9%);
    }
    .calendar.hide-weekend .week .sum {
        grid-column: 2 / 7;
    }

    .calendar.smaller-border .week .day .times {
        background-position-y: -40px, -240px; 
        grid-template-rows: repeat(24, auto) repeat(48, 10px) repeat(24, auto);
    }
    .calendar.smaller-border .week .week-legend .hour {
        background-position-y: -40px, -240px; 
        grid-template-rows: repeat(6, 0px) repeat(12, 40px) repeat(6, 0px);
    }
    .calendar.smaller-border .week .week-legend .hour div:nth-child(-n+6),
    .calendar.smaller-border .week .week-legend .hour div:nth-child(n+18) {
        visibility: hidden;
    }
    .calendar.smaller-border .week .day .times .holiday {
        grid-row: 25 / span 2;
    }

    .calendar.focusview .week:not(.current) {
        display: none;
    }

    #hover-div {
        position: fixed;
        margin: auto;
        font-weight: bold;
        z-index: 10000;
    }
}

/* Dropzone */
.dropzone {
    /* positions to point 0,0 - required for z-index */
    position: fixed; top: 0; left: 0; 
    /* above all elements, even if z-index is used elsewhere
       it can be lowered as needed, but this value surpasses
       all elements when used on YouTube for example. */
    z-index: 9999999999;               
    /* takes up 100% of page */
    width: 100%; height: 100%;         
    /* dim the page with 50% black background when visible */
    background-color: rgba(0,0,0,0.5);
    /* a nice fade effect, visibility toggles after 175ms, opacity will animate for 175ms. note display:none cannot be animated.  */
    transition: visibility 175ms, opacity 175ms;
}

.viewtask.comment-rework .comment tr.list-head,
.createaufgabe.comment-rework .comment tr.list-head,
.createaufgabenlist.comment-rework .comment tr.list-head {
    display: none;
}
.viewtask.comment-rework .comment table,
.createaufgabe.comment-rework .comment table,
.createaufgabenlist.comment-rework .comment table {
    width: 100%;
    padding: 10px;
}
.viewtask.comment-rework .comment tr.list-row,
.createaufgabe.comment-rework .comment tr.list-row,
.createaufgabenlist.comment-rework .comment tr.list-row {
    background-color: #c7d6da;
    padding: 10px;
    border-radius: 5px;
    margin: 5px 5px;
    box-shadow: 3px 1px 5px 0px #c8c8c8;
    max-width: 75%;
    width: fit-content;
    clear: both;

    display: grid;
    justify-content: start;
    grid-gap: 0px 8px;
}
.viewtask.comment-rework .comment tr.list-row td,
.createaufgabe.comment-rework .comment tr.list-row td,
.createaufgabenlist.comment-rework .comment tr.list-row td {
    border: unset;
    font-size: 13px;
}
.viewtask.comment-rework .comment tr.list-row td:nth-child(1),
.viewtask.comment-rework .comment tr.list-row td:nth-child(3),
.createaufgabe.comment-rework .comment tr.list-row td:nth-child(1),
.createaufgabe.comment-rework .comment tr.list-row td:nth-child(3),
.createaufgabenlist.comment-rework .comment tr.list-row td:nth-child(1),
.createaufgabenlist.comment-rework .comment tr.list-row td:nth-child(3) {
    order: 10;
    text-align: left;
    grid-column: 2;
    font-size: 13px;
}
.viewtask.comment-rework .comment tr.list-row td:nth-child(3),
.createaufgabe.comment-rework .comment tr.list-row td:nth-child(3),
.createaufgabenlist.comment-rework .comment tr.list-row td:nth-child(3) {
    order: 5;
    text-align: left;
    grid-column: 2;
    font-size: 15px;
}
.viewtask.comment-rework .comment tr.list-row td:nth-child(2),
.createaufgabe.comment-rework .comment tr.list-row td:nth-child(2),
.createaufgabenlist.comment-rework .comment tr.list-row td:nth-child(2) {
    font-weight: bold;
    font-size: 15px;
    order: 0;
    grid-column: 1;
    grid-row: 1 / 3;
}

.comment-rework .comment .worker-box {
    min-width: 40px;
    height: 32px;
    font-size: 18px;
    padding-top: 12px;
}

.kanban-board {
    height: 100%;
    min-height: 500px;
    max-height: 100%;
    
    width: 99%;
    margin: 5px 0.5%;

    border: 1px solid gainsboro;

    display: flex;
    overflow-x: auto;
}

.kanban-board .column {
    min-width: 260px;
    padding: 0px 5px;
    box-shadow: inset 0px 0px 3px 0px #cdcdcd;
}

.kanban-board .column .title {
    width: 100%;
    text-align: center;
    padding: 5px 0px;
    margin: 12px 0px;
    box-shadow: 0px -1px 20px 0px #cdcdcd;
    background-color: white;
}

.kanban-board .column .title h2 {
    font-weight: bold;
    font-size: 20px;
    margin: 0px 0px 4px 0px;
}

.kanban-board .column .cards {
    display: block;
    margin-top: 5px;
}


.kanban-board .card {
    border: none;
    background-color: white;
    box-shadow: 0 0.1rem 1rem rgba(0,0,0,.15);
    border-radius: .5rem;
    width: 100%;
    display: flex;
    flex: 1 1 260px;
    z-index: 1;
    overflow: hidden;

    margin-top: 5px;
    height: auto;

    border-width: 5px;
    border-bottom-style: solid;

    position: relative;
    cursor: pointer;
}
.kanban-board .card:hover {
    box-shadow: 0 0.1rem 1rem rgba(0,0,0,.5);
}

.kanban-board .card .card-body {
    padding: 10px 10px 0px 10px;
    width: 100%;
}
.kanban-board .card .card-body h4 {
    margin: 0px 0px 3px 0px;
    font-size: 13px;
    display: block;
}
.kanban-board .card .card-body span {
    padding: 3px 0px;
    display: inline-block;
    width: 100%;
}
.kanban-board .card .card-body span p.highlight {
    background-color: #e3e8e9;
    padding: 3px;
    font-weight: bold;
    font-size: 10px;
}
.kanban-board .card .card-body span p.highlight.red {
    color: #cc0000;
}
.kanban-board .card .card-body span p {
    display: inline;
}


.kanban-board .card:hover .hover {
    display: block !important;
}
.kanban-board .card .hover {
    display: none !important;
    position: absolute;
    text-align: center;

    bottom: -5px;
    right: 0;
    left: 0;

    height: 50px;
    margin: auto;
}
.kanban-board .card .hover a {
    border: none;
    
    justify-content: center;
    align-items: center;
    font-size: 1.2rem;
    background: #252525;
    color: #fff;

    padding: 9px 8px 2px 8px;
    border-radius: 0px;
    display: inline-block;
}
.kanban-board .card .hover a:hover {
    background: #4c4c4c;

    padding: 10px 10px 5px 10px;
}
.kanban-board .card .hover a:first {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}
.kanban-board .card .hover a:last {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}
.kanban-board .card .hover a img {
    height: 25px;
    width: 25px;
    filter: grayscale(1);
    margin: 0;
    padding: 0;
}
.kanban-board .card .hover a:hover img {
    filter: grayscale(0);
}


#taskview-wrapper {
    background-color: rgba(0,0,0,.15);
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10001;
    margin: auto;
    position: fixed;
}

#taskview {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    position: fixed;
    width: 95%;
    height: 95%;
    background-color: white;
}

.worker-box {
    min-width: 25px;
    height: 23px;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    color: white;
    font-weight: bold;
    padding: 6px 2px 0px 2px;
    font-size: 14px;
    margin-right: 2px;
    border-radius: 6px;
}

#kanban-config-options input {
    margin-top: 2px;
}
#kanban-config input[type="button"] {
    margin-right: 10px;
}