/* ══ LA PANTALLA DEL E.V.O ══
   Paleta del PANEL, no la del generador: ese diseño es de otra época.
   Cada var() lleva respaldo porque una variable inexistente no falla,
   desaparece — y el elemento se queda invisible. */

.evo-top{ position:sticky; top:0; z-index:5; padding:12px 0 10px;
  background:var(--bg,#0b1220); border-bottom:1px solid var(--border,#26354a); }
.evo-avance{ height:6px; border-radius:9999px; background:var(--border,#26354a); overflow:hidden; }
.evo-avance i{ display:block; height:100%; background:var(--marca-principal);
  border-radius:9999px; transition:width .25s ease; }
.evo-avance-txt{ display:block; margin-top:6px; font-size:12.5px; color:var(--text-3,#8da2bd); }

.evo-pasos{ display:flex; gap:8px; overflow-x:auto; padding:10px 0 2px; }
.evo-paso{ flex:0 0 auto; display:flex; align-items:center; gap:7px; padding:8px 13px;
  border-radius:9999px; border:1px solid var(--border,#26354a);
  background:var(--superficie,#121c2e); color:var(--text-2,#b9c7da);
  font-family:inherit; font-size:13px; font-weight:600; cursor:pointer; }
.evo-paso:hover{ border-color:var(--marca-principal); }
.evo-paso.activo{ background:var(--marca-principal); border-color:var(--marca-principal);
  color:var(--marca-sobre-principal); font-weight:600; }
.evo-paso.listo{ border-color:#16C47F; }
.evo-paso-n{ width:19px; height:19px; border-radius:9999px; display:grid; place-items:center;
  background:rgba(255,255,255,.1); font-size:11px; font-weight:800; }
.evo-paso.activo .evo-paso-n{ background:rgba(6,42,39,.16); }
.evo-paso-f{ font-size:11px; font-weight:600; color:var(--marca-principal); }
.evo-paso.activo .evo-paso-f{ color:var(--marca-sobre-principal); }

.evo-mod-cab{ display:flex; align-items:baseline; gap:10px; margin:18px 0 4px; flex-wrap:wrap; }
.evo-mod-cab h2{ margin:0; font-size:21px; font-weight:800; color:var(--text,#f1f5f9); }
.evo-mod-d{ font-size:12px; color:var(--text-3,#8da2bd); }

.evo-grupo{ margin-top:18px; }
.evo-grupo h3{ margin:0 0 10px; font-size:13px; font-weight:700; letter-spacing:.3px;
  text-transform:uppercase; color:var(--text-3,#8da2bd); }

.evo-rx{ border:1px solid var(--border,#26354a); border-radius:14px; padding:14px 15px;
  margin-bottom:11px; background:var(--superficie,#121c2e); }
.evo-rx.resuelto{ border-color:rgba(22,196,127,.45); }
.evo-rx-cab{ display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:7px; }
.evo-rx-id{ font-size:11.5px; font-weight:800; letter-spacing:.4px; color:var(--text-3,#8da2bd); }
.evo-rx-sev{ font-size:11px; font-weight:800; padding:3px 9px; border-radius:9999px;
  background:rgba(255,255,255,.07); color:var(--text-2,#b9c7da); }
.evo-rx-sev.crítica{ background:rgba(255,77,79,.17); color:var(--danger-txt); }
.evo-rx-sev.alta{ background:rgba(255,159,28,.17); color:var(--warn); }
.evo-rx-sev.media{ background:var(--proceso-suave); color:var(--proceso-texto); }
.evo-rx-t{ margin:0 0 7px; font-size:15px; line-height:1.45; color:var(--text,#f1f5f9); }
/* La explicación del reactivo: por qué importa. No es relleno — es lo
   que evita que quien levanta califique a ojo. */
.evo-rx-k{ margin:0 0 11px; font-size:13px; line-height:1.5; color:var(--text-3,#8da2bd); }

.evo-ops{ display:flex; flex-wrap:wrap; gap:7px; }
.evo-op{ padding:8px 13px; border-radius:10px; border:1px solid var(--border,#26354a);
  background:transparent; color:var(--text-2,#b9c7da); font-family:inherit;
  font-size:13px; font-weight:600; cursor:pointer; }
.evo-op:hover{ border-color:var(--text-3,#8da2bd); }
.evo-op.sel{ font-weight:800; }
.evo-op.sel.ok{ background:var(--exito-suave); border-color:var(--ok); color:var(--ok-txt); }
.evo-op.sel.part{ background:rgba(255,159,28,.15); border-color:var(--warn); color:var(--warn); }
.evo-op.sel.no{ background:rgba(255,77,79,.16); border-color:var(--danger); color:var(--danger-txt); }
.evo-op.sel.un{ background:rgba(141,162,189,.15); border-color:#8da2bd; color:#b9c7da; }
.evo-op.na{ margin-left:auto; font-size:12.5px; }
.evo-op.na.sel{ background:rgba(141,162,189,.2); border-color:#8da2bd; }

.evo-nota{ width:100%; margin-top:9px; padding:8px 11px; border-radius:10px;
  border:1px solid var(--border,#26354a); background:var(--bg,#0b1220);
  color:var(--text,#f1f5f9); font-family:inherit; font-size:13.5px; resize:vertical; }

.evo-pie{ position:sticky; bottom:0; display:flex; gap:10px; padding:14px 0;
  background:var(--bg,#0b1220); border-top:1px solid var(--border,#26354a); }
.evo-pie .btn{ flex:1; }

/* ── EL PERÍMETRO ── */
.evo-poli{ border:1px solid var(--border,#26354a); border-radius:14px; padding:13px 15px;
  margin:14px 0 4px; background:var(--superficie,#121c2e); }
.evo-poli-cab b{ display:block; font-size:14.5px; color:var(--text,#f1f5f9); }
.evo-poli-cab span{ display:block; margin-top:3px; font-size:12.5px; line-height:1.45;
  color:var(--text-3,#8da2bd); }
#evo-poli-lista{ display:flex; flex-wrap:wrap; gap:6px; margin:11px 0; min-height:26px; }
.evo-punto{ display:inline-flex; align-items:center; gap:5px; padding:4px 7px 4px 10px;
  border-radius:9999px; background:color-mix(in srgb, var(--marca-principal) 14%, transparent);
  border:1px solid var(--marca-principal);
  color:var(--marca-principal-texto); font-size:12.5px; font-weight:600; }
.evo-punto button{ border:0; background:transparent; color:inherit; cursor:pointer;
  font-size:15px; line-height:1; padding:0 2px; }
.evo-poli-vacio{ font-size:12.5px; color:var(--text-3,#8da2bd); }
.evo-poli-acts{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.evo-poli-acts span{ font-size:12.5px; color:var(--text-3,#8da2bd); }

/* ── LA EVIDENCIA ──
   Un hallazgo con foto se defiende solo; sin foto es la palabra de
   quien levantó contra la de quien lo niega. */
.evo-fotos{ display:flex; flex-wrap:wrap; gap:7px; align-items:center; margin-top:9px; }
.evo-foto{ position:relative; width:54px; height:54px; border-radius:9px; overflow:hidden;
  border:1px solid var(--border,#26354a); }
.evo-foto img{ width:100%; height:100%; object-fit:cover; display:block; }
.evo-foto button{ position:absolute; top:1px; right:1px; width:17px; height:17px;
  border:0; border-radius:9999px; background:rgba(14,26,46,.82); color:#fff;
  font-size:13px; line-height:1; cursor:pointer; padding:0; }
.evo-addfoto{ display:inline-flex; align-items:center; gap:5px; padding:7px 12px;
  border-radius:9px; border:1px dashed var(--border,#26354a); background:transparent;
  color:var(--text-3,#8da2bd); font-family:inherit; font-size:12.5px; font-weight:600;
  cursor:pointer; }
.evo-addfoto:hover{ border-color:var(--marca-principal); color:var(--marca-principal-texto); }
.evo-foto-tope{ font-size:12px; color:var(--text-3,#8da2bd); }

/* ── LO QUE EL CRO YA VIO ──
   No califica nada: dice dónde mirar. Entre CRO y E.V.O gana el E.V.O. */
.evo-senal{ border-left:3px solid var(--border,#26354a); border-radius:0 9px 9px 0;
  padding:9px 12px; margin:9px 0 0; font-size:13px; line-height:1.5;
  background:rgba(255,255,255,.03); color:var(--text-2,#b9c7da); }
.evo-senal b{ display:block; color:var(--text,#f1f5f9); font-size:13px; margin-bottom:2px; }
.evo-senal.alta{ border-left-color:var(--danger); background:rgba(255,77,79,.09); }
.evo-senal.media{ border-left-color:var(--proceso); background:var(--proceso-suave); }
.evo-senal.baja{ border-left-color:var(--text-3); background:rgba(148,163,184,.08); }
/* C4 no tiene antecedente en el CRO. Gris, nunca verde: un verde sin
   dato en la dimensión que fuerza CRÍTICO es peor que un hueco. */
.evo-senal.gris{ border-left-color:var(--text-3,#8da2bd); }
