* {
  box-sizing: border-box;
}

html {
  background-color: var(--color-background);
}

.theme-default {
  --color-primary: black;
  --color-primary-variant: rgb(48, 48, 48);
  --color-background: white;
  --color-background-variant: #f5f5f5;
  --color-on-primary: white;
  --color-side: #fbfbfb;
  --color-text-main: black;
  --color-text-secondary: gray;
  --color-search-bar: black;
  --color-hr: #ccc;
  --color-on-hover-type1: rgb(233, 233, 233);
  --color-on-hover-type2: rgb(231, 229, 229);
  --color-btn-type1: #f5f5f5;
  --color-btn-type1-hover: #999;
  --color-btn-type1-text: black;
  --color-btn-type2: rgb(48, 48, 48);
  --color-btn-type2-hover: black;
  --color-btn-type2-text: white;
  --box-shadow-color: rgba(0, 0, 0, 0.2);
  --color-border: gray;
  --color-today-cell: black;
}

.theme-dark {
  --color-primary: #2e2e2e;
  --color-primary-variant: black;
  --color-background: black;
  --color-background-variant: #2e2e2e;
  --color-on-primary: white;
  --color-side: #454545;
  --color-text-main: white;
  --color-text-secondary: rgb(202, 202, 202);
  --color-search-bar: white;
  --color-hr: rgb(223, 223, 223);
  --color-on-hover-type1: rgb(140, 140, 140);
  --color-on-hover-type2: rgb(158, 158, 158);
  --color-btn-type1: #3e3e3e;
  --color-btn-type1-hover: rgb(55, 55, 55);
  --color-btn-type1-text: white;
  --color-btn-type2: white;
  --color-btn-type2-hover: rgb(230, 230, 230);
  --color-btn-type2-text: black;
  --box-shadow-color: rgba(255, 255, 255, 0.2);
  --color-border: rgb(165, 164, 164);
  --color-today-cell: #2e2e2e;
}

.theme-light {
  --color-primary: #fbfbfb;
  --color-primary-variant: white;
  --color-background: white;
  --color-background-variant: white;
  --color-on-primary: black;
  --color-side: #f5f5f5;
  --color-text-main: black;
  --color-text-secondary: gray;
  --color-search-bar: black;
  --color-hr: #ccc;
  --color-on-hover-type1: rgb(233, 233, 233);
  --color-on-hover-type2: rgb(231, 229, 229);
  --color-btn-type1: #f5f5f5;
  --color-btn-type1-hover: #999;
  --color-btn-type1-text: black;
  --color-btn-type2: rgb(48, 48, 48);
  --color-btn-type2-hover: black;
  --color-btn-type2-text: white;
  --box-shadow-color: rgba(0, 0, 0, 0.2);
  --color-border: gray;
  --color-today-cell: #e7e7e7;
}

::placeholder {
  color: var(--color-text-secondary);
  opacity: 1;
}

body {
  margin: 0;
  padding: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid var(--color-hr);
  margin: 0em 0;
  padding: 0;
}

.navbar {
  display: flex;
  position: fixed;
  justify-content: space-between;
  align-items: center;
  background-color: var(--color-primary);
  color: var(--color-on-primary);
  width: 100%;
  left:0;
  top:0;
  right:0;
  /* min-height: 45px; */
}

.nav-left-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  width: 25%;
  /* margin-left: 0.5rem; */
  /* background-color: red; */
}

.search-container {
  width: 55%;
  padding: 0.3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--color-side);
  border-radius: 2px;
}

input.search-bar:focus {
  outline-width: 0;
}

.search-bar {
  width: 90%;
  border-style: none;
  margin-left: 10px;
  color: var(--color-search-bar);
  background-color: var(--color-side);
}

.search-icon {
  color: var(--color-search-bar);
}

.today-icon {
  width: 8%;
  min-width: 20px;
  display: flex;
  justify-content: flex-start;
  font-size: 1.3rem;
  cursor: pointer;
  /* margin-right: auto; */
  /* background-color: aqua; */
}

.brand-title {
  /* background-color: aqua; */
  width: 21%;
  min-width: 65px;
  font-size: 1.5rem;
  margin: 0.5rem 0;
  margin-left: 1rem;
}

.nav-right-container {
  /* background-color: aquamarine; */
  height: 100%;
  margin-right: 1rem;
}

.palette-icon-container {
  font-size: 1.5rem;
  cursor: pointer;
}

.cross-icon-container {
  align-self: flex-start;
}

.cross-icon {
  cursor: pointer;
}

.theme-dropdown-container {
  padding: 5px;
  width: 300px;
  display: none;
  position: absolute;
  right: 0;
  top: 45px;
  color: var(--color-text-main);
  background-color: var(--color-background);
  justify-content: space-around;
  flex-wrap: wrap;
  min-width: 160px;
  border: 1px solid var(--color-border);
  /* box-shadow: 0px 8px 16px 0px var(--box-shadow-color); */
  z-index: 1;
  border-radius: 5px;
}

.theme-thumbnail {
  display: flex;
  flex-direction: column;
  height: 50px;
  width: 70px;
  border: 1px solid var(--color-border);
  border-radius: 5px;
  padding: 0;
  cursor: pointer;
}

.theme-col-box {
  padding: 2px 5px;
  font-size: 0.8rem;
  font-weight: light;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  height: 40%;
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.bg-col-box {
  position: relative;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  height: 60%;
  width: 100%;
}

.bg-col-box > i {
  position: absolute;
  bottom: 2px;
  right: 2px;
}

#theme-default > .theme-col-box {
  background-color: black;
  color: white;
}

#theme-default > .bg-col-box {
  background-color: white;
  color: black;
}

#theme-light > .theme-col-box {
  background-color: #f0f0f0;
  color: black;
}

#theme-light > .bg-col-box {
  background-color: white;
  color: black;
}

#theme-dark > .theme-col-box {
  background-color: #2e2e2e;
  color: white;
}

#theme-dark > .bg-col-box {
  background-color: black;
  color: white;
}

/* .nav-right-container:hover .dropdown-content {
  display: block;
} */

.main-container {
  margin-top: 44px;
  display: flex;
  width: 100%;
  height: 100%;
}

.side {
  width: 25%;
  height: 92.6vh;
  display: flex;
  justify-content: center;
  padding-left: 0.5rem;
  background-color: var(--color-side);
}

.content {
  width: 75%;
  height: 92.6vh;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  padding-top: 1.5rem;
  overflow: auto;
}

.calendar-container {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.calendar-header {
  display: flex;
  margin: 0 auto;
  margin-top: 20vh;
  align-items: center;
  justify-content: space-between;
  width: 60%;
  padding: 0 0;
  /* background-color: aquamarine; */
  font-size: 1.2rem;
  color: var(--color-text-main);
}

.month-switch {
  font-weight: bolder;
  cursor: pointer;
  padding: 5px;
  color: var(--color-text-main);
}

.month-switch:hover {
  background-color: var(--color-on-hover-type1);
  border-radius: 100px;
  padding: 5px;
}

.month-year-name {
  font-weight: lighter;
}

.calendar-dow {
  width: 60%;
  margin: 0 auto;
  margin-bottom: 1vh;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.8rem;
  font-weight: 100;
  color: var(--color-text-secondary);
}

.calendar-cell {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
}

.date-cell {
  cursor: pointer;
  color: var(--color-text-main);
}

.date-cell:hover {
  background-color: var(--color-on-hover-type2);
  border-radius: 50%;
}

.today-cell {
  color: var(--color-on-primary);
  background-color: var(--color-today-cell);
  border-radius: 50%;
  font-weight: 100;
}

/* .select-cell{
  background-color: gray;
  border-radius: 50%;
} */

.calendar-body {
  width: 60%;
  height: 30vh;
  margin: 0 auto;
  /* background-color: bisque; */
  display: flex;
  flex-direction: column;
  padding: 0;
}

.calendar-row {
  /* background-color: aqua; */
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1rem;
}

.invisible {
  visibility: hidden;
}

.disable {
  opacity: 0.2;
  pointer-events: none;
}

.todo-container {
  /* background-color: aqua; */
  width: 70%;
  display: flex;
  flex-direction: column;
}

.todo-switch {
  width: 1.5rem;
  height: 1.5rem;
  position: fixed;
  top: 50%;
  font-size: 1rem;
  margin: 0;
  font-weight: bolder;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--color-text-main);
}

#prev-todo {
  left: 30%;
}

#next-todo {
  right: 6.5%;
}

.todo-switch:hover {
  background-color: var(--color-on-hover-type1);
  border-radius: 50%;
}

.entry-header {
  display: flex;
  width: 100%;
  align-items: flex-end;
  justify-content: flex-start;
  margin: 0.5rem 0;
  color: var(--color-text-main);
  /* background-color: blanchedalmond; */
}

div.entry-header > h3 {
  font-weight: bolder;
  margin: 0;
  padding: 0;
}
div.entry-header > h5 {
  font-weight: normal;
  margin: 0;
  padding-bottom: 1.5px;
}

.done-container {
  margin-top: 1.5rem;
  width: 100%;
  /* background-color:aqua; */
}

div.done-container > h4 {
  margin: 0;
  margin-bottom: 0.5rem;
  color: var(--color-text-main);
}

/* div.done-container > hr {
    margin-bottom: 0rem;
} */

.pending-container {
  margin-top: 1rem;
  width: 100%;
  /* background-color: red; */
}

div.pending-container > h4 {
  margin: 0;
  margin-bottom: 0.5rem;
  color: var(--color-text-main);
}

/* div.pending-container > hr {
  margin-bottom: 0.0rem;
} */

.todo-entry {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  margin: 0.5rem 0;
}

.todo-entry:hover .todo-crud {
  visibility: visible;
}

.custom-check {
  height: 18px;
  width: 18px;
  border-style: solid;
  border-radius: 50%;
  border-width: 1.5px;
  border-color: var(--color-border);
  color: var(--color-text-main);
  display: inline-block;
  font-size: 15px;
}

.todo-text {
  /* background-color: aqua; */
  display: flex;
  flex-direction: column;
  width: 85%;
}

.title {
  font-weight: bold;
  font-size: 1rem;
  margin-bottom: 0.2rem;
  color: var(--color-text-main);
}

.description {
  font-weight: 100;
  font-size: 0.8rem;
  color: var(--color-text-secondary);
}

.todo-crud {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 7%;
  font-size: 12px;
  visibility: hidden;
  color: var(--color-text-main);
}

.add-todo-entry {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 14%;
  color: var(--color-text-secondary);
  margin-top: 0.3rem;
  font-weight: 100;
  font-size: 0.9rem;
  cursor: pointer;
  /* background-color: aqua; */
}

.add-icon {
  width: 1.3rem;
  height: 1.3rem;
  /* background-color: aliceblue; */
  font-size: 1.5rem;
  color: var(--color-text-main);
  font-weight: bolder;
  display: flex;
  align-items: center;
  justify-content: center;
}

.add-todo-entry:hover {
  color: var(--color-text-main);
}

.add-todo-entry:hover .add-icon {
  color: var(--color-on-primary);
  background-color: var(--color-primary);
  border-radius: 50%;
}

.input-todo-entry {
  display: none;
  flex-direction: column;
  width: 100%;
  margin-top: 0.3rem;
}

.text-entry-container {
  display: flex;
  flex-direction: column;
  width: 100%;
  border: 1px solid var(--color-text-main);
  border-radius: 10px;
  padding: 5px;
}

.text-entry-container textarea {
  width: 100%;
  border: none;
  outline: none;
  resize: none;
  color: var(--color-text-main);
  background-color: var(--color-background);
}

.input-todo-title {
  width: 100%;
}

.input-todo-description {
  width: 100%;
}

.add-cancel-btns {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 0.3rem 0;
}

.add-cancel-btns > span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10%;
  padding: 5px;
  border-radius: 5px;
  cursor: pointer;
}

#cancel-btn {
  background-color: var(--color-btn-type1);
  color: var(--color-btn-type1-text);
  margin-right: 7px;
}

#add-btn {
  background-color: var(--color-btn-type2);
  color: var(--color-btn-type2-text);
}

#cancel-btn:hover {
  background-color: var(--color-btn-type1-hover);
}

#add-btn:hover {
  background-color: var(--color-btn-type2-hover);
}

.edit-todo-entry {
  display: none;
  flex-direction: column;
  width: 100%;
  margin: 0.5rem 0;
}

.edit-entry-container {
  display: flex;
  flex-direction: column;
  width: 100%;
  border: 1px solid var(--color-text-main);
  border-radius: 10px;
  padding: 5px;
}

.edit-entry-container textarea {
  width: 100%;
  border: none;
  outline: none;
  resize: none;
  color: var(--color-text-main);
  background-color: var(--color-background);
}

.edit-todo-title {
  width: 100%;
}

.edit-todo-description {
  width: 100%;
}

.edit-title-text {
}

.edit-description-text {
}

.save-cancel-btns {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 0rem 0;
  margin-top: 0.2rem;
}

.save-cancel-btns > span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10%;
  padding: 5px;
  border-radius: 5px;
  cursor: pointer;
}

.edit-cancel-btn {
  background-color: var(--color-btn-type1);
  color: var(--color-btn-type1-text);
  margin-right: 7px;
}

.edit-save-btn {
  background-color: var(--color-btn-type2);
  color: var(--color-btn-type2-text);
}

.edit-cancel-btn:hover {
  background-color: var(--color-btn-type1-hover);
}

.edit-save-btn:hover {
  background-color: var(--color-btn-type2-hover);
}
