/* Estilos del Sistema de Lavandería (sobre Bootstrap 5) */
:root {
  --c-recibido: #0d6efd;
  --c-lavando: #f59f00;
  --c-listo: #198754;
  --c-entregado: #6c757d;
  --c-whatsapp: #25d366;
  --fondo: #f2f5fa;
}

body { background: var(--fondo); }
@media (max-width: 991.98px) {
  body.con-barra-inferior { padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
}

.navbar-brand img { background: #fff; }

/* ---------- Estados de pedido ---------- */
.badge-estado { font-weight: 600; padding: .45em .75em; border-radius: 50rem; font-size: .8rem; }
.estado-recibido { background: var(--c-recibido); color: #fff; }
.estado-lavando { background: var(--c-lavando); color: #212529; }
.estado-listo { background: var(--c-listo); color: #fff; }
.estado-entregado { background: var(--c-entregado); color: #fff; }

.punto { display: inline-block; width: .7rem; height: .7rem; border-radius: 50%; vertical-align: middle; margin-right: .2rem; }

.badge-pago { font-weight: 600; padding: .4em .7em; border-radius: 50rem; font-size: .8rem; border: 1px solid; }
.pago-pagado { color: #0f5132; background: #d1e7dd; border-color: #a3cfbb; }
.pago-sena { color: #664d03; background: #fff3cd; border-color: #ffda6a; }
.pago-pendiente { color: #842029; background: #f8d7da; border-color: #f1aeb5; }

.estado-btn-recibido, .estado-btn-recibido:hover, .estado-btn-recibido:focus { background: var(--c-recibido); color: #fff; border-color: var(--c-recibido); }
.estado-btn-lavando, .estado-btn-lavando:hover, .estado-btn-lavando:focus { background: var(--c-lavando); color: #212529; border-color: var(--c-lavando); }
.estado-btn-listo, .estado-btn-listo:hover, .estado-btn-listo:focus { background: var(--c-listo); color: #fff; border-color: var(--c-listo); }
.estado-btn-entregado, .estado-btn-entregado:hover, .estado-btn-entregado:focus { background: #343a40; color: #fff; border-color: #343a40; }
[class*="estado-btn-"]:hover { filter: brightness(.93); }
.pasos-estado .actual { box-shadow: 0 0 0 .2rem rgba(0, 0, 0, .15); font-weight: 700; }

.btn-whatsapp, .btn-whatsapp:hover, .btn-whatsapp:focus { background: var(--c-whatsapp); border-color: var(--c-whatsapp); color: #fff; font-weight: 600; }
.btn-whatsapp:hover { filter: brightness(.93); }

/* ---------- Tarjetas de pedido en listados ---------- */
.pedido-item {
  background: #fff;
  border-radius: .75rem;
  padding: .75rem 1rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .06);
  border-left: 6px solid #ced4da;
}
.pedido-item.borde-recibido { border-left-color: var(--c-recibido); }
.pedido-item.borde-lavando { border-left-color: var(--c-lavando); }
.pedido-item.borde-listo { border-left-color: var(--c-listo); background: #f3fbf6; }
.pedido-item.borde-entregado { border-left-color: var(--c-entregado); }
.btn-siguiente { font-weight: 600; }

/* ---------- Indicadores ---------- */
.stat-card { border-radius: 1rem; }
.stat-card .stat-valor { font-size: 2rem; font-weight: 800; letter-spacing: -.5px; line-height: 1.2; margin-top: .25rem; word-break: break-word; }
.stat-card.chica .stat-valor { font-size: 1.35rem; }
.stat-card .stat-icono { font-size: 1.8rem; opacity: .85; }
.stat-verde .stat-icono, .stat-verde .stat-valor { color: #198754; }
.stat-rojo .stat-icono, .stat-rojo .stat-valor { color: #dc3545; }
.stat-azul .stat-icono, .stat-azul .stat-valor { color: #0d6efd; }
.stat-naranja .stat-icono, .stat-naranja .stat-valor { color: #e8590c; }
.stat-gris .stat-icono, .stat-gris .stat-valor { color: #6c757d; }
.stat-verde { border-top: 4px solid #198754 !important; }
.stat-rojo { border-top: 4px solid #dc3545 !important; }
.stat-azul { border-top: 4px solid #0d6efd !important; }
.stat-naranja { border-top: 4px solid #e8590c !important; }
.stat-gris { border-top: 4px solid #adb5bd !important; }

.tarjeta-super { background: linear-gradient(135deg, #3b0764, #6f42c1); color: #fff; }

/* ---------- Botones grandes ---------- */
.btn-xl { padding: 1rem .75rem; font-size: 1.1rem; border-radius: 1rem; font-weight: 600; }
.accion-rapida { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .25rem; min-height: 96px; }
.accion-rapida .bi { font-size: 1.9rem; }

.boton-servicio { min-height: 76px; text-align: left; border-radius: .75rem; white-space: normal; }
.paso { display: inline-flex; width: 1.6rem; height: 1.6rem; border-radius: 50%; background: #0d6efd; color: #fff; font-size: .9rem; align-items: center; justify-content: center; margin-right: .3rem; }
.linea { transition: background-color .3s; }
.linea.resaltar { background: #cfe2ff !important; }
#resultadosCliente:empty { display: none; }

/* ---------- Barra inferior (celular) ---------- */
.barra-inferior {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 1030;
  display: flex; background: #fff; border-top: 1px solid #dee2e6;
  padding-bottom: env(safe-area-inset-bottom);
  box-shadow: 0 -2px 10px rgba(0, 0, 0, .06);
}
.barra-inferior a {
  flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: .4rem 0 .35rem; color: #495057; text-decoration: none; font-size: .72rem; font-weight: 600;
}
.barra-inferior a .bi { font-size: 1.35rem; line-height: 1.1; }
.barra-inferior a.activo { color: #0d6efd; }
.barra-inferior .ba-accion .bi { font-size: 2rem; }
.barra-inferior .ba-pedido { color: #0d6efd; }
.barra-inferior .ba-gasto { color: #dc3545; }

.pestanas-estado::-webkit-scrollbar { height: 4px; }

/* ---------- Login ---------- */
.pantalla-login { background: linear-gradient(160deg, #0d6efd 0%, #4dabf7 60%, #e7f5ff 100%); }

/* ---------- Tablas de reportes ---------- */
.barra-porcentaje { height: .5rem; }

/* ---------- Impresión ---------- */
@media print {
  .no-print, .navbar, .barra-inferior, .btn, form.js-rango, .alert .btn-close { display: none !important; }
  body { background: #fff !important; padding: 0 !important; }
  .card { box-shadow: none !important; border: 1px solid #ccc !important; break-inside: avoid; }
  main { max-width: 100% !important; padding: 0 !important; }
  .solo-impresion { display: block !important; }
}
.solo-impresion { display: none; }
