/* ============================================================
   PÁGINAS · piezas específicas de soluciones y perfiles
   ============================================================ */

/* Coincidencia del motor adaptativo */
.card--match { border-color: var(--accent-line); box-shadow: var(--sh-sm); }
.card--match::before { transform: scaleY(1); }

.link-reset {
  color: var(--accent-ink); font-weight: var(--weight-semi);
  text-decoration: underline; text-underline-offset: .2em;
  font-size: inherit; padding: 0 .15em;
}
.link-reset:hover { color: var(--accent-press); }

/* Metadatos de una solución */
.solucion-meta {
  margin: var(--sp-5) 0 0; padding-top: var(--sp-4);
  border-top: var(--border); display: grid; gap: var(--sp-3);
}
.solucion-meta dt {
  font-size: var(--fs-micro); text-transform: uppercase;
  letter-spacing: var(--tracking-caps); color: var(--ink-subtle);
  font-weight: var(--weight-bold);
}
.solucion-meta dd { margin: var(--sp-1) 0 0; font-size: var(--fs-sm); color: var(--ink); }

/* Detalle extendido de solución (soluciones.html) */
.solucion-detalle { scroll-margin-top: 8rem; padding-block: var(--sp-9); border-top: var(--border); }
.solucion-detalle:first-of-type { border-top: 0; }
.solucion-detalle__head { display: flex; gap: var(--sp-5); align-items: flex-start; }
.solucion-detalle__icon {
  width: 58px; height: 58px; flex-shrink: 0; border-radius: var(--r-md);
  display: grid; place-items: center; background: var(--navy-700); color: var(--white);
}
.entregables { list-style: none; padding: 0; display: grid; gap: var(--sp-3); }
.entregables li { display: flex; gap: var(--sp-3); align-items: flex-start;
  font-size: var(--fs-sm); color: var(--ink-muted); }
.entregables svg { color: var(--accent); flex-shrink: 0; margin-top: 2px; }

/* ── Miga de pan ── */
.breadcrumb {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2);
  font-size: var(--fs-micro); color: var(--ink-subtle);
  text-transform: uppercase; letter-spacing: .06em; margin-bottom: var(--sp-6);
}
.breadcrumb a { color: var(--ink-muted); }
.breadcrumb svg { opacity: .5; }

/* ── Detalle de perfil ── */
.perfil-head { max-width: var(--measure); margin-bottom: var(--sp-8); }
.perfil-head h1 { font-size: var(--fs-h1); }

.perfil-grid {
  display: grid; gap: var(--sp-9);
  grid-template-columns: minmax(0, 1fr) minmax(0, 340px);
  margin-top: var(--sp-8); align-items: start;
}
@media (max-width: 980px) { .perfil-grid { grid-template-columns: 1fr; gap: var(--sp-7); } }
.perfil-aside { position: sticky; top: 100px; }
@media (max-width: 980px) { .perfil-aside { position: static; } }

.perfil-h2 {
  font-size: var(--fs-h3); margin-bottom: var(--sp-4);
  padding-bottom: var(--sp-3); border-bottom: var(--border);
}
.perfil-h3 {
  font-size: var(--fs-sm); text-transform: uppercase;
  letter-spacing: var(--tracking-caps); color: var(--ink-subtle);
  font-weight: var(--weight-bold); margin-bottom: var(--sp-4);
}
.perfil-main p { color: var(--ink-muted); max-width: var(--measure); }

.lista-sintomas { list-style: none; padding: 0; display: grid; gap: var(--sp-3); }
.lista-sintomas li {
  display: flex; gap: var(--sp-3); align-items: flex-start;
  padding: var(--sp-4); background: var(--paper-alt);
  border-radius: var(--r-md); font-size: var(--fs-sm); color: var(--ink);
  margin-top: 0;
}
.lista-sintomas svg { color: var(--accent); flex-shrink: 0; margin-top: 1px; }

.lista-dolores { list-style: none; padding: 0; display: grid; gap: var(--sp-4); }
.lista-dolores li { margin-top: 0; }
.lista-dolores strong { display: block; font-size: var(--fs-sm); margin-bottom: var(--sp-1); }
.lista-dolores span { display: block; font-size: var(--fs-micro);
  color: var(--ink-muted); line-height: 1.55; }

.lista-sols { list-style: none; padding: 0; display: grid; gap: var(--sp-2); }
.lista-sols li { margin-top: 0; }
.lista-sols a {
  display: flex; gap: var(--sp-3); align-items: flex-start;
  padding: var(--sp-4); border: var(--border); border-radius: var(--r-md);
  color: var(--ink); transition: border-color var(--dur-fast), background var(--dur-fast);
}
.lista-sols a:hover { text-decoration: none; border-color: var(--navy-300); background: var(--navy-050); }
.lista-sols svg { color: var(--accent); flex-shrink: 0; margin-top: 2px; }
.lista-sols strong { display: block; font-size: var(--fs-sm); margin-bottom: 2px; }
.lista-sols span { font-size: var(--fs-micro); color: var(--ink-muted); line-height: 1.5; }

/* ── Consultas de investigación (dorks) ── */
.dorks { display: grid; gap: var(--sp-2); margin-top: var(--sp-4); }
.dork {
  display: block; padding: var(--sp-3) var(--sp-4);
  background: var(--navy-900); color: #C9D8EE; border: 0;
  border-left: 3px solid var(--navy-500); border-radius: 0 var(--r-sm) var(--r-sm) 0;
  font-size: var(--fs-micro); line-height: 1.6;
  overflow-x: auto; white-space: pre; -webkit-font-smoothing: antialiased;
}
.dork--in { border-left-color: var(--accent); }

/* ── Buscador de perfiles ── */
.buscador { position: relative; max-width: 520px; }
.buscador svg { position: absolute; left: var(--sp-4); top: 50%;
  transform: translateY(-50%); color: var(--ink-subtle); pointer-events: none; }
.buscador .input { padding-left: 2.9rem; padding-block: .85rem; }

/* ── Bloque de contacto ── */
.contacto-grid {
  display: grid; gap: var(--sp-8);
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  align-items: start;
}
@media (max-width: 900px) { .contacto-grid { grid-template-columns: 1fr; } }
.form-grid { display: grid; gap: var(--sp-5); grid-template-columns: 1fr 1fr; }
.form-grid .full { grid-column: 1 / -1; }
@media (max-width: 620px) { .form-grid { grid-template-columns: 1fr; } }
.dato-contacto { display: flex; gap: var(--sp-3); align-items: flex-start; font-size: var(--fs-sm); }
.dato-contacto svg { color: var(--accent-on-dark); flex-shrink: 0; margin-top: 2px; }

