/* Status badges */
.badge {
  display: inline-block;
  padding: 0.15rem 0.6rem;
  border-radius: 1rem;
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.badge-draft { background: #e2e8f0; color: #475569; }
.badge-open { background: #dcfce7; color: #166534; }
.badge-resolved { background: #dbeafe; color: #1e40af; }

/* Trip cards for bidding form */
.trip-card {
  border: 1px solid var(--pico-muted-border-color);
  border-radius: 0.5rem;
  padding: 0.75rem 1rem;
  margin-bottom: 0.5rem;
  background: var(--pico-card-background-color);
  cursor: grab;
  transition: box-shadow 0.15s, border-color 0.15s;
}
.trip-card:active { cursor: grabbing; }
.trip-card.dragging {
  opacity: 0.5;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
.trip-card.drag-over {
  border-color: var(--pico-primary);
  border-style: dashed;
}

.trip-label {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  cursor: pointer;
  margin: 0;
}
.trip-label input[type="checkbox"] {
  margin-top: 0.25rem;
  flex-shrink: 0;
}
.trip-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}
.trip-meta {
  font-size: 0.85rem;
  color: var(--pico-muted-color);
}
.trip-notes {
  font-size: 0.8rem;
  font-style: italic;
  color: var(--pico-muted-color);
}
.drag-handle {
  font-size: 1.2rem;
  color: var(--pico-muted-color);
  cursor: grab;
  user-select: none;
  padding: 0 0.25rem;
}

/* Table overflow on mobile */
.overflow-auto {
  overflow-x: auto;
}

/* Compact forms */
details form {
  max-width: 700px;
}
