/* ============================================================================
   THOR — KANBAN APPLE REDESIGN v2 (radical, profesional)
   100% CSS. NO cambia HTML ni JS. Cargado el ÚLTIMO en panel.html.
   Reversible quitando su <link>.

   Clave técnica: casi todo se prefija con #kanbanLicitacionesSection para
   subir especificidad (1,x,x) y GANAR a workflow-apple.css / style.css aunque
   usen !important con menos especificidad. Mantiene todas las clases (JS).

   Incluye: neutralización del fondo "rojo/rosa de urgencia" de style.css,
   cabeceras minimalistas, tarjetas limpias, botones pill, layout a altura
   completa (columnas enteras) y soporte claro + oscuro.
   ============================================================================ */

/* ===== TOKENS ===== */
:root {
  --ka-bg: #f5f5f7;
  --ka-col-bg: #ececee;
  --ka-card: #ffffff;
  --ka-text: #1d1d1f;
  --ka-text-2: #6e6e73;
  --ka-text-3: #a1a1a6;
  --ka-border: rgba(0,0,0,.08);
  --ka-border-2: rgba(0,0,0,.14);
  --ka-accent: #e88732;
  --ka-r-col: 20px;
  --ka-r-card: 16px;
  --ka-r-pill: 980px;
  --ka-sh-card: 0 1px 2px rgba(0,0,0,.05), 0 6px 16px rgba(0,0,0,.05);
  --ka-sh-card-h: 0 8px 22px rgba(0,0,0,.12), 0 16px 40px rgba(0,0,0,.10);
  --ka-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", Roboto, sans-serif;
  --ka-mono: "SF Mono", "JetBrains Mono", ui-monospace, monospace;
  --ka-green: #34c759; --ka-red: #ff3b30; --ka-amber: #ff9f0a; --ka-blue: #0a84ff;
}
[data-theme="dark"] {
  --ka-bg: #000; --ka-col-bg: #161618; --ka-card: #1c1c1e;
  --ka-text: #f5f5f7; --ka-text-2: #aeaeb2; --ka-text-3: #8e8e93;
  --ka-border: rgba(255,255,255,.10); --ka-border-2: rgba(255,255,255,.18);
  --ka-sh-card: 0 1px 2px rgba(0,0,0,.5), 0 6px 16px rgba(0,0,0,.4);
  --ka-sh-card-h: 0 10px 28px rgba(0,0,0,.6);
}

/* ===== COLOR DE ESTADO POR COLUMNA (heredado por las tarjetas) ===== */
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Triaje"]      { --ka-estado:#34c759; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Localret"]    { --ka-estado:#f59e0b; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Invitacion"]  { --ka-estado:#8b5cf6; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Favorita"]    { --ka-estado:#f59e0b; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Analisis"]    { --ka-estado:#0a84ff; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="GoNoGo"]      { --ka-estado:#ff9f0a; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Preparacion"] { --ka-estado:#5e5ce6; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Revision"]    { --ka-estado:#bf5af2; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Presentacion"]{ --ka-estado:#ff2d55; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Presentada"]  { --ka-estado:#32ade6; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Adjudicada"]  { --ka-estado:#34c759; }
#kanbanLicitacionesSection .kanban-column-stacked[data-estado="Perdida"]     { --ka-estado:#8e8e93; }
#kanbanLicitacionesSection .kanban-column-stacked { --ka-estado:#0a84ff; }

/* ===== SECCIÓN + LAYOUT A ALTURA COMPLETA (columnas enteras) ===== */
#kanbanLicitacionesSection {
  background: var(--ka-bg) !important;
  font-family: var(--ka-font);
}
#kanbanLicitacionesSection .kanban-board-stacked,
#kanbanLicitacionesSection .kanban-container > .kanban-board-stacked {
  background: transparent !important;
  display: flex !important;
  gap: 18px !important;
  padding: 6px 6px 24px !important;
  align-items: stretch !important;          /* columnas a la misma altura */
  height: calc(100vh - 240px) !important;   /* ocupa la pantalla → se ven enteras */
  min-height: 520px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-behavior: smooth;
}
#kanbanLicitacionesSection .kanban-board-stacked::-webkit-scrollbar { height: 10px; }
#kanbanLicitacionesSection .kanban-board-stacked::-webkit-scrollbar-thumb {
  background: var(--ka-border-2); border-radius: 6px; border: 2px solid transparent; background-clip: padding-box;
}

/* ===== COLUMNAS ===== */
#kanbanLicitacionesSection .kanban-column-stacked {
  min-width: 320px !important;
  max-width: 340px !important;
  flex: 0 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;                  /* altura completa del board */
  background: var(--ka-col-bg) !important;
  border: 1px solid var(--ka-border) !important;
  border-radius: var(--ka-r-col) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  transition: box-shadow .25s ease !important;
  overflow: hidden !important;
}
#kanbanLicitacionesSection .kanban-column-stacked:hover {
  box-shadow: 0 4px 18px rgba(0,0,0,.07) !important;
  transform: none !important;
}

/* ===== CABECERA: punto de color + título texto (gana a workflow-apple) ===== */
#kanbanLicitacionesSection .kanban-column-header-stacked {
  padding: 18px 18px 12px !important;
  background: transparent !important;
  border-bottom: 1px solid var(--ka-border) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  flex-shrink: 0;
}
#kanbanLicitacionesSection .kanban-column-stacked[data-estado] .kanban-column-title-stacked {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-image: none !important;
  color: var(--ka-text) !important;
  font-family: var(--ka-font) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
  text-transform: none !important;
  text-align: left !important;
  text-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
}
#kanbanLicitacionesSection .kanban-column-stacked[data-estado] .kanban-column-title-stacked::before {
  content: '';
  width: 11px; height: 11px; border-radius: 50%;
  background: var(--ka-estado);
  flex-shrink: 0;
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--ka-estado) 16%, transparent);
}
#kanbanLicitacionesSection .kanban-column-count-stacked {
  margin: 0 !important;
  padding: 4px 12px !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: var(--ka-estado) !important;
  background: color-mix(in srgb, var(--ka-estado) 14%, transparent) !important;
  border: none !important;
  border-radius: var(--ka-r-pill) !important;
  box-shadow: none !important;
}
#kanbanLicitacionesSection .kanban-column-count-stacked.has-urgent { background: rgba(255,159,10,.18) !important; color: var(--ka-amber) !important; }
#kanbanLicitacionesSection .kanban-column-count-stacked.has-critical { background: rgba(255,59,48,.18) !important; color: var(--ka-red) !important; }

/* ===== BUSCADOR POR COLUMNA ===== */
#kanbanLicitacionesSection .kanban-col-search-wrap { padding: 12px 16px 6px !important; flex-shrink: 0; }
#kanbanLicitacionesSection .kanban-col-search {
  width: 100% !important; box-sizing: border-box !important;
  padding: 9px 13px !important;
  border: 1px solid var(--ka-border-2) !important;
  border-radius: 11px !important;
  background: var(--ka-card) !important;
  color: var(--ka-text) !important;
  font-family: var(--ka-font) !important; font-size: 13px !important;
  outline: none !important; transition: border-color .15s, box-shadow .15s;
}
#kanbanLicitacionesSection .kanban-col-search::placeholder { color: var(--ka-text-3) !important; }
#kanbanLicitacionesSection .kanban-col-search:focus {
  border-color: var(--ka-estado) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ka-estado) 20%, transparent) !important;
}

/* ===== CONTENEDOR DE TARJETAS (scroll interno) ===== */
#kanbanLicitacionesSection .kanban-cards-stack-container {
  flex: 1 1 auto !important;
  padding: 14px !important;
  overflow-y: auto !important;
  max-height: none !important;              /* la altura la marca el flex */
}
#kanbanLicitacionesSection .kanban-cards-stack-container::-webkit-scrollbar { width: 7px; }
#kanbanLicitacionesSection .kanban-cards-stack-container::-webkit-scrollbar-thumb { background: var(--ka-border-2); border-radius: 4px; }
#kanbanLicitacionesSection .card-stack { display: flex !important; flex-direction: column !important; gap: 12px !important; }

/* ===== TARJETAS ===== */
/* Reset duro para matar gradientes/animaciones/urgencia de style.css */
#kanbanLicitacionesSection .kanban-card-stacked,
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-roja,
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-amarilla,
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-vencida,
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-normal {
  position: relative !important;
  background: var(--ka-card) !important;
  background-image: none !important;
  border: 1px solid var(--ka-border) !important;
  border-radius: var(--ka-r-card) !important;
  box-shadow: var(--ka-sh-card) !important;
  overflow: hidden !important;
  animation: none !important;               /* mata pulsoUrgente/pulsoVencida */
  transform: none !important;
  transition: transform .22s cubic-bezier(.2,.7,.3,1), box-shadow .22s ease, border-color .2s ease !important;
}
/* Acento de estado: barra superior fina */
#kanbanLicitacionesSection .kanban-card-stacked::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0; right: 0; top: 0;
  height: 3px !important;
  width: auto !important; bottom: auto !important;
  background: var(--ka-estado) !important;
  opacity: .9 !important;
}
#kanbanLicitacionesSection .kanban-card-stacked::after { display: none !important; }
#kanbanLicitacionesSection .kanban-card-stacked:hover,
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-roja:hover,
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-amarilla:hover,
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-vencida:hover {
  background: var(--ka-card) !important;
  border-color: var(--ka-border-2) !important;
  box-shadow: var(--ka-sh-card-h) !important;
  transform: translateY(-3px) !important;
}
#kanbanLicitacionesSection .kanban-card-stacked:focus { outline: none !important; box-shadow: 0 0 0 3px color-mix(in srgb, var(--ka-estado) 35%, transparent) !important; }

#kanbanLicitacionesSection .card-preview { padding: 16px 16px 15px !important; gap: 11px !important; background: transparent !important; }

/* Expediente: chip mono discreto */
#kanbanLicitacionesSection .card-preview-expediente {
  font-family: var(--ka-mono) !important;
  font-size: 11px !important; font-weight: 600 !important;
  letter-spacing: -.01em !important;
  color: var(--ka-text-2) !important;
  background: color-mix(in srgb, var(--ka-text-2) 9%, transparent) !important;
  border: none !important;
  padding: 3px 9px !important; border-radius: 7px !important;
  max-width: 175px;
}
/* Punto de estado a la derecha */
#kanbanLicitacionesSection .card-preview-status {
  width: 9px !important; height: 9px !important; border-radius: 50% !important;
  background: var(--ka-estado) !important; background-image: none !important;
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--ka-estado) 15%, transparent) !important;
}
/* Título */
#kanbanLicitacionesSection .card-preview-title {
  font-size: 15px !important; font-weight: 600 !important;
  letter-spacing: -.015em !important; line-height: 1.4 !important;
  color: var(--ka-text) !important;
}
#kanbanLicitacionesSection .urgencia-vencida .card-preview-title,
#kanbanLicitacionesSection .urgencia-vencida .card-preview-organismo,
#kanbanLicitacionesSection .urgencia-vencida .card-preview-deadline { color: var(--ka-text) !important; }
/* Meta */
#kanbanLicitacionesSection .card-preview-organismo { font-size: 12.5px !important; color: var(--ka-text-2) !important; }
#kanbanLicitacionesSection .card-preview-importe { font-size: 14.5px !important; font-weight: 700 !important; letter-spacing: -.01em !important; color: var(--ka-text) !important; }
#kanbanLicitacionesSection .card-preview-deadline { font-size: 11.5px !important; color: var(--ka-text-2) !important; }

/* Urgencia: SOLO chip discreto (sin fondo de tarjeta, sin pulso) */
#kanbanLicitacionesSection .card-preview-days {
  padding: 2px 9px !important; border-radius: var(--ka-r-pill) !important;
  font-size: 10.5px !important; font-weight: 700 !important;
  background: color-mix(in srgb, var(--ka-text-2) 12%, transparent) !important;
  color: var(--ka-text-2) !important;
  animation: none !important;
}
#kanbanLicitacionesSection .card-preview-days.urgencia-amarilla { background: rgba(255,159,10,.18) !important; color: #b06a00 !important; }
#kanbanLicitacionesSection .card-preview-days.urgencia-roja,
#kanbanLicitacionesSection .card-preview-days.urgente { background: rgba(255,59,48,.16) !important; color: #c62a22 !important; }
#kanbanLicitacionesSection .card-preview-days.urgencia-vencida,
#kanbanLicitacionesSection .card-preview-days.vencida { background: var(--ka-red) !important; color: #fff !important; }

/* ===== ASIGNACIONES como chips ===== */
#kanbanLicitacionesSection .card-asignacion {
  border-radius: var(--ka-r-pill) !important;
  border: 1px solid var(--ka-border) !important;
  background: var(--ka-card) !important;
  color: var(--ka-text-2) !important;
  font-size: 11px !important;
}
#kanbanLicitacionesSection .card-asignacion-requerido {
  background: rgba(255,59,48,.10) !important; border-color: rgba(255,59,48,.32) !important; color: #c62a22 !important;
}

/* ===== BADGES capsule ===== */
#kanbanLicitacionesSection .badge-estrategica,
#kanbanLicitacionesSection .badge-localret,
#kanbanLicitacionesSection .badge-reactivada,
#kanbanLicitacionesSection .badge-plan-aprobado {
  border-radius: var(--ka-r-pill) !important;
  font-size: 9.5px !important; font-weight: 700 !important; letter-spacing: .02em !important;
  padding: 2px 9px !important; border: none !important;
}
#kanbanLicitacionesSection .badge-estrategica { background: rgba(232,135,50,.16) !important; color: var(--ka-accent) !important; }
#kanbanLicitacionesSection .badge-localret { background: rgba(245,158,11,.18) !important; color: #b06a00 !important; }
#kanbanLicitacionesSection .badge-reactivada { background: rgba(52,199,89,.18) !important; color: #248a3d !important; }
#kanbanLicitacionesSection .badge-plan-aprobado { background: rgba(10,132,255,.16) !important; color: var(--ka-blue) !important; }

/* Título corto (Dynamics) */
#kanbanLicitacionesSection .card-preview-titulo-corto {
  background: color-mix(in srgb, var(--ka-blue) 8%, transparent) !important;
  border-left: 3px solid var(--ka-blue) !important;
  color: var(--ka-text-2) !important;
  border-radius: 8px !important;
}

/* ===== BOTONES (pills planos Apple) ===== */
#kanbanLicitacionesSection .kbtn,
#kanbanLicitacionesSection .kanban-btn-stacked {
  font-family: var(--ka-font) !important;
  border-radius: var(--ka-r-pill) !important;
  padding: 7px 15px !important;
  font-size: 11.5px !important; font-weight: 600 !important;
  border: none !important;
  transition: filter .15s ease, transform .1s ease, background .15s !important;
}
#kanbanLicitacionesSection .kbtn:active,
#kanbanLicitacionesSection .kanban-btn-stacked:active { transform: scale(.95); }
#kanbanLicitacionesSection .kbtn--primary,
#kanbanLicitacionesSection .btnAvanzarFase,
#kanbanLicitacionesSection .kbtn--ok { background: var(--ka-green) !important; color: #fff !important; }
#kanbanLicitacionesSection .kbtn--primary:hover,
#kanbanLicitacionesSection .btnAvanzarFase:hover,
#kanbanLicitacionesSection .kbtn--ok:hover { filter: brightness(.93); }
#kanbanLicitacionesSection .kbtn--danger { background: var(--ka-red) !important; color: #fff !important; }
#kanbanLicitacionesSection .kbtn--danger:hover { filter: brightness(.93); }
#kanbanLicitacionesSection .kbtn--ghost,
#kanbanLicitacionesSection .btnRetrocederFase {
  background: color-mix(in srgb, var(--ka-text-2) 12%, transparent) !important;
  color: var(--ka-text-2) !important;
}
#kanbanLicitacionesSection .kbtn--ghost:hover,
#kanbanLicitacionesSection .btnRetrocederFase:hover {
  background: color-mix(in srgb, var(--ka-text-2) 20%, transparent) !important; color: var(--ka-text) !important;
}
#kanbanLicitacionesSection .btnEstrategia { background: var(--ka-accent) !important; color: #fff !important; border-radius: var(--ka-r-pill) !important; }
#kanbanLicitacionesSection .btnEstrategia:hover { filter: brightness(.95); }
#kanbanLicitacionesSection .kanban-btn-primary-stacked { background: var(--ka-accent) !important; color: #fff !important; }
#kanbanLicitacionesSection .kanban-btn-secondary-stacked {
  background: color-mix(in srgb, var(--ka-text-2) 10%, transparent) !important; color: var(--ka-text-2) !important; border: none !important;
}

/* ===== EMPTY STATE ===== */
#kanbanLicitacionesSection .empty-stack {
  border: 1.5px dashed var(--ka-border-2) !important;
  border-radius: var(--ka-r-card) !important;
  color: var(--ka-text-3) !important;
  background: transparent !important;
}

/* ===== FLECHAS DE NAVEGACIÓN ===== */
.kanban-nav-arrow {
  background: var(--ka-card) !important;
  border: 1px solid var(--ka-border) !important;
  box-shadow: var(--ka-sh-card) !important;
  color: var(--ka-text) !important;
}
.kanban-nav-arrow:hover { box-shadow: var(--ka-sh-card-h) !important; }

/* ===== Movimiento reducido ===== */
@media (prefers-reduced-motion: reduce) {
  #kanbanLicitacionesSection .kanban-card-stacked,
  #kanbanLicitacionesSection .kanban-card-stacked:hover,
  #kanbanLicitacionesSection .kbtn { transition: none !important; transform: none !important; animation: none !important; }
}

/* ===== Responsive ===== */
@media (max-width: 1024px) {
  #kanbanLicitacionesSection .kanban-column-stacked { min-width: 290px !important; max-width: 300px !important; }
}
@media (max-width: 768px) {
  #kanbanLicitacionesSection .kanban-board-stacked {
    height: auto !important; overflow-y: visible !important; flex-direction: column !important; align-items: stretch !important;
  }
  #kanbanLicitacionesSection .kanban-column-stacked { min-width: 100% !important; max-width: 100% !important; height: auto !important; }
  #kanbanLicitacionesSection .kanban-cards-stack-container { max-height: 60vh !important; }
  #kanbanLicitacionesSection .kanban-card-stacked:hover { transform: none !important; }
  #kanbanLicitacionesSection .card-preview-actions { opacity: 1 !important; transform: none !important; }
}

/* ============================================================================
   TOOLBAR SUPERIOR DEL KANBAN — neutraliza el gradiente naranja global
   (style.css `.section button{...!important}`) y aplica look Apple.
   Afecta a: Renovaciones, Historial, Invitación, segmented Mis/Equipo/Todas
   y los botones de cabecera (Agenda no-Huginn).
   ============================================================================ */

/* Botones de acción del toolbar: blancos con borde fino (estilo Finder) */
#kanbanLicitacionesSection #kanbanToolbar button:not(.kanban-view-btn),
#kanbanLicitacionesSection #btnRenovaciones,
#kanbanLicitacionesSection #btnHistorialEliminaciones,
#kanbanLicitacionesSection #btnNuevaInvitacion {
  background: var(--ka-card) !important;
  background-image: none !important;
  color: var(--ka-text) !important;
  border: 1px solid var(--ka-border-2) !important;
  border-radius: 10px !important;
  font-family: var(--ka-font) !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  transition: background .15s ease, border-color .15s ease !important;
}
#kanbanLicitacionesSection #kanbanToolbar button:not(.kanban-view-btn):hover,
#kanbanLicitacionesSection #btnRenovaciones:hover,
#kanbanLicitacionesSection #btnHistorialEliminaciones:hover,
#kanbanLicitacionesSection #btnNuevaInvitacion:hover {
  background: color-mix(in srgb, var(--ka-text-2) 8%, var(--ka-card)) !important;
  background-image: none !important;
  border-color: var(--ka-text-3) !important;
}

/* Segmented control "Mis tarjetas / Mi equipo / Todas" estilo iOS */
#kanbanLicitacionesSection #kanbanViewFilter {
  background: color-mix(in srgb, var(--ka-text-2) 10%, transparent) !important;
  border-radius: 11px !important;
  padding: 3px !important;
}
#kanbanLicitacionesSection .kanban-view-btn {
  background: transparent !important;
  background-image: none !important;
  color: var(--ka-text-2) !important;
  border: none !important;
  border-radius: 8px !important;
  font-family: var(--ka-font) !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}
#kanbanLicitacionesSection .kanban-view-btn:hover {
  background: color-mix(in srgb, var(--ka-text-2) 8%, transparent) !important;
  background-image: none !important;
  color: var(--ka-text) !important;
}
#kanbanLicitacionesSection .kanban-view-btn.active {
  background: var(--ka-card) !important;
  background-image: none !important;
  color: var(--ka-text) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,.12) !important;
}

/* Selador del año + buscador del toolbar */
#kanbanLicitacionesSection #kanbanYearFilter {
  border: 1px solid var(--ka-border-2) !important;
  border-radius: 10px !important;
  background-color: var(--ka-card) !important;
  color: var(--ka-text) !important;
  font-family: var(--ka-font) !important;
}
#kanbanLicitacionesSection #kanbanSearchInput,
#kanbanLicitacionesSection #kanbanSearchContainer input {
  border: 1px solid var(--ka-border-2) !important;
  border-radius: 10px !important;
  background: var(--ka-card) !important;
  color: var(--ka-text) !important;
  font-family: var(--ka-font) !important;
}

/* Badges rojos de contador (Renovaciones/Historial) más Apple */
#kanbanLicitacionesSection #renovacionesCount,
#kanbanLicitacionesSection #historialCount {
  background: var(--ka-red) !important;
  border-radius: var(--ka-r-pill) !important;
  font-weight: 700 !important;
}

/* El título h2 de la sección con tipografía/peso Apple */
#kanbanLicitacionesSection > div > h2,
#kanbanLicitacionesSection h2.text-2xl {
  font-family: var(--ka-font) !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: var(--ka-text) !important;
}

/* ============================================================================
   ANIMACIÓN DE URGENCIA — tarjetas con ≤2 días o vencidas
   Halo rojo suave que late (estilo Apple, no agresivo). Las clases
   urgencia-roja (≤2 días) y urgencia-vencida las pone kanban.js. En columnas
   cerradas (Presentada/Adjudicada/Perdida) el JS NO asigna estas clases, así
   que no se animan ahí.
   ============================================================================ */
@keyframes kaUrgentGlow {
  0%, 100% {
    box-shadow: var(--ka-sh-card),
                0 0 0 0 rgba(255, 59, 48, 0.0);
  }
  50% {
    box-shadow: var(--ka-sh-card),
                0 0 0 4px rgba(255, 59, 48, 0.22),
                0 6px 22px rgba(255, 59, 48, 0.18);
  }
}

#kanbanLicitacionesSection .kanban-card-stacked.urgencia-roja,
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-vencida {
  animation: kaUrgentGlow 2.2s ease-in-out infinite !important;
  border-color: rgba(255, 59, 48, 0.30) !important;
}

/* Acento superior en rojo para reforzar la urgencia */
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-roja::before,
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-vencida::before {
  background: var(--ka-red) !important;
  opacity: 1 !important;
  height: 4px !important;
}

/* Al pasar el ratón, se detiene el latido (la tarjeta se eleva, ya destaca) */
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-roja:hover,
#kanbanLicitacionesSection .kanban-card-stacked.urgencia-vencida:hover {
  animation: none !important;
  box-shadow: var(--ka-sh-card-h), 0 0 0 4px rgba(255, 59, 48, 0.20) !important;
}

/* Accesibilidad: sin movimiento si el usuario lo pide */
@media (prefers-reduced-motion: reduce) {
  #kanbanLicitacionesSection .kanban-card-stacked.urgencia-roja,
  #kanbanLicitacionesSection .kanban-card-stacked.urgencia-vencida {
    animation: none !important;
    box-shadow: var(--ka-sh-card), 0 0 0 3px rgba(255, 59, 48, 0.18) !important;
  }
}


/* ============================================================================
   SELECCIÓN MÚLTIPLE EN TRIAJE — barra de herramientas + tarjetas seleccionables
   ============================================================================ */
#kanbanLicitacionesSection .kanban-triaje-tools {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
  padding: 6px 8px !important;
}
#kanbanLicitacionesSection .kanban-triaje-tools .triaje-sel-actions {
  align-items: center !important;
  gap: 6px !important;
}
#kanbanLicitacionesSection .kanban-triaje-tools .triaje-sel-count {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--ka-text-2, #6e6e73) !important;
}
/* Botones de la barra (ganan a la regla naranja global del panel) */
#kanbanLicitacionesSection .triaje-sel-btn,
#kanbanLicitacionesSection button.triaje-sel-btn {
  padding: 6px 12px !important;
  border-radius: 980px !important;
  border: 1px solid rgba(0,0,0,.14) !important;
  background: #fff !important;
  background-image: none !important;
  color: #1d1d1f !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  box-shadow: 0 1px 2px rgba(0,0,0,.05) !important;
  transition: background .15s ease, border-color .15s ease, transform .1s ease !important;
}
#kanbanLicitacionesSection .triaje-sel-btn:hover { transform: translateY(-1px) !important; }
#kanbanLicitacionesSection .triaje-sel-del,
#kanbanLicitacionesSection button.triaje-sel-del {
  background: linear-gradient(135deg, #ff5b52 0%, #ff3b30 100%) !important;
  background-image: linear-gradient(135deg, #ff5b52 0%, #ff3b30 100%) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 4px 12px rgba(255,59,48,.30) !important;
}
[data-theme="dark"] #kanbanLicitacionesSection .triaje-sel-btn { background: #2c2c2e !important; color: #f5f5f7 !important; border-color: rgba(255,255,255,.18) !important; }

/* En modo selección: las tarjetas de Triaje muestran un círculo de selección */
#kanban-col-Triaje.modo-seleccion .kanban-card { cursor: pointer !important; position: relative !important; }
#kanban-col-Triaje.modo-seleccion .kanban-card::after {
  content: "" !important;
  position: absolute !important;
  top: 8px !important; right: 8px !important;
  width: 22px !important; height: 22px !important;
  border-radius: 50% !important;
  border: 2px solid rgba(0,0,0,.25) !important;
  background: rgba(255,255,255,.9) !important;
  z-index: 5 !important;
  transition: background .12s ease, border-color .12s ease !important;
}
#kanban-col-Triaje.modo-seleccion .kanban-card.triaje-seleccionada {
  box-shadow: 0 0 0 3px rgba(255,59,48,.55) !important;
}
#kanban-col-Triaje.modo-seleccion .kanban-card.triaje-seleccionada::after {
  content: "✓" !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: #ff3b30 !important;
  border-color: #ff3b30 !important;
  color: #fff !important;
  font-size: 13px !important; font-weight: 800 !important;
}

/* Modal ligero para el motivo común */
.triaje-motivo-overlay {
  position: fixed !important; inset: 0 !important;
  background: rgba(0,0,0,.45) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  z-index: 2000 !important;
  -webkit-backdrop-filter: blur(4px) !important; backdrop-filter: blur(4px) !important;
}
.triaje-motivo-modal {
  width: 92% !important; max-width: 440px !important;
  background: #fff !important;
  border-radius: 18px !important;
  padding: 24px !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.30) !important;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif !important;
}
.triaje-motivo-modal h3 { margin: 0 0 8px !important; font-size: 1.1rem !important; font-weight: 700 !important; color: #1d1d1f !important; letter-spacing: -.02em !important; }
.triaje-motivo-modal p { margin: 0 0 14px !important; font-size: .88rem !important; color: #6e6e73 !important; line-height: 1.45 !important; }
.triaje-motivo-text {
  width: 100% !important; box-sizing: border-box !important;
  padding: 11px 13px !important; border: 1px solid rgba(0,0,0,.16) !important;
  border-radius: 12px !important; font-size: .92rem !important; resize: vertical !important;
  font-family: inherit !important; color: #1d1d1f !important; outline: none !important;
}
.triaje-motivo-text:focus { border-color: #e88732 !important; box-shadow: 0 0 0 3px rgba(232,135,50,.22) !important; }
.triaje-motivo-actions { display: flex !important; justify-content: flex-end !important; gap: 10px !important; margin-top: 16px !important; }
.triaje-motivo-actions button { padding: 9px 18px !important; border-radius: 980px !important; font-size: .9rem !important; font-weight: 600 !important; cursor: pointer !important; border: 1px solid rgba(0,0,0,.14) !important; background: #fff !important; color: #1d1d1f !important; }
.triaje-motivo-ok { border: none !important; background: linear-gradient(135deg, #ff5b52 0%, #ff3b30 100%) !important; color: #fff !important; box-shadow: 0 4px 12px rgba(255,59,48,.30) !important; }
.triaje-motivo-ok:disabled { opacity: .5 !important; cursor: not-allowed !important; box-shadow: none !important; }
[data-theme="dark"] .triaje-motivo-modal { background: #1c1c1e !important; }
[data-theme="dark"] .triaje-motivo-modal h3 { color: #f5f5f7 !important; }
[data-theme="dark"] .triaje-motivo-text { background: #2c2c2e !important; color: #f5f5f7 !important; border-color: rgba(255,255,255,.18) !important; }

/* ============================================================================
   TARJETA ESTANCADA — días sin moverse en una fase de trabajo activa
   ============================================================================ */
#kanbanLicitacionesSection .kanban-card.tarjeta-estancada {
  box-shadow: var(--ka-sh-card, 0 1px 3px rgba(0,0,0,.08)), inset 3px 0 0 #a855f7 !important;
}
#kanbanLicitacionesSection .kanban-card.tarjeta-estancada::before {
  content: "🐌 " attr(data-dias-estancada) "d sin mover";
  position: absolute;
  top: 6px; right: 6px;
  z-index: 4;
  background: #a855f7;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 980px;
  letter-spacing: .01em;
  box-shadow: 0 2px 6px rgba(168,85,247,.35);
  pointer-events: none;
}
#kanbanLicitacionesSection .kanban-card.tarjeta-estancada { position: relative; }
/* Si además está urgente por fecha, la urgencia (roja) manda visualmente:
   movemos el badge de estancada abajo para no solaparse con el de urgencia. */
#kanbanLicitacionesSection .kanban-card.urgencia-roja.tarjeta-estancada::before,
#kanbanLicitacionesSection .kanban-card.urgencia-vencida.tarjeta-estancada::before {
  top: auto; bottom: 6px;
}
