/* grid-cards.css — Consolidated responsive grid for orders/products/venues */
:root{
  --card-bg: #1b1b1b;
  --card-border: #2a2a2a;
  --card-radius: 14px;
  --card-shadow: 0 10px 30px rgba(0,0,0,.35);
  --muted: #9aa0a6;
  --text: #f6f6f6;
}

/* === Base grid layout === */
.grid-list{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap:12px;
}

@media (min-width:1100px){
  .grid-list.narrow{ grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); }
}

/* === Wide grid variant === */
.grid-list.wide{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
  gap: 12px;
}
@media (min-width: 1200px){
  .grid-list.wide{
    grid-template-columns: repeat(auto-fill, minmax(480px, 1fr));
  }
}

/* === Card mini === */
.card-mini{
  background:var(--card-bg);
  border:1px solid var(--card-border);
  border-radius:var(--card-radius);
  box-shadow:var(--card-shadow);
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:8px;
  padding:12px;
  min-height: 120px;
}
.card-mini header{
  display:flex; align-items:center; justify-content:space-between; gap:8px;
  font-size:.9rem; color:var(--muted);
}
.card-mini .title{
  font-weight:700; color:var(--text); font-size:1rem;
  display:flex; align-items:center; gap:8px;
}
.card-mini .subtitle{ color:var(--muted); font-size:.9rem; }
.card-mini .meta{
  color:var(--muted);
  font-size:0.95em;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.card-mini .actions{
  display:flex;
  gap:6px;
  align-items:center;
  flex-wrap:nowrap;
  justify-content:flex-end;
}

/* === Button icon styles === */
.btn.icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:6px 10px;
  min-width:36px;
  min-height:36px;
  border-radius:10px;
}
.btn.icon .material-symbols-rounded{
  font-size:20px;
  line-height:1;
}

/* === Badge styles === */
.badge{
  display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:2px 8px; font-size:.8rem; font-weight:600;
  border:1px solid var(--card-border); color:var(--muted);
}
.badge.sent{ background:#263238; color:#90caf9; border-color:#455a64; }
.badge.confirmed{ background:#1b5e20; color:#a5d6a7; border-color:#2e7d32; }
.badge.ordered_to_supplier{ background:#4e342e; color:#ffcc80; border-color:#6d4c41; }
.badge.delivered{ background:#37474f; color:#b0bec5; border-color:#546e7a; }
.badge.received{ background:#1b5e20; color:#a5d6a7; border-color:#2e7d32; }
.badge.canceled{ background:#b00020; color:#ffcdd2; border-color:#c62828; }

/* === Product card specifics === */
.p-price{ font-weight:700; }
.p-unit { color:var(--muted); }

/* === Slightly larger image for products (wide variant) === */
.card-mini img{ width:64px; height:64px; }

/* === Compact forms inside cards === */
.card-mini form.inline{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.card-mini select{ max-width: 150px; }

/* === Utility classes === */
.truncate-1{ overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.truncate-2{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.small{ font-size:.9rem; color:var(--muted); }
