body {
  background: var(--white);
}

.container {
  max-width: 57.5rem;
  margin-inline: auto;

  @media (max-width: 61.25rem) {
    padding-inline: 1.25rem;
  }
}

main {
  @media (max-width: 75rem) {
    margin-bottom: 2.5rem;
  }
  
  .cards {
    display: flex;
    flex-wrap: wrap;
    margin-block: 1.25rem;
    gap: 1.25rem;

    .tasks-info {
      flex: 1;
      display: flex;
      flex-direction: column;
      padding: 1.25rem;
      border-radius: var(--br-base);
      color: var(--white);

      &.pending {
        background: var(--secondary);
      }

      &.done {
        background: var(--primary);
      }
    }
  }

  .input-task-form {
    display: flex;
    margin-block: 1.25rem;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 1.25rem;

    .input-area {
      flex: 1;
      display: flex;
      flex-direction: column;
      gap: 1.25rem;
      font-size: var(--base-text);
      color: var(--dark-gray);
      width: 100%;
    }

    .primary-button {
      flex: 0 10rem;

      svg {
        height: 1.5rem;
      }

      @media (max-width: 380px) {
        flex: 1;
      }
    }
  }

  .empty-state-area {
    .content {
      background: var(--light-gray);
      border: 1px solid var(--gray);
      border-radius: var(--br-base);
      color: var(--dark-gray);
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      padding: 2.5rem;
      gap: .625rem;

      .illustration {
        height: 17.5rem;
      }

      .title {
        font-size: var(--md-text);
      }

      p {
        font-size: var(--base-text);
      }
    }
  }

  .task-list-area {
    flex-wrap: wrap;
    align-items: stretch;
    gap: 1.25rem;

    &.show {
      display: flex;
    }

    .card-list {
      flex: 27.5rem;
      border: 1px solid var(--gray);
      border-radius: var(--br-base);
      overflow: hidden;

      header {
        padding: 1.25rem;
        box-shadow: var(--bs-bottom);

        .pending & {
          background: var(--secondary);
        }

        .done & {
          background: var(--primary);
        }


        h2 {
          font-weight: 400;
          font-size: var(--md-text);
          color: var(--white);
        }
      }

      .task-list {
        display: flex;
        flex-direction: column;
        overflow-y: auto;
        height: 20rem;
        scrollbar-width: 1.25rem;
        scrollbar-color: var(--gray) transparent;
      }

      .task {
        display: flex;
        align-items: center;
        color: var(--dark-gray);
        font-size: var(--base-text);
        gap: .625rem;
        padding: .625rem 1.25rem;

        &:is(:hover) {
          background: var(--light-gray);
        }

        input {
          cursor: pointer;
          accent-color: var(--primary);
          height: 1.25rem;
          width: 1.25rem;
        }

        .text {
          display: flex;
          flex-direction: column;
          gap: .3125rem;

          .done & .task-title {
            text-decoration: line-through;
          }

          .date {
            font-size: var(--sm-text);
          }
        }

        .actions-btn {
          display: flex;
          gap: .625rem;
          margin-left: auto;

          button {
            width: 1.25rem;
            height: 1.25rem;
            background: transparent;
            transition: var(--base-transition);
            color: var(--gray);

            &:is(:hover, :focus) {
              color: var(--dark-gray);
            }
          }
        }
      }
    }
  }
}