/* ============================================================
   BRC Status System - lingua unica de status do sistema
   Carregado por todas as paginas via partial head.ejs.
   ADITIVO: nao altera estilos existentes; adocao gradual.
   Docs: docs/UI_ANALISE_E_PADRAO_VISUAL.md
   ============================================================ */

/* ---------- Status pill (base) ---------- */
.brc-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: var(--brc-font-size-xs, 12px);
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.2px;
  white-space: nowrap;
  border: 1px solid transparent;
}
.brc-pill::before {
  content: '';
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}
.brc-pill--dotless::before { display: none; }

/* Tamanhos */
.brc-pill--lg {
  padding: 6px 14px;
  font-size: var(--brc-font-size-sm, 14px);
}

/* ---------- Ciclo de pedido / delivery / comanda ---------- */
/* Pendente - aguardando aceitacao (ambar) */
.brc-pill--pending,
.brc-pill--sent {
  color: #F59E0B;
  background: rgba(245,158,11,0.12);
  border-color: rgba(245,158,11,0.25);
}

/* Aceito - confirmado pelo estabelecimento (azul) */
.brc-pill--accepted,
.brc-pill--confirmed {
  color: #3B82F6;
  background: rgba(59,130,246,0.12);
  border-color: rgba(59,130,246,0.25);
}

/* Em preparo (roxo) */
.brc-pill--preparing {
  color: #A78BFA;
  background: rgba(139,92,246,0.12);
  border-color: rgba(139,92,246,0.28);
}

/* Saiu para entrega (ciano) */
.brc-pill--out_for_delivery,
.brc-pill--delivering {
  color: #22D3EE;
  background: rgba(34,211,238,0.10);
  border-color: rgba(34,211,238,0.28);
}

[data-theme="light"] .brc-pill--out_for_delivery,
[data-theme="light"] .brc-pill--delivering {
  color: #0E7490;
  background: rgba(14,116,144,0.08);
  border-color: rgba(14,116,144,0.25);
}

/* Entregue / concluido (verde) */
.brc-pill--delivered,
.brc-pill--completed,
.brc-pill--paid {
  color: #4ADE80;
  background: rgba(34,197,94,0.12);
  border-color: rgba(34,197,94,0.28);
}

[data-theme="light"] .brc-pill--delivered,
[data-theme="light"] .brc-pill--completed,
[data-theme="light"] .brc-pill--paid {
  color: #15803D;
  background: rgba(34,197,94,0.08);
  border-color: rgba(34,197,94,0.25);
}

/* Cancelado / inadimplente (vermelho) */
.brc-pill--cancelled,
.brc-pill--defaulted {
  color: #F87171;
  background: rgba(239,68,68,0.12);
  border-color: rgba(239,68,68,0.28);
}

[data-theme="light"] .brc-pill--cancelled,
[data-theme="light"] .brc-pill--defaulted {
  color: #B91C1C;
  background: rgba(239,68,68,0.08);
  border-color: rgba(239,68,68,0.25);
}

/* Fechado / encerrado (neutro) */
.brc-pill--closed,
.brc-pill--inactive,
.brc-pill--offline {
  color: var(--text-muted, #94A3B8);
  background: rgba(148,163,184,0.10);
  border-color: rgba(148,163,184,0.25);
}

/* Aberto / ativo (verde suave reuso) */
.brc-pill--open,
.brc-pill--active,
.brc-pill--online {
  color: #4ADE80;
  background: rgba(34,197,94,0.12);
  border-color: rgba(34,197,94,0.28);
}

/* ---------- Mesas ---------- */
.brc-pill--available {
  color: #4ADE80;
  background: rgba(34,197,94,0.12);
  border-color: rgba(34,197,94,0.28);
}
.brc-pill--occupied {
  color: #FBBF24;
  background: rgba(245,158,11,0.12);
  border-color: rgba(245,158,11,0.28);
}
.brc-pill--reserved {
  color: #60A5FA;
  background: rgba(59,130,246,0.12);
  border-color: rgba(59,130,246,0.28);
}

/* ---------- Badge numerico (contadores) ---------- */
.brc-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  background: var(--red, #EF4444);
}
.brc-badge--primary { background: var(--primary, #3B82F6); }
.brc-badge--success { background: var(--green, #22C55E); }

/* ============================================================
   Convencao legada adotada (.status-badge.status-*)
   Telas que usam essa convencao herdam o padrao BRC sem
   alterar markup nem JS. Novas telas devem usar .brc-pill--*.
   ============================================================ */
.status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: var(--brc-font-size-xs, 12px);
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
  border: 1px solid transparent;
}
.status-badge::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}
.status-badge.status-pending { color: #F59E0B; background: rgba(245,158,11,0.12); border-color: rgba(245,158,11,0.25); }
.status-badge.status-accepted { color: #3B82F6; background: rgba(59,130,246,0.12); border-color: rgba(59,130,246,0.25); }
.status-badge.status-preparing { color: #A78BFA; background: rgba(139,92,246,0.12); border-color: rgba(139,92,246,0.28); }
.status-badge.status-out_for_delivery { color: #22D3EE; background: rgba(34,211,238,0.10); border-color: rgba(34,211,238,0.28); }
[data-theme="light"] .status-badge.status-out_for_delivery { color: #0E7490; background: rgba(14,116,144,0.08); border-color: rgba(14,116,144,0.25); }
.status-badge.status-delivered { color: #4ADE80; background: rgba(34,197,94,0.12); border-color: rgba(34,197,94,0.28); }
[data-theme="light"] .status-badge.status-delivered { color: #15803D; background: rgba(34,197,94,0.08); border-color: rgba(34,197,94,0.25); }
.status-badge.status-cancelled { color: #F87171; background: rgba(239,68,68,0.12); border-color: rgba(239,68,68,0.28); }
[data-theme="light"] .status-badge.status-cancelled { color: #B91C1C; background: rgba(239,68,68,0.08); border-color: rgba(239,68,68,0.25); }
