*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial,Helvetica,sans-serif;
}

body{
background:#0e0e0e;
color:#fff;
padding:30px;
}

header{
margin-bottom:30px;
}

.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
gap:20px;
}

.card{
background:#1b1b1b;
padding:20px;
border-radius:14px;
box-shadow:0 10px 25px rgba(0,0,0,.25);
}

.large{
grid-column:span 2;
}

input{
width:100%;
padding:10px;
margin-bottom:10px;
border:none;
border-radius:8px;
}

button{
width:100%;
padding:12px;
border:none;
border-radius:8px;
background:#00c896;
color:#fff;
font-weight:bold;
cursor:pointer;
transition:.2s;
}

button:hover{
transform:translateY(-2px);
}

.item{
padding:10px;
margin-top:10px;
background:#292929;
border-radius:10px;
}

.toast{
position:fixed;
bottom:30px;
right:30px;
background:#111;
color:#fff;
padding:14px 18px;
border-radius:12px;
box-shadow:0 10px 30px rgba(0,0,0,.25);
opacity:0;
transform:translateY(20px);
transition:.3s;
z-index:9999;
font-weight:600;
}

.toast.show{
opacity:1;
transform:translateY(0);
}

.box{
  background:#111;
  padding:20px;
  border-radius:14px;
  margin:20px 0;
  transition: background-color 0.3s ease;
}

.box input{
  display:block;
  margin:12px 0;
}

.box button{
  background:#00c896;
  color:#fff;
  border:none;
  padding:10px 16px;
  border-radius:10px;
  cursor:pointer;
}

.box button:hover{
  opacity:.9;
}

.green{
  background-color:#111;
  border: 1px solid #fff;
  border-radius: 10px 10px;
}


.import-panel{
  background:linear-gradient(145deg,#1a1a1a,#111);
  border-radius:22px;
  padding:28px;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}

.import-panel h3{
  margin-bottom:18px;
  font-size:26px;
  font-weight:700;
  color:#fff;
}




#backBtn{
  background:#202020;
  color:#fff;
}

/*Carrito de compras style*/

.cart-item{
  display:flex;
  gap:14px;
  align-items:center;
  background:#151515;
  padding:14px;
  border-radius:16px;
  margin-bottom:12px;
}

.cart-img{
  width:80px;
  height:80px;
  object-fit:cover;
  border-radius:12px;
}

.cart-info h4{
  margin:0;
  color:#fff;
}

.cart-info small{
  color:#aaa;
}

.cart-price,
.cart-qty,
.cart-subtotal{
  color:#ddd;
  font-size:14px;
  margin-top:4px;
}

.cart-total{
  margin-top:16px;
  padding:16px;
  background:#101010;
  border-radius:16px;
  font-weight:700;
  font-size:18px;
  color:#fff;
}

.cart-empty{
  padding:18px;
  background:#151515;
  border-radius:16px;
  color:#ccc;
}

.cart-controls{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:10px;
}

.cart-controls button{
  border:none;
  border-radius:10px;
  padding:7px 10px;
  cursor:pointer;
  background:#202020;
  color:#fff;
}

.cart-controls span{
  min-width:24px;
  text-align:center;
  font-weight:700;
  color:#fff;
}

.removeItem{
  background:#3a1111 !important;
}

.admin-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:16px;
  margin-top:20px;
}

.admin-card{
  background:#151515;
  padding:20px;
  border-radius:18px;
  color:#fff;
}

.admin-card small{
  color:#aaa;
}

.admin-card h3{
  font-size:28px;
  margin:8px 0 0;
}


.admin-sections{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  margin-top:24px;
}

.admin-panel{
  background:#151515;
  padding:20px;
  border-radius:18px;
  color:#fff;
}

.admin-panel h3{
  margin-top:0;
}

.admin-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:12px 0;
  border-bottom:1px solid #222;
}

.admin-row small{
  display:block;
  color:#999;
}

.smart-search-panel{
  background:#151515;
  padding:24px;
  border-radius:22px;
  margin-top:30px;
  color:#fff;
}

.smart-search-panel input{
  width:100%;
  padding:14px;
  border:none;
  border-radius:14px;
  margin:14px 0;
}

.smart-search-panel button{
  width:100%;
  padding:13px;
  border:none;
  border-radius:14px;
  background:#00c896;
  color:#fff;
  font-weight:700;
  cursor:pointer;
}

.smart-reading{
  margin-top:20px;
  background:#101010;
  padding:16px;
  border-radius:16px;
  color:#ddd;
  line-height:1.5;
}

.smart-results{
  margin-top:20px;
  display:grid;
  gap:16px;
}

.smart-card{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:16px;
  background:#101010;
  padding:16px;
  border-radius:18px;
}

.smart-card img{
  width:120px;
  height:120px;
  object-fit:cover;
  border-radius:14px;
}

.smart-card h3{
  margin:0;
}

.smart-card small{
  color:#aaa;
}

.smart-card p{
  color:#ccc;
  font-size:14px;
}

.smart-score{
  margin:10px 0;
  color:#00e6a7;
  font-weight:700;
}

.smart-empty{
  margin-top:18px;
  background:#101010;
  padding:16px;
  border-radius:16px;
  color:#ccc;
}

.adminOrderDetailBtn{
  border:none;
  border-radius:10px;
  padding:8px 12px;
  background:#00c896;
  color:#fff;
  cursor:pointer;
  font-weight:700;
}

.admin-order-detail{
  margin-top:24px;
  background:#151515;
  padding:22px;
  border-radius:18px;
  color:#fff;
}

.admin-order-item{
  display:flex;
  justify-content:space-between;
  padding:10px 0;
  border-bottom:1px solid #222;
}


.downloadInvoiceBtn{
  margin-top:14px;
  width:100%;
  padding:12px;
  border:none;
  border-radius:14px;
  background:#00c896;
  color:#fff;
  font-weight:700;
  cursor:pointer;
}

/*INVENTARIO PREMIUM*/

.inventory-summary{
  display:grid;
  grid-template-columns:
    repeat(auto-fit,minmax(180px,1fr));
  gap:14px;
  margin:20px 0;
}

.inventory-card{
  background:#111;
  color:#fff;
  padding:20px;
  border-radius:18px;
}

.inventory-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.inventory-row{
  display:flex;
  justify-content:space-between;
  align-items:center;

  gap:14px;

  padding:16px;

  border-radius:18px;

  background:linear-gradient(
  180deg,
  #ffffff,
  #f7f7f7
);

  overflow:hidden;
}

.inventory-left{
  display:flex;
  align-items:center;
  gap:14px;
}

.inventory-img{
  width:65px;
  height:65px;
  object-fit:cover;
  border-radius:14px;
}

.inventory-right{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
  min-width:220px;
}

.inventory-status{
  padding:6px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}

.inventory-status.ok{
  background:#d4f7df;
  color:#117a37;
}

.inventory-status.bajo{
  background:#fff1cc;
  color:#9b6b00;
}

.inventory-status.agotado{
  background:#ffd7d7;
  color:#a40000;
}

.inventory-row strong{
  color:#111111;
}

.inventory-row small{
  color:#666666;
}

.inventory-left{
  color:#111111;
}

.inventory-top{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}

.inventory-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

/* HISTORIAL DE INVENTARIOS CSS */

.movement-row{
  display:grid;
  grid-template-columns:1.4fr .8fr .8fr .8fr 1.2fr 1.2fr;
  gap:12px;
  align-items:center;
  background:#151515;
  color:#fff;
  padding:14px;
  border-radius:16px;
  margin-bottom:10px;
}

.movement-row small{
  color:#aaa;
}

.movement-type{
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}

.movement-type.entrada{
  background:#d4f7df;
  color:#117a37;
}

.movement-type.salida{
  background:#ffd7d7;
  color:#a40000;
}

.movement-type.ajuste{
  background:#dbeafe;
  color:#1d4ed8;
}

/*LISTENER BOTON AUTOMATICO DE REPOSICION */

.replenishment-card{

  display:flex;

  justify-content:
    space-between;

  align-items:center;

  gap:20px;

  background:#111;

  padding:18px;

  border-radius:18px;

  margin-bottom:14px;

}

.replenishment-left h3{

  color:white;

  margin:0;

}

.replenishment-left small{

  color:#999;

}

.replenishment-left p{

  color:#ddd;

  margin-top:8px;

}

.replenishment-right{

  display:flex;

  align-items:center;

  gap:12px;

  flex-wrap:wrap;

}

.priority-badge{

  padding:6px 12px;

  border-radius:999px;

  font-weight:700;

}

.priority-badge.alta{

  background:#ffd7d7;

  color:#a40000;

}

.priority-badge.media{

  background:#fff1cc;

  color:#9b6b00;

}

.priority-badge.baja{

  background:#d4f7df;

  color:#117a37;

}

/* PROVEEDORES ESTILOS */


.suppliers-panel{
  margin-top:30px;
}

.suppliers-panel input{
  width:100%;
  padding:12px;
  margin-bottom:8px;
  border-radius:12px;
  border:1px solid #ddd;
}

.supplier-card{
  background:#151515;
  color:#fff;
  padding:18px;
  border-radius:18px;
  margin-top:12px;
}

.supplier-card small{
  color:#aaa;
}


/* BOTONES DE EDITAR Y ELIMINAR PROVEEDOR */

.supplier-actions{
  margin-top:12px;
  display:flex;
  gap:10px;
}

.supplier-actions button{
  padding:8px 12px;
  border:none;
  border-radius:10px;
  cursor:pointer;
}

/* ORDENES DE COMPRAS PARA PROVEEDORES PANEL*/

.purchase-panel{
  margin-top:30px;
}

.purchase-panel select,
.purchase-panel input{
  width:100%;
  padding:12px;
  margin-bottom:8px;
  border-radius:12px;
  border:1px solid #ddd;
}

.purchase-card{
  background:#151515;
  color:#fff;
  padding:18px;
  border-radius:18px;
  margin-top:14px;
}

.purchase-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
}

.purchase-head h3{
  margin:0;
}

.purchase-head small,
.purchase-card small{
  color:#aaa;
}

.purchase-items{
  margin-top:14px;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.purchase-item{
  display:flex;
  justify-content:space-between;
  gap:12px;
  background:#101010;
  padding:10px;
  border-radius:12px;
}

.purchase-status{
  padding:6px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}

.purchase-status.pending{
  background:#fff1cc;
  color:#9b6b00;
}

.purchase-status.received{
  background:#d4f7df;
  color:#117a37;
}

.purchase-status.cancelled{
  background:#ffd7d7;
  color:#a40000;
}

.receivePurchaseBtn{
  width:100%;
  padding:12px;
  border:none;
  border-radius:14px;
  background:#00c896;
  color:#fff;
  font-weight:700;
  cursor:pointer;
  margin-top:12px;
}

.purchase-received-label{
  display:block;
  text-align:center;
  margin-top:12px;
  padding:10px;
  border-radius:14px;
  background:#d4f7df;
  color:#117a37;
  font-weight:700;
}

.purchase-notes{
  color:#ccc;
  font-size:14px;
}

/*Micro panel boton anadir fragancias en draft*/

.add-item-panel{
  margin-top:14px;
  padding:14px;
  border-radius:16px;
  background:#101010;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.add-item-panel select,
.add-item-panel input{
  width:100%;
  padding:10px;
  border-radius:10px;
  border:1px solid #ddd;
}

/* Dashboard ejecutivo panel */

.purchase-stats{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:12px;
  margin:18px 0;
}

.purchase-stat-card{
  background:#151515;
  color:#fff;
  padding:16px;
  border-radius:18px;
}

.purchase-stat-card small{
  color:#aaa;
}

.purchase-stat-card h3{
  margin:6px 0 0;
  font-size:22px;
}

.purchase-stat-card.danger{
  background:#2a1010;
}

/*Filtro de ordenes retrasadas*/

.purchase-filter-active{
  margin:12px 0;
  padding:10px 14px;
  border-radius:14px;
  background:#151515;
  color:#fff;
  display:flex;
  gap:10px;
  align-items:center;
}

.purchase-filter-active button{
  border:none;
  border-radius:999px;
  padding:4px 10px;
  cursor:pointer;
}

/* KPI style */

.supplier-kpi-row{
  grid-template-columns:1.5fr repeat(9, 1fr);
}

/* ESTILO DEL BOTON DE AUDITORIA Y PRESENTACION DE AUDITORIA*/

.audit-row{
  background:#151515;
  color:#fff;
  padding:14px;
  border-radius:14px;
  margin:10px 0;
  display:grid;
  grid-template-columns:1.5fr 1fr 2fr 1fr;
  gap:12px;
  align-items:center;
}

.audit-row small{
  color:#aaa;
}

@media(max-width:900px){
  .audit-row{
    grid-template-columns:1fr;
  }
}