
/* BIGSYS_NEXT_VISUAL_V24_RESTORE_COLORS_SAFE_START
   Recupera colores sin JS:
   - No toca clicks.
   - No toca dropdown.
   - No modifica IA, OCR, endpoints ni validaciones.
*/

:root{
  --v24-gray-top:rgba(24,32,44,.98);
  --v24-gray-mid:rgba(18,27,40,.98);
  --v24-gray-bot:rgba(14,22,34,.98);

  --v24-field-bg:rgba(6,15,27,.78);
  --v24-field-border:rgba(148,163,184,.22);

  --v24-green-top:rgba(40,209,124,.32);
  --v24-green-bot:rgba(40,209,124,.18);
  --v24-green-border:rgba(40,209,124,.82);
  --v24-green-text:#effff5;

  --v24-ok-top:rgba(34,93,67,.55);
  --v24-ok-mid:rgba(25,72,54,.51);
  --v24-ok-bot:rgba(18,52,42,.47);
  --v24-ok-border:rgba(74,222,128,.94);
  --v24-ok-left:#36c985;

  --v24-yellow:#fbbf24;
  --v24-yellow-border:rgba(251,191,36,.96);

  --v24-red:#f87171;
  --v24-red-border:rgba(248,113,113,.96);

  --v24-blue:#38bdf8;
  --v24-blue-border:rgba(56,189,248,.92);
}

/* =========================
   Base líneas
   ========================= */

.invoice-line-card{
  background:
    linear-gradient(180deg, var(--v24-gray-top), var(--v24-gray-mid) 52%, var(--v24-gray-bot)) !important;
  border:1px solid rgba(148,163,184,.30) !important;
  border-left:5px solid rgba(148,163,184,.46) !important;
  box-shadow:
    0 12px 26px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.035) !important;
}

/* Amarillo: solo borde */
.invoice-line-card.status-yellow:not(.line-local-confirmed),
.invoice-line-card.warning:not(.line-local-confirmed),
.invoice-line-card.yellow:not(.line-local-confirmed){
  background:
    linear-gradient(180deg, var(--v24-gray-top), var(--v24-gray-mid) 52%, var(--v24-gray-bot)) !important;
  border-color:var(--v24-yellow-border) !important;
  border-left-color:var(--v24-yellow) !important;
}

/* Rojo: solo borde */
.invoice-line-card.status-red:not(.line-local-confirmed),
.invoice-line-card.error:not(.line-local-confirmed),
.invoice-line-card.no-product:not(.line-local-confirmed),
.invoice-line-card.sin-producto:not(.line-local-confirmed){
  background:
    linear-gradient(180deg, var(--v24-gray-top), var(--v24-gray-mid) 52%, var(--v24-gray-bot)) !important;
  border-color:var(--v24-red-border) !important;
  border-left-color:var(--v24-red) !important;
}

/* IA aplicada / pendiente: borde azul */
.invoice-line-card.line-local-pending:not(.line-local-confirmed){
  border-color:var(--v24-blue-border) !important;
  border-left-color:var(--v24-blue) !important;
}

/* Validada final real */
.invoice-line-card.line-local-confirmed,
.invoice-line-card.status-yellow.line-local-confirmed,
.invoice-line-card.status-red.line-local-confirmed,
.invoice-line-card.warning.line-local-confirmed,
.invoice-line-card.error.line-local-confirmed,
.invoice-line-card.no-product.line-local-confirmed,
.invoice-line-card.sin-producto.line-local-confirmed{
  background:
    linear-gradient(180deg, var(--v24-ok-top), var(--v24-ok-mid) 52%, var(--v24-ok-bot)) !important;
  border-color:var(--v24-ok-border) !important;
  border-left:6px solid var(--v24-ok-left) !important;
  box-shadow:
    0 12px 26px rgba(0,0,0,.20),
    0 0 0 2px rgba(74,222,128,.22),
    inset 0 1px 0 rgba(255,255,255,.04) !important;
}

/* Hover: solo borde/halo */
.invoice-line-card:hover{
  border-left-width:7px !important;
  box-shadow:
    0 12px 26px rgba(0,0,0,.22),
    0 0 0 3px rgba(56,189,248,.28),
    inset 0 1px 0 rgba(255,255,255,.04) !important;
}

.invoice-line-card.status-yellow:not(.line-local-confirmed):hover,
.invoice-line-card.warning:not(.line-local-confirmed):hover,
.invoice-line-card.yellow:not(.line-local-confirmed):hover{
  box-shadow:
    0 12px 26px rgba(0,0,0,.22),
    0 0 0 3px rgba(251,191,36,.36),
    inset 0 1px 0 rgba(255,255,255,.04) !important;
}

.invoice-line-card.status-red:not(.line-local-confirmed):hover,
.invoice-line-card.error:not(.line-local-confirmed):hover,
.invoice-line-card.no-product:not(.line-local-confirmed):hover,
.invoice-line-card.sin-producto:not(.line-local-confirmed):hover{
  box-shadow:
    0 12px 26px rgba(0,0,0,.22),
    0 0 0 3px rgba(248,113,113,.38),
    inset 0 1px 0 rgba(255,255,255,.04) !important;
}

.invoice-line-card.line-local-confirmed:hover{
  border-left-width:8px !important;
  box-shadow:
    0 12px 26px rgba(0,0,0,.22),
    0 0 0 4px rgba(74,222,128,.36),
    inset 0 1px 0 rgba(255,255,255,.04) !important;
}

/* =========================
   Texto principal
   ========================= */

.invoice-line-card .line-description,
.invoice-line-card .line-description *{
  color:#f8fbff !important;
  text-shadow:none !important;
}

/* Campos normales */
.invoice-line-card .line-field,
.invoice-line-card .ai-field{
  background:var(--v24-field-bg) !important;
  border:1px solid var(--v24-field-border) !important;
  color:#dce8f8 !important;
}

/* =========================
   Campos IA superiores aplicados
   ========================= */

.invoice-line-card .line-main > .line-description.field-local-confirmed,
.invoice-line-card .line-main > .line-description.field-ai-applied,
.invoice-line-card .line-main > .line-description.field-safe,
.invoice-line-card .line-main > .line-description.field-confirmed,
.invoice-line-card .line-main > .line-field.field-local-confirmed,
.invoice-line-card .line-main > .line-field.field-ai-applied,
.invoice-line-card .line-main > .line-field.field-safe,
.invoice-line-card .line-main > .line-field.field-confirmed{
  background:
    linear-gradient(180deg, rgba(40,209,124,.24), rgba(40,209,124,.14)) !important;
  border:1px solid rgba(40,209,124,.58) !important;
  color:var(--v24-green-text) !important;
}

.invoice-line-card .line-main > .line-description.field-local-confirmed *,
.invoice-line-card .line-main > .line-description.field-ai-applied *,
.invoice-line-card .line-main > .line-description.field-safe *,
.invoice-line-card .line-main > .line-description.field-confirmed *,
.invoice-line-card .line-main > .line-field.field-local-confirmed *,
.invoice-line-card .line-main > .line-field.field-ai-applied *,
.invoice-line-card .line-main > .line-field.field-safe *,
.invoice-line-card .line-main > .line-field.field-confirmed *{
  color:var(--v24-green-text) !important;
}

/* =========================
   Fila inferior IA exacta
   ========================= */

.invoice-line-card .line-ai-field-suggestions{
  background:transparent !important;
  box-shadow:none !important;
}

/* Botones IA confirmados de abajo */
.invoice-line-card .line-ai-field-suggestions > button.ai-field-confirmed,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-description,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-code,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-qty,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-price,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-total,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-diff{
  background:
    linear-gradient(180deg, var(--v24-green-top), var(--v24-green-bot)) !important;
  border:1px solid var(--v24-green-border) !important;
  color:var(--v24-green-text) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 0 0 1px rgba(40,209,124,.08) !important;
}

/* Textos internos botones IA abajo */
.invoice-line-card .line-ai-field-suggestions > button.ai-field-confirmed *,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-description *,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-code *,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-qty *,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-price *,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-total *,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-diff *,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-confirmed em,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-code em,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-qty em,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-price em,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-total em{
  color:var(--v24-green-text) !important;
}

/* Hover individual de campo IA */
.invoice-line-card .line-ai-field-suggestions > button.ai-field-confirmed:hover,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-description:hover,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-code:hover,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-qty:hover,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-price:hover,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-total:hover,
.invoice-line-card .line-ai-field-suggestions > button.ai-field-diff:hover{
  background:
    linear-gradient(180deg, rgba(40,209,124,.40), rgba(40,209,124,.25)) !important;
  border-color:rgba(40,209,124,1) !important;
}

/* =========================
   Dropdown no tocar
   ========================= */

.visual-picker-positioned-v23{
  z-index:999999 !important;
}

/* BIGSYS_NEXT_VISUAL_V24_RESTORE_COLORS_SAFE_END */
