/* ==========================================================================
   EVIDENCIA · capa de componentes 2026 para SecureDatalytics
   Se carga DESPUÉS de quantum_precision.css y solo agrega/afina componentes.
   ========================================================================== */

:root {
  --ev-ok: #34D399;          /* verificado */
  --ev-warn: #FBBF24;        /* frontera / atención */
  --ev-muted: rgba(255, 255, 255, .62);
  --ev-soft: rgba(255, 255, 255, .78);
  --ev-line: rgba(255, 255, 255, .10);
  --ev-mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
}

/* ---------- Tipografía más legible para textos largos ---------- */
body { font-size: 1.02rem; line-height: 1.7; }
p { color: var(--ev-soft); }
.ev-h1 { font-size: clamp(2.3rem, 5.2vw, 4.4rem); line-height: 1.05; letter-spacing: -.035em; }
.ev-h2 { font-size: clamp(1.9rem, 3.6vw, 3rem); line-height: 1.1; }
.ev-h3 { font-size: 1.25rem; letter-spacing: -.01em; line-height: 1.3; }
.ev-lead { font-size: clamp(1.05rem, 1.6vw, 1.25rem); color: rgba(255,255,255,.74); max-width: 720px; }
.ev-dim { color: rgba(255,255,255,.35); }
.ev-muted { color: var(--ev-muted); }
.ev-center { text-align: center; }
.ev-center .ev-lead { margin-left: auto; margin-right: auto; }
.ev-section { padding: 5.5rem 0 1rem; }
.ev-section-head { margin-bottom: 3rem; }
.ev-kicker { font-size: .78rem; letter-spacing: .22em; text-transform: uppercase; font-weight: 700; color: var(--qp-aura); display: block; margin-bottom: 1rem; }

/* Tarjetas más sobrias: menos salto al pasar el mouse */
.quantum-card { padding: 2.25rem; }
.quantum-card:hover { transform: translateY(-4px); }
.ev-static:hover { transform: none; }

/* ---------- Navegación ---------- */
.nav-quantum { padding: .9rem 0; }
.nav-link-qp { font-size: .78rem; }
.nav-link-qp.active { color: #fff; box-shadow: inset 0 -2px 0 var(--qp-aura); padding-bottom: 4px; }
@media (max-width: 1199px) {
  .nav-quantum .navbar-collapse { padding-bottom: 1.2rem; }
}

/* ---------- Hero ---------- */
.ev-hero { padding: 140px 0 70px; position: relative; overflow: hidden; }
.ev-hero-sub { padding: 140px 0 56px; border-bottom: 1px solid var(--qp-border); position: relative; overflow: hidden; }
.ev-badges { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: 2rem; }
.ev-badges span {
  font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; padding: .45rem .85rem;
  border-radius: 999px; border: 1px solid var(--ev-line); color: rgba(255,255,255,.62);
}
.ev-cred {
  display: flex; gap: .9rem; align-items: center; margin-top: 2rem; padding: .9rem 1.1rem;
  border: 1px solid var(--ev-line); border-radius: 12px; background: rgba(255,255,255,.02); max-width: 620px;
}
.ev-cred img { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; border: 2px solid var(--qp-border-active); }
.ev-cred small { display: block; color: var(--ev-muted); line-height: 1.45; }
.ev-cred strong { color: #fff; }

/* ---------- Iconos ---------- */
.ev-icon {
  width: 48px; height: 48px; min-width: 48px; border-radius: 12px; display: inline-flex; align-items: center;
  justify-content: center; background: rgba(59,130,246,.10); border: 1px solid var(--qp-border);
}
.ev-icon i { font-size: 1.3rem; color: var(--qp-aura); }
.ev-icon.ok { background: rgba(52,211,153,.10); }
.ev-icon.ok i { color: var(--ev-ok); }
.ev-icon.warn { background: rgba(251,191,36,.10); }
.ev-icon.warn i { color: var(--ev-warn); }

/* ---------- Listas ---------- */
.ev-list { list-style: none; padding: 0; margin: 1.1rem 0 0; }
.ev-list li { display: flex; gap: .65rem; align-items: flex-start; margin-bottom: .55rem; color: var(--ev-soft); font-size: .97rem; }
.ev-list li i { color: var(--qp-aura); margin-top: .2rem; }
.ev-list.ok li i { color: var(--ev-ok); }
.ev-list.no li i { color: rgba(255,255,255,.35); }

/* ---------- Paquetes ---------- */
.ev-pkg { display: flex; flex-direction: column; height: 100%; }
.ev-pkg-num { font-family: var(--ev-mono); font-size: .8rem; color: var(--qp-aura); letter-spacing: .1em; }
.ev-pkg h3 { margin: .6rem 0 .8rem; }
.ev-pkg .ev-for { font-size: .85rem; color: var(--ev-muted); margin-bottom: .9rem; }
.ev-pkg-foot { margin-top: auto; padding-top: 1.4rem; border-top: 1px solid var(--ev-line); display: flex; flex-wrap: wrap; gap: .8rem; align-items: center; justify-content: space-between; }
.ev-price { display: inline-flex; flex-direction: column; line-height: 1.2; }
.ev-price small { font-size: .7rem; text-transform: uppercase; letter-spacing: .14em; color: var(--ev-muted); }
.ev-price b { color: #fff; font-size: 1.15rem; }
.ev-time { font-size: .82rem; color: var(--ev-muted); }
.ev-link { color: var(--qp-aura); text-decoration: none; font-weight: 600; font-size: .92rem; }
.ev-link:hover { color: #fff; }
.ev-pkg.featured { border-color: var(--qp-border-active); background: linear-gradient(180deg, rgba(59,130,246,.10), rgba(22,27,34,.7) 45%); }

/* ---------- Pasos / línea de tiempo ---------- */
.ev-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; counter-reset: step; }
.ev-step { position: relative; padding: 2rem; border: 1px solid var(--ev-line); border-radius: 14px; background: rgba(22,27,34,.55); }
.ev-step::before {
  counter-increment: step; content: counter(step);
  position: absolute; top: -18px; left: 2rem; width: 36px; height: 36px; border-radius: 50%;
  background: var(--qp-aura); color: #fff; font-weight: 800; display: flex; align-items: center; justify-content: center;
  box-shadow: 0 0 0 6px var(--qp-midnight);
}
.ev-step h3 { font-size: 1.15rem; margin: .6rem 0 .6rem; }
.ev-step .ev-tag { display: inline-block; font-size: .72rem; padding: .25rem .6rem; border-radius: 999px; border: 1px solid var(--ev-line); color: var(--ev-muted); margin-top: .6rem; }
@media (max-width: 991px) { .ev-steps { grid-template-columns: 1fr; gap: 2.2rem; } }

/* ---------- Comparación papel vs evidencia ---------- */
.ev-compare { width: 100%; border-collapse: separate; border-spacing: 0; font-size: .95rem; }
.ev-compare th, .ev-compare td { padding: 1rem 1.1rem; border-bottom: 1px solid var(--ev-line); vertical-align: top; }
.ev-compare thead th { font-size: .75rem; text-transform: uppercase; letter-spacing: .14em; color: var(--ev-muted); font-weight: 700; }
.ev-compare td:first-child { color: #fff; font-weight: 600; width: 26%; }
.ev-compare td:nth-child(2) { color: rgba(255,255,255,.55); }
.ev-compare td:nth-child(3) { color: #fff; }
.ev-compare td:nth-child(3) i { color: var(--ev-ok); margin-right: .35rem; }
.ev-table-wrap { overflow-x: auto; border: 1px solid var(--ev-line); border-radius: 14px; background: rgba(22,27,34,.55); }
.ev-table-wrap .ev-compare { min-width: 640px; }

/* ---------- Tabla de catálogo ---------- */
.ev-catalog th, .ev-catalog td { padding: .95rem 1rem; border-bottom: 1px solid var(--ev-line); font-size: .93rem; vertical-align: top; }
.ev-catalog { width: 100%; min-width: 760px; border-collapse: collapse; }
.ev-catalog thead th { background: rgba(255,255,255,.03); color: #fff; font-size: .78rem; text-transform: uppercase; letter-spacing: .1em; }
.ev-catalog td { color: var(--ev-soft); }
.ev-catalog td b { color: #fff; }
.ev-catalog a { color: var(--qp-aura); text-decoration: none; }

/* ---------- Frontera de responsabilidad ---------- */
.ev-boundary { border: 1px solid rgba(251,191,36,.28); background: rgba(251,191,36,.05); border-radius: 14px; padding: 1.8rem 2rem; }
.ev-boundary .ev-kicker { color: var(--ev-warn); }
.ev-boundary p { margin-bottom: .6rem; }
.ev-cols-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
@media (max-width: 767px) { .ev-cols-2 { grid-template-columns: 1fr; } }

/* ---------- Norma / dato con fuente ---------- */
.ev-fact { border-left: 2px solid var(--qp-aura); padding: .2rem 0 .2rem 1.2rem; }
.ev-fact b { color: #fff; }
.ev-fact small { display: block; color: rgba(255,255,255,.45); margin-top: .4rem; font-size: .8rem; }

/* ---------- Preguntas frecuentes ---------- */
.ev-faq details { border: 1px solid var(--ev-line); border-radius: 12px; background: rgba(22,27,34,.55); margin-bottom: .8rem; transition: border-color .3s; }
.ev-faq details[open] { border-color: var(--qp-border-active); }
.ev-faq summary { cursor: pointer; list-style: none; padding: 1.15rem 1.4rem; font-weight: 700; color: #fff; display: flex; justify-content: space-between; gap: 1rem; }
.ev-faq summary::-webkit-details-marker { display: none; }
.ev-faq summary::after { content: "+"; color: var(--qp-aura); font-size: 1.4rem; line-height: 1; }
.ev-faq details[open] summary::after { content: "–"; }
.ev-faq .ev-a { padding: 0 1.4rem 1.2rem; }
.ev-faq .ev-a p:last-child { margin-bottom: 0; }

/* ---------- Carpeta del expediente ---------- */
.ev-folders { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.ev-folder { border: 1px solid var(--ev-line); border-radius: 12px; padding: 1.3rem; background: rgba(255,255,255,.02); }
.ev-folder .n { font-family: var(--ev-mono); color: var(--qp-aura); font-size: .8rem; }
.ev-folder b { display: block; color: #fff; margin: .3rem 0 .35rem; }
.ev-folder span { font-size: .88rem; color: var(--ev-muted); line-height: 1.5; display: block; }
@media (max-width: 991px) { .ev-folders { grid-template-columns: 1fr 1fr; } }
@media (max-width: 575px) { .ev-folders { grid-template-columns: 1fr; } }

/* ---------- Código / hash ---------- */
.ev-code { font-family: var(--ev-mono); font-size: .82rem; background: #06080B; border: 1px solid var(--ev-line); border-radius: 10px; padding: 1rem 1.2rem; color: #A7F3D0; overflow-x: auto; white-space: pre; }

/* ---------- Banda de llamado ---------- */
.ev-cta { border-radius: 18px; padding: 3.5rem 2.5rem; text-align: center; border: 1px solid var(--qp-border-active);
  background: radial-gradient(ellipse at top, rgba(59,130,246,.18), rgba(22,27,34,.75) 60%); }
.ev-cta h2 { margin-bottom: 1rem; }
@media (max-width: 767px) { .ev-cta { padding: 2.4rem 1.4rem; } }

/* ---------- Índice lateral en subpáginas ---------- */
.ev-aside { position: sticky; top: 110px; }
.ev-aside .quantum-card { padding: 1.6rem; }
.ev-aside dl { margin: 0; }
.ev-aside dt { font-size: .72rem; text-transform: uppercase; letter-spacing: .14em; color: var(--ev-muted); font-weight: 700; margin-top: 1rem; }
.ev-aside dt:first-child { margin-top: 0; }
.ev-aside dd { color: #fff; margin: .2rem 0 0; font-weight: 600; }
.ev-prose h2 { font-size: clamp(1.5rem, 2.6vw, 2.1rem); margin: 3rem 0 1.1rem; }
.ev-prose h2:first-child { margin-top: 0; }
.ev-prose h3 { font-size: 1.15rem; margin: 1.8rem 0 .7rem; }
.ev-prose strong { color: #fff; }

/* ---------- Figura SVG ---------- */
.ev-figure { border: 1px solid var(--ev-line); border-radius: 16px; padding: 1.6rem; background: rgba(22,27,34,.6); }
.ev-figure figcaption { font-size: .85rem; color: var(--ev-muted); margin-top: 1rem; }
.ev-figure svg { display: block; width: 100%; height: auto; }

/* ---------- Pie de página ---------- */
.ev-footer { border-top: 1px solid var(--qp-border); padding: 4rem 0 2.5rem; margin-top: 5rem; }
.ev-footer h6 { font-size: .74rem; text-transform: uppercase; letter-spacing: .16em; color: #fff; margin-bottom: 1rem; }
.ev-footer a { display: block; color: rgba(255,255,255,.55); text-decoration: none; font-size: .9rem; margin-bottom: .45rem; }
.ev-footer a:hover { color: #fff; }
.ev-footer p { font-size: .88rem; color: rgba(255,255,255,.5); }
.ev-footer .ev-legal { border-top: 1px solid var(--ev-line); margin-top: 2.5rem; padding-top: 1.6rem; font-size: .8rem; color: rgba(255,255,255,.42); }

/* Botón flotante de WhatsApp */
.ev-wa { position: fixed; right: 22px; bottom: 84px; z-index: 999; width: 52px; height: 52px; border-radius: 50%;
  background: #1FAF55; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 1.5rem;
  box-shadow: 0 10px 30px rgba(0,0,0,.4); text-decoration: none; }
.ev-wa:hover { color: #fff; transform: scale(1.06); }

@media (max-width: 575px) {
  .quantum-card { padding: 1.6rem; }
  .ev-hero, .ev-hero-sub { padding-top: 115px; }
}

/* ---------- Ajustes v1.1 ---------- */
.nav-link-qp { white-space: nowrap; }
.ev-h1 { font-size: clamp(2.2rem, 4.4vw, 3.7rem); }
.ev-monogram { width: 46px; height: 46px; min-width: 46px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
  font-weight: 800; color: #fff; background: linear-gradient(135deg, #3B82F6, #7C3AED); letter-spacing: .02em; }
.ev-idcard { border: 1px solid var(--qp-border-active); border-radius: 16px; padding: 1.8rem; background: linear-gradient(160deg, rgba(59,130,246,.14), rgba(22,27,34,.8) 55%); }
.ev-idcard .ev-monogram { width: 72px; height: 72px; font-size: 1.5rem; margin-bottom: 1.2rem; }
.ev-idcard dl { margin: 0; }
.ev-idcard dt { font-size: .7rem; text-transform: uppercase; letter-spacing: .14em; color: var(--ev-muted); margin-top: .9rem; }
.ev-idcard dd { color: #fff; margin: .15rem 0 0; font-weight: 600; font-size: .95rem; }
.ev-crumb { font-size: .82rem; color: var(--ev-muted); margin-bottom: 1.4rem; }
.ev-crumb a { color: var(--ev-muted); text-decoration: none; }
.ev-crumb a:hover { color: #fff; }
.ev-crumb span { margin: 0 .5rem; opacity: .5; }
@media (max-width: 991px) {
  .row.g-5 { --bs-gutter-x: 1.5rem; --bs-gutter-y: 2.25rem; }
  .ev-section { padding-top: 4rem; }
}
@media (max-width: 575px) {
  .container { padding-left: 16px; padding-right: 16px; }
  .row.g-4, .row.g-5 { --bs-gutter-x: 1rem; }
  .ev-cta .btn-precision, .ev-cta .btn-outline-qp { width: 100%; justify-content: center; }
}

/* ---------- v1.2 · Lectura en 10 segundos ---------- */
.ev-h1-xl { font-size: clamp(2rem, 3.8vw, 3.1rem); line-height: 1.08; letter-spacing: -.03em; }
.ev-sub { font-size: clamp(1.08rem, 1.5vw, 1.3rem); color: rgba(255,255,255,.78); max-width: 640px; line-height: 1.6; }
.ev-who { display: inline-flex; flex-wrap: wrap; gap: .45rem; margin-top: 1.2rem; }
.ev-who span { font-size: .85rem; padding: .35rem .75rem; border-radius: 999px; background: rgba(255,255,255,.05); border: 1px solid var(--ev-line); color: rgba(255,255,255,.8); }

.ev-tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.1rem; }
.ev-tile { display: flex; flex-direction: column; gap: .7rem; padding: 1.6rem; border-radius: 16px; text-decoration: none;
  border: 1px solid var(--ev-line); background: rgba(22,27,34,.7); transition: border-color .25s, transform .25s, background .25s; min-height: 100%; }
.ev-tile:hover { border-color: var(--qp-aura); transform: translateY(-3px); background: rgba(30,41,59,.75); }
.ev-tile .ico { width: 56px; height: 56px; border-radius: 14px; display: flex; align-items: center; justify-content: center; font-size: 1.6rem; }
.ev-tile .q { color: #fff; font-weight: 700; font-size: 1.12rem; line-height: 1.35; }
.ev-tile .a { color: var(--ev-muted); font-size: .92rem; line-height: 1.5; }
.ev-tile .go { margin-top: auto; display: flex; justify-content: space-between; align-items: center; padding-top: .8rem; border-top: 1px solid var(--ev-line); font-size: .85rem; }
.ev-tile .go b { color: #fff; font-weight: 700; }
.ev-tile .go span { color: var(--qp-aura); font-weight: 600; }
.ev-tile.alt { border-style: dashed; background: rgba(59,130,246,.06); }
.c-blue { background: rgba(59,130,246,.14); color: #60A5FA; }
.c-green { background: rgba(52,211,153,.14); color: #34D399; }
.c-amber { background: rgba(251,191,36,.14); color: #FBBF24; }
.c-violet { background: rgba(167,139,250,.16); color: #A78BFA; }
.c-rose { background: rgba(251,113,133,.14); color: #FB7185; }
.c-cyan { background: rgba(34,211,238,.14); color: #22D3EE; }
@media (max-width: 991px) { .ev-tiles { grid-template-columns: 1fr 1fr; } }
@media (max-width: 575px) { .ev-tiles { grid-template-columns: 1fr; } }

.ev-flow { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: stretch; gap: .8rem; }
.ev-flow .st { text-align: center; padding: 1.8rem 1.2rem; border-radius: 16px; border: 1px solid var(--ev-line); background: rgba(22,27,34,.7); }
.ev-flow .st .ico { width: 64px; height: 64px; border-radius: 50%; margin: 0 auto 1rem; display: flex; align-items: center; justify-content: center; font-size: 1.7rem; }
.ev-flow .st b { display: block; color: #fff; font-size: 1.1rem; margin-bottom: .35rem; }
.ev-flow .st span { color: var(--ev-muted); font-size: .92rem; }
.ev-flow .st em { display: inline-block; margin-top: .8rem; font-style: normal; font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; padding: .25rem .65rem; border-radius: 999px; }
.ev-flow .ar { display: flex; align-items: center; color: rgba(255,255,255,.3); font-size: 1.6rem; }
@media (max-width: 767px) { .ev-flow { grid-template-columns: 1fr; } .ev-flow .ar { justify-content: center; transform: rotate(90deg); } }

.ev-trust { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.1rem; }
.ev-trust > div { display: flex; gap: 1rem; align-items: flex-start; padding: 1.3rem; border-radius: 14px; border: 1px solid var(--ev-line); background: rgba(22,27,34,.55); }
.ev-trust b { display: block; color: #fff; margin-bottom: .2rem; }
.ev-trust span { color: var(--ev-muted); font-size: .9rem; line-height: 1.5; }
@media (max-width: 991px) { .ev-trust { grid-template-columns: 1fr; } }

.ev-svc { display: grid; grid-template-columns: 90px 1fr 220px; gap: 1.6rem; align-items: start; padding: 2rem; border-radius: 18px; border: 1px solid var(--ev-line); background: rgba(22,27,34,.7); margin-bottom: 1.2rem; scroll-margin-top: 100px; }
.ev-svc .ico { width: 80px; height: 80px; border-radius: 20px; display: flex; align-items: center; justify-content: center; font-size: 2.1rem; }
.ev-svc h3 { font-size: 1.35rem; margin: 0 0 .3rem; }
.ev-svc .for { color: var(--ev-muted); margin-bottom: 1rem; font-size: .95rem; }
.ev-svc .for strong { color: #fff; }
.ev-svc .gets { display: flex; flex-wrap: wrap; gap: .5rem; }
.ev-svc .gets span { font-size: .85rem; padding: .4rem .75rem; border-radius: 10px; background: rgba(255,255,255,.04); border: 1px solid var(--ev-line); color: rgba(255,255,255,.85); }
.ev-svc .gets i { color: var(--ev-ok); margin-right: .3rem; }
.ev-svc .side { text-align: right; }
.ev-svc .side .p { color: var(--ev-muted); font-size: .75rem; text-transform: uppercase; letter-spacing: .12em; }
.ev-svc .side .v { color: #fff; font-size: 1.5rem; font-weight: 800; line-height: 1.2; }
.ev-svc .side .t { color: var(--ev-muted); font-size: .88rem; margin: .3rem 0 1rem; }
.ev-svc.free { border-color: rgba(52,211,153,.45); background: linear-gradient(135deg, rgba(52,211,153,.09), rgba(22,27,34,.7) 55%); }
@media (max-width: 991px) { .ev-svc { grid-template-columns: 70px 1fr; } .ev-svc .ico { width: 64px; height: 64px; font-size: 1.7rem; } .ev-svc .side { grid-column: 1 / -1; text-align: left; display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; } .ev-svc .side .t { margin: 0; } }
@media (max-width: 575px) { .ev-svc { grid-template-columns: 1fr; padding: 1.5rem; } }

.ev-jump { display: flex; flex-wrap: wrap; gap: .5rem; }
.ev-jump a { text-decoration: none; font-size: .88rem; padding: .5rem .9rem; border-radius: 999px; border: 1px solid var(--ev-line); color: rgba(255,255,255,.8); }
.ev-jump a:hover { border-color: var(--qp-aura); color: #fff; }
.ev-note { font-size: .85rem; color: var(--ev-muted); }
