/* Checklist cards */
.checklist-card {
  transition: box-shadow 0.15s ease, transform 0.15s ease;
}
.checklist-card:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,0.1) !important;
  transform: translateY(-2px);
}

/* Use mode — strike through ticked items */
.checklist-item.checked .item-text {
  text-decoration: line-through;
  color: #aaa;
}
.checklist-item {
  transition: opacity 0.15s;
}
.checklist-item.checked {
  opacity: 0.6;
}

/* Item checkbox sizing */
.item-check {
  width: 1.2em;
  height: 1.2em;
  cursor: pointer;
}

/* Drag-and-drop ghost placeholder */
.sortable-ghost {
  opacity: 0.35;
  background: #e9ecef;
  border-radius: 4px;
}

/* ── Print styles ────────────────────────────────────────────────────────────── */
@media print {
  /* Hide all interactive / navigational chrome */
  .navbar, footer, #editMode, #cookieBanner, .alert { display: none !important; }

  /* Remove card decoration */
  .card { border: none !important; box-shadow: none !important; }
  .container { max-width: 100% !important; padding: 0 !important; }

  /* Show all items at full opacity regardless of checked state,
     and remove strike-through so the printed list is fully readable */
  .checklist-item { opacity: 1 !important; break-inside: avoid; }
  .checklist-item.checked .item-text {
    text-decoration: none !important;
    color: inherit !important;
  }

  /* Keep section headers legible */
  .section-header { color: #333 !important; margin-top: 1em !important; }

  /* Tighten up spacing */
  .checklist-item { padding: 3px 0 !important; border-bottom: 1px solid #ddd !important; }

  /* Ensure checkboxes render */
  .item-check { print-color-adjust: exact; -webkit-print-color-adjust: exact; }

  /* Pull the page title up */
  main.container { margin-top: 0 !important; }
}
