h1 {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 2em !important;
  font-weight: bold !important;
  text-transform: uppercase !important;
}

/** tool tip question mark**/
.help-tip {
  /* position: absolute; */
  /* top: 18px; */
  /* right: 18px; */
  text-align: center;
  background-color: #bcdbea;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  font-size: 14px;
  line-height: 18px;
  cursor: default;
  display: inline-block;
}

.help-tip:before {
  content: "?";
  font-weight: bold;
  color: #fff;
}

.help-tip:hover p {
  display: block;
  transform-origin: 100% 0%;
  -webkit-animation: fadeIn 0.3s ease-in-out;
  animation: fadeIn 0.3s ease-in-out;
}

.help-tip p {
  /* The tooltip */
  display: none;
  text-align: left;
  background-color: #1E2021;
  padding: 20px;
  width: 300px;
  position: absolute;
  border-radius: 3px;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
  right: -4px;
  color: #FFF;
  font-size: 13px;
  line-height: 1.4;
}

.help-tip p:before {
  /* The pointer of the tooltip */
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-bottom-color: #1E2021;
  right: 10px;
  top: -12px;
}

.help-tip p:after {
  /* Prevents the tooltip from being hidden */
  width: 100%;
  height: 40px;
  content: "";
  position: absolute;
  top: -40px;
  left: 0;
}

/* CSS animation */
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
    transform: scale(0.6);
  }
  100% {
    opacity: 100%;
    transform: scale(1);
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 100%;
  }
}
/** Navigation bar **/
.navbar {
  margin-top: -20px;
}
.navbar .navbar-nav {
  width: 100%;
  text-align: center;
}
.navbar .navbar-nav li {
  float: none;
  display: inline-block;
}
.navbar .navbar-nav li h4 {
  padding-top: 5px;
}
.navbar img {
  max-height: 50px;
}
.navbar .nav-date {
  color: white;
}

/** project confirmation**/
#rep_chosen {
  margin-top: 5px;
}

tr.group,
tr.group:hover {
  background-color: #ddd !important;
}

.ui-dialog-titlebar {
  /*display: none;*/
}

.ui-draggable-handle {
  cursor: move;
}

.download_file {
  white-space: normal;
}

.fileinput_button {
  position: relative;
  overflow: hidden;
}

.fileupload {
  z-index: 2;
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  font-size: 200px;
  direction: ltr;
  cursor: pointer;
}

/** project list tables**/
.table_tab {
  margin-bottom: 1em;
  margin-left: 1%;
}

/** Logs **/
.logBoxStyle {
  margin-top: 3.5em;
  display: none;
  border: 1px dotted #bbb;
  text-align: left;
  padding: 10px;
}

/** contacts**/
/** Analyze**/
.vertical-text {
  font-size: 18px;
  display: inline-block;
  width: 2%;
  height: 0px;
  transform: rotate(270deg);
  margin-top: 90px;
}

.x-axis_label {
  width: 100%;
  text-align: center;
  font-size: 18px;
}

#sortElement {
  display: none;
}

.activeGrad {
  background-repeat: repeat-x;
  box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.5);
}
.activeGrad a {
  color: #fff !important;
}

.dropdown-menu a {
  color: #333 !important;
}

.activeManual {
  background-color: #EEEEEE;
  color: #333 !important;
}

#navbar {
  min-width: 22.5%;
}

.manual_body {
  width: 70%;
}

.tableTitle {
  font-size: 2em;
  float: left;
  display: inline-block;
  margin-bottom: 5px;
  margin-left: 5px;
  margin-right: 15px;
  line-height: 1em;
}

.right_menu {
  position: fixed;
  right: 6%;
  bottom: 40%;
  z-index: 10;
}

/** Container **/
.container {
  width: 98%;
}

#project-list_wrapper {
  margin-left: auto;
  margin-right: auto;
  width: 98%;
}
#project-list_wrapper #project-list {
  text-align: center;
}
#project-list_wrapper #project-list th {
  text-align: center;
}
#project-list_wrapper .days-left-current {
  background-color: yellow;
  padding: 3px;
}
#project-list_wrapper .days-left-future {
  background-color: green;
  color: white;
  padding: 3px;
}
#project-list_wrapper .days-left-past {
  background-color: red;
  color: white;
  padding: 3px;
}

/*** Progress-bar borders ***/
.progress {
  height: auto;
}
.progress select {
  color: black;
}

.progress-bar {
  padding-bottom: 5px;
}

.progress-bar-blank {
  background-color: #dddddd;
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  border-top: 1px solid #cccccc;
  color: black;
}

.progress-bar-primary {
  border-left: 1px solid #2d6a9f;
  border-right: 1px solid #2d6a9f;
  border-top: 1px solid #2d6a9f;
}

.progress-bar-success {
  border-left: 1px solid #357935;
  border-right: 1px solid #357935;
  border-top: 1px solid #357935;
}

.progress-bar-warning {
  border-left: 1px solid #d38312;
  border-right: 1px solid #d38312;
  border-top: 1px solid #d38312;
}

/** Project Create **/
#project-create h1 {
  text-align: left;
  margin-left: 0.75%;
}
#project-create h2 {
  margin-top: 0;
}

/** Scheduler **/
.task {
  color: #428bca;
}

.category-header-container {
  background-color: red;
  color: white !important;
  padding: 5px;
  margin-bottom: 5px;
  border-radius: 4px;
  display: block;
}

.bulk-scheduler-container {
    padding-left: 8px;
    margin: 3px;
    border: 1px solid #8888883d;
    border-radius: 12px;
    display: none;
    position: sticky;
    top: 100px;
    z-index: 90;
    background-color: white;
}

.bulk-scheduler-container .task {
  background-color: rgba(255, 255, 255, 0.1);
  margin: 5px 0;
  padding: 5px;
  border-radius: 3px;
  border: none !important;
  cursor: grab; /* Show move cursor to indicate draggable */
  transition: background-color 0.2s ease;
}

.bulk-scheduler-list {
  padding-left: 8px;
  min-height: 10px; /* Ensure list is visible even when empty */
}

.bulk-scheduler-container .task:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

/* Style for the placeholder during drag */
.task-placeholder {
  border: 1px dashed #cccccc;
  background-color: rgba(255, 255, 255, 0.3);
  margin: 5px 0;
  height: 30px;
  border-radius: 3px;
}

.bulk-scheduler-container .innerTextWrap {
  display: inline-block;
  vertical-align: middle;
}

.upcoming h5 {
  font-weight: bold;
}
.upcoming h5 span {
  padding-left: 5px;
}
.upcoming li {
  color: #428bca;
}
.upcoming li:hover {
  cursor: pointer;
}

#upcoming-tasks {
  padding: 0px;
  max-height: 226px;
  overflow-y: scroll;
}

.calendar .btn-group {
  width: 100%;
}
.calendar .btn-group .prev-day, .calendar .btn-group .next-day {
  width: 20%;
}
.calendar .btn-group .today {
  width: 60%;
}

.indv-task tbody .tr .td {
  padding-right: 5px;
}

#weekly-table thead {
  text-align: center;
}
#weekly-table .panel {
  font-size: 10px;
  color: white;
  padding-left: 5px;
  cursor: pointer;
}
#weekly-table .task-details {
  display: none;
  text-align: center;
}

#fountainG {
  position: relative;
  width: 150px;
  height: 25px;
  margin-left: auto;
  margin-right: auto;
}

.fountainG {
  position: absolute;
  top: 0;
  background-color: #333;
  width: 29px;
  height: 29px;
  -moz-animation-name: bounce_fountainG;
  -moz-animation-duration: 1.1s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-direction: normal;
  -moz-transform: scale(0.3);
  -moz-border-radius: 19px;
  -webkit-animation-name: bounce_fountainG;
  -webkit-animation-duration: 1.1s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-direction: normal;
  -webkit-transform: scale(0.3);
  -webkit-border-radius: 19px;
  -ms-animation-name: bounce_fountainG;
  -ms-animation-duration: 1.1s;
  -ms-animation-iteration-count: infinite;
  -ms-animation-direction: normal;
  -ms-transform: scale(0.3);
  -ms-border-radius: 19px;
  -o-animation-name: bounce_fountainG;
  -o-animation-duration: 1.1s;
  -o-animation-iteration-count: infinite;
  -o-animation-direction: normal;
  -o-transform: scale(0.3);
  -o-border-radius: 19px;
  animation-name: bounce_fountainG;
  animation-duration: 1.1s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  transform: scale(0.3);
  border-radius: 19px;
}

#fountainG_1 {
  left: 0;
  -moz-animation-delay: 0.44s;
  -webkit-animation-delay: 0.44s;
  -ms-animation-delay: 0.44s;
  -o-animation-delay: 0.44s;
  animation-delay: 0.44s;
}

#fountainG_2 {
  left: 30px;
  -moz-animation-delay: 0.55s;
  -webkit-animation-delay: 0.55s;
  -ms-animation-delay: 0.55s;
  -o-animation-delay: 0.55s;
  animation-delay: 0.55s;
}

#fountainG_3 {
  left: 60px;
  -moz-animation-delay: 0.66s;
  -webkit-animation-delay: 0.66s;
  -ms-animation-delay: 0.66s;
  -o-animation-delay: 0.66s;
  animation-delay: 0.66s;
}

#fountainG_4 {
  left: 90px;
  -moz-animation-delay: 0.77s;
  -webkit-animation-delay: 0.77s;
  -ms-animation-delay: 0.77s;
  -o-animation-delay: 0.77s;
  animation-delay: 0.77s;
}

#fountainG_5 {
  left: 120px;
  -moz-animation-delay: 0.88s;
  -webkit-animation-delay: 0.88s;
  -ms-animation-delay: 0.88s;
  -o-animation-delay: 0.88s;
  animation-delay: 0.88s;
}

#fountainG_6 {
  left: 150px;
  -moz-animation-delay: 0.99s;
  -webkit-animation-delay: 0.99s;
  -ms-animation-delay: 0.99s;
  -o-animation-delay: 0.99s;
  animation-delay: 0.99s;
}

#fountainG_7 {
  left: 180px;
  -moz-animation-delay: 1.1s;
  -webkit-animation-delay: 1.1s;
  -ms-animation-delay: 1.1s;
  -o-animation-delay: 1.1s;
  animation-delay: 1.1s;
}

#fountainG_8 {
  left: 210px;
  -moz-animation-delay: 1.21s;
  -webkit-animation-delay: 1.21s;
  -ms-animation-delay: 1.21s;
  -o-animation-delay: 1.21s;
  animation-delay: 1.21s;
}

@-moz-keyframes bounce_fountainG {
  0% {
    -moz-transform: scale(1);
    background-color: #333;
  }
  100% {
    -moz-transform: scale(0.3);
    background-color: #333;
  }
}
@-webkit-keyframes bounce_fountainG {
  0% {
    -webkit-transform: scale(1);
    background-color: #333;
  }
  100% {
    -webkit-transform: scale(0.3);
    background-color: #333;
  }
}
@-ms-keyframes bounce_fountainG {
  0% {
    -ms-transform: scale(1);
    background-color: #333;
  }
  100% {
    -ms-transform: scale(0.3);
    background-color: #333;
  }
}
@-o-keyframes bounce_fountainG {
  0% {
    -o-transform: scale(1);
    background-color: #333;
  }
  100% {
    -o-transform: scale(0.3);
    background-color: #333;
  }
}
@keyframes bounce_fountainG {
  0% {
    transform: scale(1);
    background-color: #333;
  }
  100% {
    transform: scale(0.3);
    background-color: #333;
  }
}


/* Loading State */

.loaderWrapper {
	width:100%; height: 100%;
	bottom:0; top:0; right:0; left:0; position: fixed;
	display:flex; align-items: center; justify-content: center;
	background: rgba(0,0,0,0.7);
  	z-index: 99999;
    opacity: 0;
    display: none;
}

.loaderWrapper .msgBox {
    width:100%; height: 100%;
	bottom:0; top:0; right:0; left:0; position: fixed;
	display:flex; align-items: center; justify-content: center;
    margin-top:-80px;
}


.loaderWrapper .msgBox img { display:none;
    position: absolute; top: 50%; left:50%; margin-left:-66px; margin-top:70px;
    height:90px; width:117px; opacity: 0; text-align: center; }

.loaderWrapper .msgBox p { color:white; font-size:24px; text-transform: uppercase; letter-spacing: 2px; font-style: italic; margin-bottom:60px; display:none; line-height: 27px; text-align: center; }

    .loaderWrapper .msgBox p span { font-size:14px; }

.pageLoader {
  margin: auto;
  font-size: 10px;
  position: relative;
  text-indent: -9999em;
  border-top: 1.1em solid rgba(255, 255, 255, 0.2);
  border-right: 1.1em solid rgba(255, 255, 255, 0.2);
  border-bottom: 1.1em solid rgba(255, 255, 255, 0.2);
  border-left: 1.1em solid #ffffff;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
}
.pageLoader,
.pageLoader:after {
  border-radius: 50%;
  width: 10em;
  height: 10em;
}

.quick_form { padding-top:20px; }
.quick_form .pageLoader,
.quick_form .pageLoader:after {
    width: 6em;
    height: 6em;
}

.quick_form .pageLoader {
    margin-top:50px; display:none;
    border-top: 1.1em solid rgba(0, 0, 0, 0.2);
    border-right: 1.1em solid rgba(0, 0, 0, 0.2);
    border-bottom: 1.1em solid rgba(0, 0, 0, 0.2);
    border-left: 1.1em solid #555;
}


@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}


/* MAIN PAGE PANEL
_______________________________________ */

.googleDocPanel.panel-heading { cursor:pointer; }

.googleDocPanel.panel-heading div button {
    background-color:transparent !important; border:0 !important;
    color:white !important; box-shadow: none !important; outline: none !important;
    padding:0px !important; background-image:none !important;
}

.googleDocPanel.collapsed button.panel-plus { display:inline-block !important; }
.googleDocPanel.collapsed button.panel-minus { display:none !important; }

.googleDocPanel:not(.collapsed) button.panel-plus { display:none !important; }
.googleDocPanel:not(.collapsed) button.panel-minus { display:inline-block !important; }

/* SESSION TIMEOUT
_______________________________________ */

#forcedloginForm { width:80%; margin:auto; padding-bottom:20px; }

#forcedloginForm .expireMsgBlock { padding:25px 0; font-size:14px; }

    #forcedloginForm .expireMsgBlock p span { color:black; font-weight:bold; font-size:15px; margin-top:14px;
    dispaly:inline-block; }

#forcedloginForm .timeRemainingCounter { color:red; padding:10px; text-align: center; font-size:33px; }

#forcedloginForm.finished .timeRemainingCounter { font-size:27px; padding:20px; }
#forcedloginForm.finished .expireMsgBlock { padding:0; }



/* Scheduler Update */

.todo-top-controls { display:flex; justify-content:space-between; flex-wrap:wrap; }

.addBlankNote[disabled] { opacity:0.4; pointer-events:none !important; }

.addBlankNote-reveal { flex-basis:100%; text-align: right; }
.addBlankNote-reveal .flex { display:flex; align-items: center; justify-content: flex-end; flex-wrap:wrap; }
.addBlankNote-reveal .flex .buttonControls,
.addBlankNote-reveal .flex textarea { flex-basis: 100%; }
.addBlankNote-reveal .flex textarea { padding-top:5px; width:310px; height:70px; }
.addBlankNote-reveal .flex > * { margin-left:7px; }
.addBlankNote-reveal label { display:block !important; }

.schedule_blank_form_cancel { margin-top:10px; }
.schedule_blank_form_submit { margin-top:0; }


/*.spacerBlankEvent .btn.swap-btn { display:none !important; }*/

/* User hide reveal */

table .rowReveal:hover .hideforever { display:block; }
table .rowReveal .hideforever { display:none; }

/* Task view Popup */

table.ics-taskpoptable td { padding:6px; }
table.ics-taskpoptable input {
  border-radius:4px;
  border:1px solid #939393;
  padding:4px;
}
table.ics-taskpoptable input:read-only {
  background:#dfdfdf;
}

.wc-cal-event .wc-title {
  padding:7px 8px 0 !important;
  overflow:hidden; max-height:78%;
}


/* Important toggle */

.importantToggle { margin-top:14px; text-align:left; }

.list-group-item.task .innerTextWrap { display: inline-block; }
.list-group-important .innerTextWrap { background:red; color:white; border-radius:10px; padding:2px 7px; padding-right:30px !important; }

.list-group-important .innerTextWrap span.duedate-today { color:yellow !important; }
.list-group-important .innerTextWrap span.duedate-pastdue { color:yellow !important; }
.list-group-important .innerTextWrap span.duedate-fine { color:yellow !important; }

/* IOS TOGGLE CSS */

/*

    IOS Stlye Toggle Stylings. Source https://www.abeautifulsite.net/bootstrap-4-switches

-----------------------------------------------------------------------------*/

.ios-switch {
  position: relative;
}

.ios-switch input {
  position: absolute;
  height: 1px;
  width: 1px;
  background: none;
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  overflow: hidden;
  padding: 0;
}

.ios-switch input+label {
  position: relative;
  min-width: calc(calc(2.375rem * .8) * 2);
  border-radius: calc(2.375rem * .8);
  height: calc(2.375rem * .8);
  line-height: calc(2.375rem * .8);
  display: inline-block;
  cursor: pointer;
  outline: none;
  user-select: none;
  vertical-align: middle;
  text-indent: calc(calc(calc(2.375rem * .8) * 2) + .5rem);
}

.ios-switch input+label::before,
.ios-switch input+label::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: calc(calc(2.375rem * .8) * 2);
  bottom: 0;
  display: block;
}

.ios-switch input+label::before {
  right: 0;
  background-color: #dee2e6;
  border-radius: calc(2.375rem * .8);
  transition: 0.2s all;
}

.ios-switch input+label::after {
  top: 2px;
  left: 2px;
  width: calc(calc(2.375rem * .8) - calc(2px * 2));
  height: calc(calc(2.375rem * .8) - calc(2px * 2));
  border-radius: 50%;
  background-color: white;
  transition: 0.2s all;
}

.ios-switch input:checked+label::before {
  background-color: rgba(91, 178, 89, 1);
}

.ios-switch input:checked+label::after {
  margin-left: calc(2.375rem * .8);
}

.ios-switch input:disabled+label {
  color: #868e96;
  cursor: not-allowed;
}

.ios-switch input:disabled+label::before {
  background-color: #e9ecef;
}

.ios-switch input:checked:disabled+label::before {
  background-color: #afe4b1;
}

.ios-switch.ios-switch-sm {
  font-size: 0.875rem;
}

.ios-switch.ios-switch-sm input+label {
  min-width: calc(calc(1.9375rem * .8) * 2);
  height: calc(1.9375rem * .8);
  line-height: calc(1.9375rem * .8);
  text-indent: calc(calc(calc(1.9375rem * .8) * 2) + .5rem);
}

.ios-switch.ios-switch-sm input+label::before {
  width: calc(calc(1.9375rem * .8) * 2);
}

.ios-switch.ios-switch-sm input+label::after {
  width: calc(calc(1.9375rem * .8) - calc(2px * 2));
  height: calc(calc(1.9375rem * .8) - calc(2px * 2));
}

.ios-switch.ios-switch-sm input:checked+label::after {
  margin-left: calc(1.9375rem * .8);
}

.ios-switch.ios-switch-lg {
  font-size: 1.25rem;
}

.ios-switch.ios-switch-lg input+label {
  min-width: calc(calc(3rem * .8) * 2);
  height: calc(3rem * .8);
  line-height: calc(3rem * .8);
  text-indent: calc(calc(calc(3rem * .8) * 2) + .5rem);
}

.ios-switch.ios-switch-lg input+label::before {
  width: calc(calc(3rem * .8) * 2);
}

.ios-switch.ios-switch-lg input+label::after {
  width: calc(calc(3rem * .8) - calc(2px * 2));
  height: calc(calc(3rem * .8) - calc(2px * 2));
}

.ios-switch.ios-switch-lg input:checked+label::after {
  margin-left: calc(3rem * .8);
}

.ios-switch.ios-switch-xlg {
  font-size: 1.25rem;
}

.ios-switch.ios-switch-xlg input+label {
  min-width: calc(calc(3.5rem * .8) * 2);
  height: calc(3.5rem * .8);
  line-height: calc(3.5rem * .8);
  text-indent: calc(calc(calc(3.5rem * .8) * 2) + .5rem);
}

.ios-switch.ios-switch-xlg input+label::before {
  width: calc(calc(3.5rem * .8) * 2);
}

.ios-switch.ios-switch-xlg input+label::after {
  width: calc(calc(3.5rem * .8) - calc(2px * 2));
  height: calc(calc(3.5rem * .8) - calc(2px * 2));
}

.ios-switch.ios-switch-xlg input:checked+label::after {
  margin-left: calc(3.5rem * .8);
}

.ios-switch+.ios-switch {
  margin-left: 1rem;
}

#iosSwitchLabel {
  display: inline-block;
  max-width: 100%;
  font-weight: 700;
  vertical-align: middle;
  margin-right: 5px;
}

.ios-switch.ios-switch-long input:checked+label::after {
  margin-left: calc(2.375rem * 2);
}

.ios-switch.ios-switch-long input+label::after {
  height: calc(2.375rem + 1px);
  width: calc(2.375rem + 1px);
  top: -4px;
}

.ios-switch.ios-switch-long input+label::before {
  width: calc(calc(2.375rem * .8) * 4);
  height: calc(calc(2.375rem * .8) * 1.5);
  top: -6px;
}



.ios-switch.ios-switch-long-compact input+label {
  min-width: calc(calc(2.375rem * .8) * 4);
}
.ios-switch.ios-switch-long-compact input:checked+label::after {
  margin-left: calc(2.375rem * 2);
}
.ios-switch.ios-switch-long-compact input+label::after {
  height: calc(1.975rem + 1px);
  width: calc(1.975rem + 1px);
  top: 0px;
}
.ios-switch.ios-switch-long-compact input+label::before {
  width: calc(calc(2.375rem * .8) * 4);
  height: calc(calc(2.375rem * .8) * 1.3);
  top: -2px;
}
.ios-switch.ios-switch-long-compact input+label {
  min-width: calc(calc(2.375rem * .8) * 4);
}



/*

  IOS Toggle With Text

--------------------------------------------------------------------------*/

.can-toggle {
  position: relative;
  width: 6.5em;
}

.can-toggle *,
.can-toggle *:before,
.can-toggle *:after {
  box-sizing: border-box;
}

.can-toggle input[type="checkbox"] {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}

.can-toggle input[type="checkbox"][disabled]~label {
  pointer-events: none;
}

.can-toggle input[type="checkbox"][disabled]~label .can-toggle__switch {
  opacity: 0.4;
}

.can-toggle input[type="checkbox"]:checked~label .can-toggle__switch:before {
  content: attr(data-unchecked);
  left: 10%;
}

.can-toggle input[type="checkbox"]:checked~label .can-toggle__switch:after {
  content: attr(data-checked);
}

.can-toggle label {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative;
  display: flex;
  align-items: center;
}

.can-toggle__switch:hover {
  cursor: pointer;
}

.can-toggle label .can-toggle__switch {
  position: relative;
}

.can-toggle label .can-toggle__switch:before {
  content: attr(data-checked);
  position: absolute;
  top: 0;
  text-transform: uppercase;
  text-align: center;
}

.can-toggle label .can-toggle__switch:after {
  content: attr(data-unchecked);
  position: absolute;
  z-index: 5;
  text-transform: uppercase;
  text-align: center;
  background: white;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.can-toggle label .can-toggle__switch:after {
  transition: -webkit-transform 0.2s linear;
  transition: transform 0.2s linear;
  transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  color: #777;
}

.can-toggle input[type="checkbox"]:checked~label .can-toggle__switch:after {
  -webkit-transform: translate3d(200%, 0, 0);
  transform: translate3d(200%, 0, 0);
}

.can-toggle.ios-toggle-text input[type="checkbox"][disabled]~label {
  color: #868e96;
}

.can-toggle.ios-toggle-text input[type="checkbox"]:checked~label .can-toggle__switch {
  background-color: rgba(91, 178, 89, 1);
}

.can-toggle.ios-toggle-text input[type="checkbox"]:checked~label .can-toggle__switch:after {
  color: rgba(91, 178, 89, 1);
}

.can-toggle.ios-toggle-text label .can-toggle__label-text {
  flex: 1;
}

.can-toggle.ios-toggle-text label .can-toggle__switch {
  transition: background-color 0.2s linear;
  background: #dee2e6;
}

.can-toggle.ios-toggle-text label .can-toggle__switch:before {
  color: rgba(255, 255, 255, 0.9);
}

.can-toggle.ios-toggle-text label .can-toggle__switch:after {
  transition: -webkit-transform 0.2s linear;
  transition: transform 0.2s linear;
  transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  color: #868e96;
}

.can-toggle.ios-toggle-text input[type="checkbox"]:checked~label .can-toggle__switch:after {
  -webkit-transform: translate3d(200%, 0, 0);
  transform: translate3d(200%, 0, 0);
}

.can-toggle.ios-toggle-text label .can-toggle__switch {
  height: calc(calc(4.6rem * .8) - calc(2px * 2));
  flex: 0 0 100%;
  border-radius: 50px;
}

.can-toggle.ios-toggle-text label .can-toggle__switch:before {
  left: 50%;
  font-size: 15px;
  line-height: calc(calc(4.7rem * .8) - calc(2px * 2));
  width: calc(calc(4.7rem * .8) - calc(2px * 2));
}

.can-toggle.ios-toggle-text label .can-toggle__switch:after {
  top: calc(calc(0.75rem * .8) - calc(2px * 2));
  left: calc(calc(0.75rem * .8) - calc(2px * 2));
  border-radius: 50%;
  width: calc(calc(4.1rem * .8) - calc(2px * 2));
  height: calc(calc(4.1rem * .8) - calc(2px * 2));
  line-height: calc(calc(4.1rem * .8) - calc(2px * 2));
  font-size: 15px;
}

@media (min-width: 3839px) and (max-width: 5759px) {
  .can-toggle.ios-toggle-text input[type="checkbox"]:checked~label .can-toggle__switch:after {
      -webkit-transform: translate3d(150%, 0, 0);
      transform: translate3d(150%, 0, 0);
      top: calc(calc(0.7rem * .8) - calc(2px * 2));
  }
}

@media (min-width: 5760px) {
  .can-toggle.ios-toggle-text input[type="checkbox"]:checked~label .can-toggle__switch:after {
      -webkit-transform: translate3d(90%, 0, 0);
      transform: translate3d(90%, 0, 0);
      top: calc(calc(0.5rem * .8) - calc(2px * 2));
  }
}
/* Override jQuery UI dialog overlay to be transparent and click-through */
.ui-widget-overlay,
.ui-widget-overlay.ui-front {
  background: transparent !important;
  opacity: 0 !important;
  pointer-events: none !important;
}


/* Zap-active styling scoped to calendar events: apply red background when marked important */
.wc-cal-event.zap-active {
  background-color: #FF4141 !important;
}
.wc-cal-event.zap-active .wc-title {
  background-color: #FF4141 !important;
}
.wc-cal-event .wc-title.zap-active {
  background-color: #FF4141 !important;
}

/* Flag-based background coloring (applied like zap): add class to both container and title */
.wc-cal-event.flag-try-today-active { background-color: #FFC107 !important; }
.wc-cal-event.flag-try-today-active .wc-title { background-color: #FFC107 !important; }
.wc-cal-event .wc-title.flag-try-today-active { background-color: #FFC107 !important; }

.wc-cal-event.flag-need-today-active { background-color: #F14A0DFF !important; }
.wc-cal-event.flag-need-today-active .wc-title { background-color: #F14A0DFF !important; }
.wc-cal-event .wc-title.flag-need-today-active { background-color: #F14A0DFF !important; }

.wc-cal-event.zap-active.flag-try-today-active { background-color: #a71acf !important; }
.wc-cal-event.zap-active.flag-try-today-active .wc-title { background-color: #a71acf !important; }
.wc-cal-event .wc-title.zap-active.flag-try-today-active { background-color: #a71acf !important; }

.wc-cal-event.zap-active.flag-need-today-active { background-color: #a71acf !important; }
.wc-cal-event.zap-active.flag-need-today-active .wc-title { background-color: #a71acf !important; }
.wc-cal-event .wc-title.zap-active.flag-need-today-active { background-color: #a71acf !important; }

/* Complete (status-based) background coloring; must override other color states */
.wc-cal-event.complete { background-color: #28a745 !important; }
.wc-cal-event.complete .wc-title { background-color: #28a745 !important; }
.wc-cal-event .wc-title.complete { background-color: #28a745 !important; }

/* Ensure complete wins over zap and flag combinations */
.wc-cal-event.complete.zap-active { background-color: #28a745 !important; }
.wc-cal-event.complete.flag-try-today-active { background-color: #28a745 !important; }
.wc-cal-event.complete.flag-need-today-active { background-color: #28a745 !important; }
.wc-cal-event.complete.zap-active .wc-title,
.wc-cal-event.complete.flag-try-today-active .wc-title,
.wc-cal-event.complete.flag-need-today-active .wc-title { background-color: #28a745 !important; }
.wc-cal-event .wc-title.complete.zap-active,
.wc-cal-event .wc-title.complete.flag-try-today-active,
.wc-cal-event .wc-title.complete.flag-need-today-active { background-color: #28a745 !important; }


/* Complete state should also color the time bar green */
.wc-cal-event.complete .wc-time {
  background-color: #28a745 !important;
  height: 100%; !important;
}





/* Slightly widen Task View modal */
@media (min-width: 768px) {
  #taskModal .modal-dialog {
    width: 625px; /* default ~600px in Bootstrap 3; bump slightly for better content fit */
  }
}
