:root {
  --gray: rgb(194, 193, 193);
  --red: #ffe2dd;
  --yellow: #fdecc8;
  --green: #dbeddb;
  --gray-hover: rgb(248, 248, 248);
  --icon-color: #bbbbbb;
}

body {
  width: max(420px, 100vw);
  display: flex;
  flex-direction: column;
  font-family: sans-serif;
}

/* nav styles start here */
nav {
  /* outline: 1px solid; */
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 10px 12px;
  gap: 1em;
  width: 100%;
  /* background-color: rgb(249, 211, 211); */
}

nav .project-title {
  height: 100%;
  font-size: 15px;
  margin-bottom: 0;
}

.toggle-btn {
  height: 24px;
  width: 24px;
  /* outline:1px solid; */
}

nav .toggle-btn > .faaa + .faaa,
nav .toggle-btn:hover > .faaa {
  display: none;
}

.toggle-btn:hover > .faaa + .faaa {
  display: inherit;
}
/* nav styles end here */

/* sidebar styles start here */
#sidebar ul {
  margin-left: 0;
  padding-left: 0;
}

#sidebar li {
  display: flex;
  justify-content: space-between;
  padding: 5px;
}

#sidebar li:hover {
  background-color: var(--gray-hover);
}

#sidebar li .delete-btn {
  display: none;
}

#sidebar li:hover .delete-btn {
  display: block;
}
/* sidebar styles end here */

.delete-btn {
  color: var(--icon-color);
}

.card .delete-btn:hover,
.delete-btn:hover {
  color: red;
}

/* main styles start here */
main {
  width: 100%;
  height: auto;
  /* outline: 1px solid; */
  padding: 40px 90px;
  display: flex;
  flex-direction: column;
  gap: 1em;
}

main .project-title {
  font-size: 40px;
}

main .project-title:focus {
  outline: 0;
}

main .options-tab {
  display: flex;
  justify-content: space-between;
  /* outline: 1px solid black; */
  border-bottom: 1px solid rgb(221, 221, 221);
}

main .options-tab > ul {
  padding: 0;
  display: flex;
  align-items: center;
  gap: 2em;
  /* outline:1px solid ; */
}

main .options-tab li.selected-view {
  color: black;
  /* text-decoration: underline; */
  font-weight: 500;
}

/* main styles end here */

/* options-tab styles start here */
.options-tab > ul li {
  color: var(--gray);
  padding: 5px;
  border-radius: 3px;
  /* outline:1px solid ; */
}

.options-tab > ul li:hover {
  background-color: var(--gray-hover);
}

.options-tab ul:nth-child(2) li {
  display: flex;
  justify-content: center;
  align-items: center;
}
/* options-tab styles end here */

.dropdown > button {
  color: var(--gray);
  background-color: transparent;
  border: 0;
}

#sort-menu .dropdown-item:hover {
  background-color: var(--gray-hover);
}

.hide {
  display: none !important;
}

.kanban-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1em;
  width: 100%;
  /* outline: 1px solid; */
}

/* calendar styles start here */
#calendar {
  width: 100%;
  min-width: 500px;
  font-family: sans-serif;
}

#calendar .fc .fc-toolbar {
  width: 100%;
  outline: 1px solid;
}

#calendar .fc .fc-button {
  padding: 5px !important;
  font-size: 14px !important;
  border-radius: 0.25rem !important;
}

#calendar .fc .fc-toolbar-title {
  font-size: clamp(15px, 2vw, 100px) !important;
}

#calendar .fc-button,
#calendar .fc-button-group {
  background-color: white !important;
  color: black;
  /* border: 1px solid; */
}

#calendar .fc-event-title {
  padding: 5px;
}
/* calendar styles end here */

.col {
  /* outline: 1px solid; */
}

.col,
.cards-container {
  display: flex;
  flex-direction: column;
  gap: 0.5em;
  /* height: 100%; */
  /* background-color: rgb(220, 220, 220); */
}

.col-header {
  display: flex;
  gap: 1em;
}

.col-title {
  font-size: 14px;
  font-weight: 500;
}

.highlight {
  border-radius: 3px;
  width: fit-content;
  padding: 3px 6px;
}

.col:nth-child(1) .col-title {
  background-color: rgb(236, 236, 236);
}

.col:nth-child(2) .col-title {
  background-color: var(--yellow);
}

.col:nth-child(3) .col-title {
  background-color: var(--green);
}

.col-counter {
  color: var(--gray);
}

.card {
  display: flex;
  flex-direction: column;
  gap: 0.5em;
  padding: 9px;
  cursor: move;
}

.card .delete-btn {
  cursor: default;
}

.card.dragging {
  opacity: 0.5;
}

.card:hover {
  background-color: var(--gray-hover);
}

.card-title {
  font-weight: 500;
  display: flex;
  padding: 8px 10px 6px 6px;
}

.high-priority,
#calendar .high-priority {
  background-color: var(--red);
  border: 0;
}

.medium-priority,
#calendar .medium-priority {
  background-color: var(--yellow);
  border: 0;
}

.low-priority,
#calendar .low-priority {
  background-color: var(--green);
  border: 0;
}

.card-date,
.card-priority {
  font-size: 12px;
}

.new-row {
  color: var(--gray);
  height: 32px;
  border-radius: 3px;
  display: flex;
  align-items: center;
}

.new-row:hover {
  background-color: var(--gray-hover);
}

.card .delete-btn {
  display: none;
  position: absolute;
  top: 10px;
  right: 10px;
  color: var(--icon-color);
}

.card:hover .delete-btn {
  display: block;
}

#expanded-card {
  width: 50%;
}

#expanded-card .input-group-text {
  width: 110px;
}

#expanded-card form h1 {
  margin-bottom: 32px;
}

#expanded-card form h1:focus {
  outline: 0;
}

#expanded-card form {
  height: 50vh;
  /* outline: 1px solid; */
}

#expanded-card .form-floating {
  /* outline: 1px solid; */
  height: 100%;
}

#expanded-card .form-floating #commentSection {
  height: 100%;
}

@media screen and (max-width: 600px) {
  main {
    padding: 10px 20px;
  }

  main .project-title {
    font-size: 30px;
  }

  #expanded-card,
  #sidebar {
    width: 100%;
  }
}
