/* General page */
body {
  font-family: 'Quicksand', sans-serif;
  background: #ffe6f0;
  color: #4a2c2a;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  min-height: 100vh;
  align-items: flex-start;
}

/* Container */
#todo-container {
  background: #fff0f6;
  border: 3px solid #ffb6c1;
  border-radius: 20px;
  box-shadow: 0 6px 12px rgba(255, 182, 193, 0.4);
  padding: 20px 30px;
  margin-top: 40px;
  max-width: 420px;
  width: 100%;
}

/* Header */
#header h1 {
  text-align: center;
  font-size: 2.2rem;
  font-family: 'Pacifico', cursive; /* script font for header */
  color: #ff69b4;
  margin-bottom: 15px;
}

/* Input + button */
#todo-form {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
}

#input_box {
  flex: 1;
  padding: 12px;
  border-radius: 20px;
  border: 2px solid #ffb6c1;
  outline: none;
  font-size: 1rem;
}

#input_box:focus {
  border-color: #ff69b4;
  box-shadow: 0 0 6px #ff69b4;
}

#input-button {
  background: #ffb6c1;
  border: none;
  border-radius: 20px;
  padding: 10px 18px;
  cursor: pointer;
  font-weight: bold;
  transition: background 0.3s, transform 0.2s;
}

#input-button:hover {
  background: #ff69b4;
  color: white;
  transform: translateY(-2px);
}

/* Task list */
#list-container {
  list-style: none;
  padding: 0;
  margin: 0;
}

#list-container li {
  background: #fff;
  border: 2px solid #ffccd5;
  border-radius: 15px;
  padding: 12px 16px;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: transform 0.2s, box-shadow 0.2s;
}

#list-container li:hover {
  background: #ffe6ef;
  transform: translateY(-3px);
  box-shadow: 0 3px 6px rgba(255, 105, 180, 0.25);
}

/* Checkbox styling */
.task-checkbox {
  appearance: none;
  width: 18px;
  height: 18px;
  border: 2px solid #ff69b4;
  border-radius: 6px;
  cursor: pointer;
  position: relative;
}

.task-checkbox:checked {
  background-color: #ff69b4;
}

.task-checkbox:checked::after {
  content: "✓";
  color: white;
  position: absolute;
  font-size: 14px;
  top: -2px;
  left: 3px;
}

/* Task text */
.task-text {
  flex: 1;
  margin-left: 10px;
  font-size: 1rem;
}

/* Completed style */
.completed .task-text {
  text-decoration: line-through;
  color: #888;
}

/* Action buttons (icons instead of text) */
.edit-btn,
.delete-btn {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 1.1rem;
  margin-left: 8px;
  transition: transform 0.2s;
}

.edit-btn:hover,
.delete-btn:hover {
  transform: scale(1.2);
}

/* Give them pink/red colors */
.edit-btn {
  color: #ff69b4; /* hot pink */
}
.delete-btn {
  color: #ff4d6d; /* deeper pinkish red */
}

/* Counters */
.counter-container {
  text-align: center;
  margin-top: 15px;
  font-size: 0.9rem;
  color: #4a2c2a;
}

#task-counters span {
  background: #ffd6e8;
  padding: 2px 8px;
  border-radius: 12px;
  font-weight: 600;
  margin: 0 3px;
}
