



/* sidebar styles */
.sidebar {
    position: fixed;
    left: 0;
    top: 70px;
    background-color: white;
    width: 170px;
    height: 100%;
    padding: 30px 10px 30px 10px;
    box-sizing: border-box;
    z-index: 6;
    box-shadow: 0 0 5px 5px rgba(0,0,0,0.04);
}
.sidebar::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 1px;
    background-color: #F1F3F6;
    
    
}

.sidebar-header {
    padding: 0;
    margin: 0;
    margin-bottom: 15px;
    font-size: 15px;
    font-weight: normal;
}

.add-task-sb {
    cursor: pointer;
    border: none;
    background-color: var(--theme-color-main);
    border-radius: 9px;
    height: 33px;
    width: 100%;
    font-size: 14px;
    font-weight: 500;
    color: white;
    margin-bottom: 10px;
    
    transition: 0.4s;
}
.add-task-sb:hover {
    background-color: color-mix(in oklab, var(--theme-color-main), black 20%);
}

.sidebar-choices {
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
}
.sidebar-choices li {
    position: relative;
    border-radius: 5px;
    margin: 0 0 10px 0;
    cursor: pointer;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    font-size: 14px;
    
}


.sidebar-choices a {
    color: black;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 100%;
    width: 100%;
}
.sidebar-choices li:hover {
    background-color: rgb(240,240,240);
}

.sidebar-choices li.selected {
    background-color: var(--theme-color-light);
    color: var(--theme-color-main);
    background-color: color-mix(in srgb, var(--theme-color-main) 10%, transparent);
}
.sidebar-choices li.selected a {
    color: var(--theme-color-main) !important;
}
.sidebar-choices li * {
    cursor: pointer;
}
.sidebar-choices img {
    margin-right: 10px;
    margin-left: 10px;
}
.sidebar-choices li.selected img {
    filter: invert(31%) sepia(91%) saturate(2282%) hue-rotate(210deg) brightness(100%) contrast(103%) !important;
}

.sidebar-choices .img {
    margin-right: 10px;
    margin-left: 10px;
    width: 14px;
    height: 14px;
    display: inline-block;
    
    background-color: black;
}
#sidebar-img-boards {
    -webkit-mask: url("/boardsIcon.svg") center / contain no-repeat;
    mask: url("/boardsIcon.svg") center / contain no-repeat;
}
#sidebar-img-upcoming {
    -webkit-mask: url("/stopwatch.svg") center / contain no-repeat;
    mask: url("/stopwatch.svg") center / contain no-repeat;
}
#sidebar-img-tags {
    -webkit-mask: url("/tagsIcon.svg") center / contain no-repeat;
    mask: url("/tagsIcon.svg") center / contain no-repeat;
}
#sidebar-img-settings {
    -webkit-mask: url("/gear.svg") center / contain no-repeat;
    mask: url("/gear.svg") center / contain no-repeat;
}
#sidebar-img-account {
    -webkit-mask: url("/accountIcon.svg") center / contain no-repeat;
    mask: url("/accountIcon.svg") center / contain no-repeat;
}
.sidebar-choices li.selected .img {
    background-color: var(--theme-color-main) !important;
}


/* alert icon */
.upcoming-task-due-alert-icon {
    display: flex;
    display: none;
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    align-items: center;
    justify-content: center;
}
#upcoming-task-due-alert-icon > img {
    width: 14px;
    filter: invert(12%) sepia(100%) saturate(7259%) hue-rotate(358deg) brightness(90%) contrast(125%) !important;
}

.task-checkbox-wrapper {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    padding: 0 7px 0 10px;
    display: flex;
    align-items: center;
}
.task-checkbox {
    width: 20px;
    height: 20px;
    border-radius: 10px;
    background: none;
    border: none;
    outline: 1px solid #D7D7D7;
    cursor: pointer;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    
    transition: 0.2s;
}
.task-checkbox:hover {
    background-color: rgb(250,250,250);
    outline: 2px solid var(--theme-color-main) !important;
    box-shadow: 0 0 5px 5px color-mix(in srgb, var(--theme-color-main) 20%, transparent) !important;
}
.task-checkbox[checked="true"] {
    background-color: var(--theme-color-main) !important;
    
    outline: none !important;
}
.task-checkbox[checked="true"] img {
    display: block;
}
.task-checkbox img {
    display: none;
    pointer-events: none;
    width: 14px;
    filter: invert(99%) sepia(1%) saturate(0%) hue-rotate(149deg) brightness(109%) contrast(101%);
    transform: translateX(-0.5px);
}
.task-checkbox:focus-visible {
    border: 2px solid black;
    outline: 2px solid white;
    outline-offset: 2px;
    box-sizing: border-box;
}


/* activity bubbles */
#activity-bubbles-box {
    position: absolute;
    right: 20px;
    bottom: 20px;
}
.activity-bubble {
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center;
    min-width: 50px;
    max-width: 300px;
    padding: 7px 13px 7px 13px;
    font-size: 14px;
    border-radius: 10px;
    background-color: rgb(35,35,35);
    margin-bottom: 10px;
    
    color: rgb(220,220,220);
    opacity: 1;
    
    transition: opacity 1s 2s; /* prop duration delay */
}
.activity-bubble[animation="true"] {
    opacity: 0;
}

/* modal */
/* edit task modal */
.edit-modal {
    width: min(440px, 95%);
} 

.modal-footer-button.action-button {
    background-color: var(--theme-color-main);
    color: white;
    outline: 1px solid color-mix(in oklab, var(--theme-color-main), black 20%);
    
    transition: 0.4s;
}
.modal-footer-button.action-button:hover {
    background-color: color-mix(in oklab, var(--theme-color-main), black 20%);
}

.modal-footer-button.action-button.complete-button {
    background-color: var(--theme-color-main);
    outline: 1px solid color-mix(in oklab, var(--theme-color-main), black 20%);
}

.modal-label {
    color: black;
    font-size: 16px;
    margin-bottom: 7px;
    display: inline-block;
}

.modal-input {
    display: block;
    font-size: 14px;
    border-radius: 10px;
    outline: 1px solid #D7D7D7;
    background: none;
    height: 35px;
    box-sizing: border-box;
    border: none;
    margin-bottom: 10px;
    padding-left: 10px;
    width: 100%;
}

.complete-icon {
    background-image: linear-gradient(to right, #009244 , #00CC22);
    background-image: linear-gradient(to right, var(--theme-color-main), color-mix(in oklab, var(--theme-color-main), white 20%) );
}
.complete-icon img {
    filter: invert(100%) sepia(6%) saturate(758%) hue-rotate(191deg) brightness(118%) contrast(100%);
}
#task-complete-name {
    display: block;
    margin: 10px 0 10px 0;
    font-weight: bold;
    color: black;
}

/* task location button selection */
/* task location button selection */
/* task location button selection */
.selected-location-dd-toggle {
    position: relative;
    display: flex;
    justify-content: start;
    align-items: center;
    color: black !important;
    
    font-size: 14px;
    border-radius: 10px;
    outline: 1px solid #D7D7D7;
    background: none;
    height: 35px;
    box-sizing: border-box;
    border: none;
    margin-bottom: 10px;
    padding-left: 10px;
    width: 100%;
}

.dd-arrow-wrapper {
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    align-items: center;
    height: 100%;
    margin-right: 10px;
}

#task-location-input[opened="true"] .dd-arrow-wrapper img {
    transform: rotate(180deg);
}

.dd-arrow-wrapper img {
    width: 15px;
    filter: invert(99%) sepia(0%) saturate(3193%) hue-rotate(224deg) brightness(111%) contrast(62%);
    
    transition: 0.2s;
}

#task-location-input {
    display: block;
    position: relative;
}

.task-location-dd {
    display: none;
    position: absolute;
    z-index: 15;
    
    top: calc(100% + 10px);
    left: 0;
    background-color: white;
    box-shadow: 0 4px 20px 0 rgba(0,0,0,0.25);
    outline: 1px solid #D7D7D7;
    border-radius: 10px;
    
    width: 100%;
}

#locations-box-wrapper {
    overflow: hidden;
    border-radius: 0 0 10px 10px;
}
#locations-box {
    max-height: 200px;
    overflow: auto;
}

.modal-content.overflow {
    overflow: visible;
}

.task-location-dd-header {
    display: flex;
    align-items: center;
    padding-left: 10px;
    height: 29px;
    background-color: #DBDBDB;
    color: black;
    font-size: 14px;
    border-radius: 10px 10px 0 0;
}

.task-location-header-text {
    font-size: 14px;
    margin: 0;
    padding: 0;
    margin-right: 15px;
}

.task-loc-link {
    color: #1F71FF;
    text-decoration: none;
    font-size: 14px;
    margin: 0;
    padding: 0;
    vertical-align: middle;
    background: none;
    border: none;
    cursor: pointer;
}

.location-selection {
    height: 36px;
    width: 100%;
    cursor: pointer;
    display: flex;
    position: relative;
}
.location-selection:not(:last-of-type)::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #D7D7D7;
}
.select-location-button {
    background: none;
    border: none;
    display: flex;
    justify-content: start;
    align-items: center;
    padding-left: 10px;
    box-sizing: border-box;
    font-size: 14px;
    white-space: nowrap;
    width: 100%;
    cursor: pointer;
    color: black;
    
}
.select-location-button span {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
.location-right-arrow {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 10px;
    padding-left: 10px;
    background: none;
    border: none;
    cursor: pointer;
}
.location-right-arrow img {
    filter: invert(96%) sepia(0%) saturate(469%) hue-rotate(137deg) brightness(88%) contrast(91%);
}



.location-selection:hover {
    background-color: #F2F2F2;
}

.location-selection:last-of-type {
    border-radius: 0 0 10px 10px;
}

/* color picker input */
/* color picker input */
/* color picker input */
.color-selection-input {
    display: block;
    width: 100%;
    font-size: 0;
    height: 35px;
    margin-bottom: 10px;
}
.input-box {
    border-radius: 10px;
    outline: 1px solid #D7D7D7;
    width: calc(80% - 10px);
    height: 100%;
    font-size: 0;
    display: inline-block;
    vertical-align: center;
}
.color-text-input {
    height: 100%;
    padding-left: 10px;
    box-sizing: border-box;
    width: 80%;
    font-size: 15px;
    border-radius: 10px 0 0 10px;
    border: none;
}
.color-type {
    
    outline: 1px solid #D7D7D7;
    height: 100%;
    box-sizing: border-box;
    background-color: #E7E7E7;
    color: #868686;
    width: 20%;
    border: none;
    font-size: 15px;
    border-radius: 0 10px 10px 0;
    padding-left: 15px;
    -moz-appearance: none;
    /* for Chrome */
    -webkit-appearance: none;
}

.color-picker {
    display: inline-block;
    box-sizing: border-box;
    width: 20%;
    margin-left: 10px;
    height: 100%;
    vertical-align: top;
    border: none;
    outline: 1px solid #D7D7D7;
    border-radius: 5px;
    
} 

/* task tags input */
/* task tags input */
/* task tags input */
#task-tags-input {
    margin-bottom: 10px;
    position: relative;
}

#task-tags-input[opened="true"] .task-tags-dd-wrapper {
    display: block;
}
#task-tags-input[opened="true"] .dd-arrow-wrapper img {
    transform: rotate(180deg);
}


.task-tags-dd-toggle {
    color: black !important;
    height: 35px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-left: 10px;
    box-sizing: border-box;
    background-color: white;
    border: none;
    border-radius: 10px;
    outline: 1px solid #D7D7D7;
}

.task-tags-dd-wrapper {
    display: none;
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    width: 100%;
    border-radius: 10px;
    background-color: white;
    outline: 1px solid #D7D7D7;
    box-shadow: 0 4px 20px 0 rgba(0,0,0,0.25);
    z-index: 10;

    overflow: hidden;
}
.task-tags-dd {
    max-height: 200px;
    overflow: auto;
}

.task-tag-option-box {
    position: relative;
    height: 36px;
    width: 100%;
    background: none;
    border: none;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    
    cursor: pointer;
}

.task-tag-option-box:not(:last-of-type)::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #D7D7D7;
}
/*
.task-tag-option-box:first-of-type {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.task-tag-option-box:last-of-type {
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}
*/

.task-tag-option-box:hover {
    background-color: #F2F2F2;
}
/* default tag style, colors will be overwritten on load */
.task-tag-option-icon,
.selected-tag {
    display: flex;
    padding: 0 7px 0 7px;
    background-color: #3E9CFF;
    box-shadow: 0 0 15px 0 rgba(62,156,255,0.25);
    color: white;
    height: 25px;
    border-radius: 5px;
    justify-content: center;
    align-items: center;
    font-size: 14px;
} 
.selected-tag {
    margin-right: 3px;
    display: inline-flex;
}

.task-tag-option-cb-wrapper {
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    justify-content: center;
    align-items: center;
    padding-right: 10px;
}
.task-tag-option-cb {
    border-radius: 5px;
    width: 20px;
    height: 20px;
    outline: 1px solid #A6A6A6;
    display: flex;
    align-items: center;
    justify-content: center;
    /* ...for selected tag
    outline: 1px solid #3E9CFF;
    background-color: ${getAlteredColor(+25)};
    */
}
.task-tag-option-cb svg {
    display: none;
}
.task-tag-option-box[selected="true"] .task-tag-option-cb svg {
    display: inline;
}

/* due date modal selectors */
/* due date modal selectors */
/* due date modal selectors */
#date-selector,
#time-selector {
    border-radius: 10px;
    width: 100%;
    height: 35px;
    display: block;
    position: relative;
    font-size: 0;
    margin-bottom: 10px;
}
.date-selector-dd-wrapper {
    position: relative;
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
    width: 33.33%;
    height: 100%;
    font-size: 16px;
    color: black;
    background-color: #F9F9F9;
    outline: 1px solid #D7D7D7;
}
.date-selector-dd-wrapper:first-of-type {
    border-radius: 10px 0 0 10px;
}
.date-selector-dd-wrapper:last-of-type {
    border-radius: 0 10px 10px 0;
}
.date-selector-dd-wrapper select {
    padding-left: 10px;
    width: 100%;
    height: 100%;
    background: none;
    border: none;
    color: black;
    appearance: none;
    /* Vendor prefixes for older browser compatibility */
    -webkit-appearance: none; /* Chrome, Safari, Opera */
    -moz-appearance: none;    /* Firefox */
}
.date-selector-dd-wrapper .img-wrapper {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    padding-right: 10px;
    display: flex;
    align-items: center;
}
.date-selector-dd-wrapper .img-wrapper img {
    width: 12px;
    filter: invert(83%) sepia(0%) saturate(2%) hue-rotate(40deg) brightness(104%) contrast(84%);
}

#time-selector .date-selector-dd-wrapper:nth-of-type(3) {
    width: calc(33.33% - 14px) !important;
}
.colon-seperator {
    outline: 1px solid #D7D7D7;
    background-color: #ECECEC;
    width: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    vertical-align: top;
    color: black;
    font-size: 16px;
}

.due-date-checkbox {
    margin-left: 4px;
    width: 20px;
    height: 20px;
    border-radius: 5px;
    outline: 1px solid #A6A6A6;
    background: none;
    border: none;
    cursor: pointer;                
    display: inline-flex;
    vertical-align: middle;
    justify-content: center;
    align-items: center;
    position: relative;
}
.due-date-checkbox[checked="true"] {
    background-color: #F1F1F1;
}
    
.due-date-checkbox img {
    display: none;
    position: absolute;
    width: 14px;
    filter: invert(49%) sepia(1%) saturate(0%) hue-rotate(164deg) brightness(99%) contrast(83%);
}
.due-date-checkbox[checked="true"] img {
    display: block;
}

#date-selection-content,
#time-selector {
    display: none;
}
#due-date-checkbox[checked="true"] + #date-selection-content {
    display: block;
}
#due-time-checkbox[checked="true"] + #time-selector {
    display: block;
}

/* dark mode stuff */
body.dark-mode .header {
    background-color: #111111 !important;
    color: white !important;
}
body.dark-mode .header::after,
body.dark-mode .sidebar::after {
    display: none;
}
body.dark-mode .logo-wrapper img {
    content: url(darkModeLogo.png);
}
body.dark-mode .contact-header-link {
    color: white;
}
body.dark-mode .wii-button {
    color: white;
}
body.dark-mode .content {
    background-color: #292929;
}
body.dark-mode .sidebar {
    background-color: #111111;
    outline: none;
}
body.dark-mode .sidebar-header {
    color: white;
}
body.dark-mode .sidebar-choices a {
    color: white;
}
body.dark-mode .sidebar-choices img {
    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(95deg) brightness(107%) contrast(106%);
}
body.dark-mode .sidebar-choices .img {
    background-color: white;
}
body.dark-mode .sidebar-choices li {
    color: white;
}
body.dark-mode .sidebar-choices .selected {
    background-color: color-mix(in srgb, var(--theme-color-main) 20%, transparent);
}
body.dark-mode .sidebar-choices li:not(.selected):hover {
    background-color: #1E1E1E;
}

body.dark-mode * {
    scrollbar-color: grey black;
}

body.dark-mode .header-link-mobile {
    color: white;
}
body.dark-mode #header-slider-menu {
    background-color: #111111;
}
body.dark-mode .activity-bubble {
    background-color: rgb(20,20,20);
}






