/* ── Shared trolley status + marker styles ──
   Loaded on every page via partials/head.ejs
   Source of truth: dashboard (most up-to-date)
   ─────────────────────────────────────────── */

/* ── Map markers ── */
.trolley-marker {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--primary);
  border: 2px solid var(--bg-base);
  box-shadow: 0 0 0 2px var(--primary);
}

.alive-no-fix {
  opacity: 0.45;
  box-shadow: none !important;
}

/* No-GPS badge in sidebar */
.no-gps-badge {
  font-size: 0.68rem;
  font-weight: 600;
  padding: 1px 5px;
  border-radius: var(--radius-pill);
  background: color-mix(in srgb, var(--text-muted), transparent 80%);
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.trolley-marker.marker-home {
  background: var(--status-active);
  box-shadow: 0 0 0 2px var(--status-active);
}

.trolley-marker.marker-missing {
  background: var(--status-missing);
  box-shadow: 0 0 0 2px var(--status-missing);
}

.trolley-marker.marker-lost {
  background: var(--status-lost);
  box-shadow: 0 0 0 2px var(--status-lost);
}

/* ── Status pill badge ── */
.trolley-status {
  font-size: 0.72rem;
  font-weight: 600;
  padding: 2px 6px;
  border-radius: var(--radius-pill);
  text-transform: capitalize;
}

.status-home {
  background-color: color-mix(in srgb, var(--status-active), transparent 80%);
  color: var(--status-active);
}

.status-missing {
  background-color: color-mix(in srgb, var(--status-missing), transparent 80%);
  color: var(--amber-700);
}

.status-lost {
  background-color: color-mix(in srgb, var(--status-lost), transparent 80%);
  color: var(--status-lost);
}