/* =====================================================================
   Analizador de notas (/recursos/analizador) y su resultado.
   El resultado (.az-resultado) también se usa en el Panel y en el aviso
   de las fuentes de la ficha del caso.
   ===================================================================== */
:root {
  --az-muy-buena: #1f7a5a; --az-muy-buena-c: #e3f3ec;
  --az-buena: #4d7c0f; --az-buena-c: #eef6df;
  --az-regular: #a15c07; --az-regular-c: #fdf3e1;
  --az-deficiente: #c2410c; --az-deficiente-c: #fdebdf;
  --az-mala: #b42318; --az-mala-c: #fbe9e7;
  --az-sin: #8f889b; --az-sin-c: #f1eff4;
}

.az-contenedor { max-width: 70rem; }
.az-cabecera .antetitulo i { color: var(--mr-morado); }

/* Formulario ---------------------------------------------------------- */
.az-form {
  background: #fff; border: 1px solid var(--mr-linea); border-radius: var(--mr-radio-lg);
  padding: clamp(1.25rem, 3.5vw, 2.25rem); box-shadow: var(--mr-sombra);
}
.az-form .form-label { font-weight: 650; }
.az-campo-url { display: flex; gap: .6rem; align-items: stretch; position: relative; }
.az-campo-url > i { position: absolute; left: 1rem; top: 50%; transform: translateY(-50%); color: var(--mr-piedra-2); pointer-events: none; }
.az-campo-url .form-control { padding-left: 2.6rem; min-width: 0; }
.az-campo-url .btn { display: inline-flex; align-items: center; gap: .55rem; white-space: nowrap; }
@media (max-width: 575.98px) {
  .az-campo-url { flex-direction: column; }
  .az-campo-url > i { top: 1.6rem; }
  .az-campo-url .btn { justify-content: center; }
}
.az-pegar { margin-top: 1rem; border-top: 1px dashed var(--mr-linea-2); padding-top: .9rem; }
.az-pegar summary { cursor: pointer; color: var(--mr-morado); font-weight: 600; list-style: none; }
.az-pegar summary::-webkit-details-marker { display: none; }
.az-pegar summary i { margin-right: .35rem; }
.az-pegar[open] summary { margin-bottom: .75rem; }
.az-privacidad { display: flex; gap: .6rem; margin: 1.25rem 0 0; font-size: .88rem; color: var(--mr-piedra); line-height: 1.5; }
.az-privacidad i { color: var(--mr-verde); margin-top: .2rem; }
.az-leyendo { margin: 1rem 0 0; color: var(--mr-morado); font-weight: 600; }
.az-girando {
  width: 1rem; height: 1rem; border-radius: 50%; border: 2px solid rgba(255, 255, 255, .5); border-top-color: #fff;
  display: inline-block; animation: az-gira .8s linear infinite;
}
.btn-outline-primary .az-girando { border-color: rgba(116, 68, 180, .3); border-top-color: var(--mr-morado); }
.cargando > i { display: none; }
@keyframes az-gira { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .az-girando { animation: none; } }

/* Avisos -------------------------------------------------------------- */
.az-aviso {
  display: flex; gap: .85rem; align-items: flex-start; padding: .95rem 1.1rem; border-radius: var(--mr-radio);
  background: var(--mr-azul-claro); color: #183e72; margin: 0 0 1.25rem; line-height: 1.55;
}
.az-aviso > i { margin-top: .25rem; font-size: 1.05rem; }
.az-aviso p { margin: 0 0 .35rem; }
.az-aviso p:last-child { margin-bottom: 0; }
.az-aviso a { color: inherit; font-weight: 600; }
.az-aviso.mal { background: var(--az-mala-c); color: #7a1a12; }
.az-aviso.pedir { background: var(--mr-cempa-claro); color: var(--mr-cempa-texto); }
.az-aviso.caso { background: var(--mr-morado-claro); color: #43256b; margin-top: 1.5rem; }
.az-casos { margin: .25rem 0 0; padding-left: 1.1rem; }

/* Tarjeta del resultado --------------------------------------------- */
.az-tarjeta {
  margin-top: 1.75rem; background: #fff; border: 1px solid var(--mr-linea); border-radius: var(--mr-radio-lg);
  padding: clamp(1.25rem, 3.5vw, 2.25rem); box-shadow: var(--mr-sombra); scroll-margin-top: calc(var(--alto-cabecera, 72px) + 1rem);
}
.az-tarjeta:focus { outline: none; }
.az-tarjeta-cabeza { margin-bottom: 1.25rem; }
.az-de { margin: 0 0 .4rem; color: var(--mr-piedra); font-size: .9rem; font-weight: 600; }
.az-de i { margin-right: .4rem; color: var(--mr-morado); }
.az-tarjeta-cabeza h2 { font-size: clamp(1.25rem, 2.4vw, 1.6rem); margin: 0 0 .35rem; line-height: 1.3; }
.az-enlace { margin: 0; font-size: .88rem; overflow-wrap: anywhere; }
.az-tarjeta-pie { margin-top: 1.75rem; padding-top: 1.25rem; border-top: 1px solid var(--mr-linea); display: grid; gap: .9rem; justify-items: start; }
.az-tarjeta-pie > p { display: flex; gap: .6rem; margin: 0; color: var(--mr-piedra); font-size: .93rem; }
.az-tarjeta-pie > p > i { margin-top: .2rem; color: var(--mr-morado); }
.az-texto { width: 100%; }
.az-texto summary { cursor: pointer; color: var(--mr-morado); font-weight: 600; font-size: .93rem; }
.az-texto-cuerpo {
  margin-top: .75rem; max-height: 22rem; overflow: auto; padding: 1rem 1.1rem; background: var(--mr-papel);
  border-radius: var(--mr-radio); font-size: .93rem; line-height: 1.65; color: #3b3248;
}

/* Resultado (parcial analisis-nota) --------------------------------- */
.az-nota { display: flex; gap: 1.25rem; align-items: center; }
@media (max-width: 479.98px) { .az-nota { flex-direction: column; align-items: flex-start; } }
.az-anillo {
  --valor: 0; --c: var(--az-sin); flex: none; width: 7.25rem; height: 7.25rem; border-radius: 50%;
  background: conic-gradient(var(--c) calc(var(--valor) * 1%), var(--mr-linea) 0); display: grid; place-items: center;
}
.az-anillo > span { width: 78%; height: 78%; border-radius: 50%; background: #fff; display: grid; place-content: center; text-align: center; line-height: 1; }
.az-anillo strong { font-family: var(--mr-serif); font-size: 2.1rem; font-weight: 650; color: var(--c); }
.az-anillo small { font-size: .72rem; color: var(--mr-piedra); margin-top: .2rem; }
.az-n-muy-buena { --c: var(--az-muy-buena); } .az-n-buena { --c: var(--az-buena); } .az-n-regular { --c: var(--az-regular); }
.az-n-deficiente { --c: var(--az-deficiente); } .az-n-mala { --c: var(--az-mala); } .az-n-sin { --c: var(--az-sin); }
.az-nivel { margin: 0 0 .45rem; font-weight: 750; font-size: 1.15rem; }
.az-t-muy-buena { color: var(--az-muy-buena); } .az-t-buena { color: var(--az-buena); } .az-t-regular { color: var(--az-regular); }
.az-t-deficiente { color: var(--az-deficiente); } .az-t-mala { color: var(--az-mala); } .az-t-sin { color: var(--az-sin); }
.az-etiquetas { list-style: none; margin: 0 0 .6rem; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.az-etiquetas li { display: inline-flex; align-items: center; gap: .35rem; font-size: .8rem; font-weight: 650; padding: .25rem .6rem; border-radius: 999px; }
.az-etiquetas li.mal { background: var(--az-mala-c); color: var(--az-mala); }
.az-etiquetas li.bien { background: var(--az-muy-buena-c); color: var(--az-muy-buena); }
.az-resumen { margin: 0; color: #3b3248; line-height: 1.6; }

.az-medidores { display: grid; gap: .7rem 2rem; margin-top: 1.75rem; }
@media (min-width: 768px) { .az-medidores { grid-template-columns: 1fr 1fr; } }
.az-medidor { display: grid; grid-template-columns: 1fr auto; gap: .3rem .75rem; align-items: center; font-size: .9rem; }
.az-medidor-nombre { font-weight: 600; }
.az-medidor-nombre i { width: 1.2rem; color: var(--mr-piedra-2); margin-right: .35rem; }
.az-medidor-valor { color: var(--mr-piedra); font-size: .82rem; text-align: right; }
.az-barra { grid-column: 1 / -1; height: .45rem; border-radius: 999px; background: var(--mr-linea); overflow: hidden; }
.az-barra > span { display: block; height: 100%; border-radius: inherit; background: var(--az-muy-buena); }
.az-medidor.medio .az-barra > span { background: var(--az-regular); }
.az-medidor.bajo .az-barra > span { background: var(--az-mala); }
.az-medidor.positivo .az-barra > span { background: var(--mr-morado); }
.az-barra.vacia { background: repeating-linear-gradient(90deg, var(--mr-linea) 0 6px, transparent 6px 10px); }

.az-hallazgos, .az-aciertos { margin-top: 1.75rem; }
.az-hallazgos h3, .az-aciertos h3 { font-size: 1.05rem; margin: 0 0 .8rem; }
.az-hallazgos ol { list-style: none; margin: 0; padding: 0; display: grid; gap: .7rem; }
.az-hallazgo { border: 1px solid var(--mr-linea); border-left: 4px solid var(--az-regular); border-radius: var(--mr-radio); padding: .75rem .95rem; display: grid; gap: .4rem; }
.az-hallazgo.az-c-respeto, .az-hallazgo.az-c-odio { border-left-color: var(--az-mala); }
.az-hallazgo.az-c-identidad, .az-hallazgo.az-c-revictimizacion { border-left-color: var(--az-deficiente); }
.az-hallazgo.az-c-terminos { border-left-color: var(--mr-azul); }
.az-cat { font-size: .74rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; color: var(--mr-piedra); }
.az-cat i { margin-right: .35rem; }
.az-frag { quotes: none; font-size: .93rem; line-height: 1.55; color: #3b3248; overflow-wrap: anywhere; }
.az-frag mark { background: #fde2a7; color: var(--mr-tinta); padding: 0 .15em; border-radius: 3px; font-weight: 650; }
.az-sug { display: flex; gap: .5rem; font-size: .88rem; color: #2f5f45; }
.az-sug i { margin-top: .2rem; color: var(--mr-cempa-texto); }
.az-mas { margin: .6rem 0 0; font-size: .88rem; color: var(--mr-piedra); }
.az-aciertos ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .45rem; }
.az-aciertos li { display: inline-flex; gap: .4rem; align-items: center; font-size: .85rem; padding: .3rem .7rem; border-radius: 999px; background: var(--az-muy-buena-c); color: var(--az-muy-buena); font-weight: 600; }
.az-resultado .az-aviso { margin-top: 1.25rem; }

.az-resultado.compacto .az-anillo { width: 5.5rem; height: 5.5rem; }
.az-resultado.compacto .az-anillo strong { font-size: 1.6rem; }
.az-resultado.compacto .az-hallazgos { margin-top: 1.1rem; }
.az-resultado.compacto .az-hallazgo { padding: .6rem .8rem; }

/* Medios ------------------------------------------------------------ */
.az-intro { color: var(--mr-piedra); max-width: 48rem; }
.az-destacados { display: grid; gap: 1rem; margin: 1.5rem 0; }
@media (min-width: 768px) { .az-destacados { grid-template-columns: repeat(3, 1fr); } }
.az-destacado { background: #fff; border: 1px solid var(--mr-linea); border-top: 4px solid var(--mr-piedra-2); border-radius: var(--mr-radio-lg); padding: 1.1rem 1.25rem; }
.az-destacado h3 { font-size: 1rem; display: flex; gap: .5rem; align-items: center; margin: 0 0 .75rem; }
.az-destacado ol { margin: 0; padding: 0; list-style: none; display: grid; gap: .4rem; }
.az-destacado li { display: flex; justify-content: space-between; gap: .75rem; font-size: .92rem; }
.az-destacado p { margin: 0; color: var(--mr-piedra); font-size: .9rem; }
.az-destacado.az-cl-aliado { border-top-color: var(--az-muy-buena); } .az-destacado.az-cl-aliado h3 i { color: var(--az-muy-buena); }
.az-destacado.az-cl-amarillista { border-top-color: var(--az-regular); } .az-destacado.az-cl-amarillista h3 i { color: var(--az-regular); }
.az-destacado.az-cl-agresivo { border-top-color: var(--az-mala); } .az-destacado.az-cl-agresivo h3 i { color: var(--az-mala); }
.az-tabla-envoltura { background: #fff; border: 1px solid var(--mr-linea); border-radius: var(--mr-radio-lg); padding: .9rem 1.1rem; margin-top: 1rem; }
.az-tabla-envoltura summary { cursor: pointer; font-weight: 650; }
.az-tabla { margin: .75rem 0 0; font-size: .92rem; }
.az-tabla th[scope=row] small { display: block; font-weight: 400; color: var(--mr-piedra-2); font-size: .78rem; }
.az-punto { display: inline-grid; place-items: center; min-width: 2.3rem; padding: .1rem .4rem; border-radius: 999px; font-weight: 750; color: #fff; background: var(--c, var(--az-sin)); font-size: .85rem; }
.az-clase { display: inline-flex; gap: .35rem; align-items: center; font-size: .8rem; font-weight: 650; padding: .2rem .55rem; border-radius: 999px; background: var(--az-sin-c); color: var(--mr-piedra); white-space: nowrap; }
.az-clase.az-cl-aliado { background: var(--az-muy-buena-c); color: var(--az-muy-buena); }
.az-clase.az-cl-respetuoso { background: var(--az-buena-c); color: var(--az-buena); }
.az-clase.az-cl-mejorable { background: var(--az-regular-c); color: var(--az-regular); }
.az-clase.az-cl-amarillista { background: var(--az-deficiente-c); color: var(--az-deficiente); }
.az-clase.az-cl-agresivo { background: var(--az-mala-c); color: var(--az-mala); }
.az-historial { align-items: flex-start; }

/* Metodología ------------------------------------------------------- */
.az-metodo { display: grid; gap: 2rem; }
@media (min-width: 992px) { .az-metodo { grid-template-columns: minmax(0, 20rem) minmax(0, 1fr); } }
.az-metodo p { line-height: 1.7; }
.az-escala { list-style: none; padding: 0; margin: 1rem 0 0; display: grid; gap: .45rem; }
.az-escala li { display: flex; gap: .7rem; align-items: center; font-weight: 600; }
.az-criterios { margin: 0; display: grid; gap: 1rem; }
@media (min-width: 768px) { .az-criterios { grid-template-columns: 1fr 1fr; } }
.az-criterios dt { font-weight: 700; display: flex; gap: .5rem; align-items: center; }
.az-criterios dt i { color: var(--az-mala); width: 1.2rem; }
.az-criterios .positivo dt i { color: var(--mr-morado); }
.az-criterios dd { margin: .25rem 0 0; color: var(--mr-piedra); line-height: 1.55; font-size: .93rem; }
.az-derechos { margin: 1.5rem 0 0; font-size: .82rem; color: var(--mr-piedra-2); display: flex; gap: .45rem; align-items: center; }

/* Modal de avance ----------------------------------------------------- */
.az-modal {
  border: 0; padding: 0; border-radius: var(--mr-radio-lg); width: min(30rem, calc(100vw - 2rem));
  box-shadow: 0 30px 80px -20px rgba(21, 18, 43, .55); color: var(--mr-tinta);
}
.az-modal::backdrop { background: rgba(17, 12, 34, .62); backdrop-filter: blur(3px); }
.az-modal-cuerpo { padding: 1.75rem clamp(1.25rem, 4vw, 2rem) 1.5rem; text-align: center; }
.az-modal h2 { font-size: 1.3rem; margin: .5rem 0 .25rem; }
.az-modal-paso { min-height: 1.5em; margin: 0 0 1rem; color: var(--mr-piedra); font-size: .95rem; }
.az-ilustracion { display: grid; place-items: center; height: 120px; }
.az-hoja { fill: #fff; stroke: var(--mr-linea-2); stroke-width: 2; }
.az-titular { fill: var(--mr-morado); opacity: .85; }
.az-linea { fill: var(--mr-linea-2); animation: az-linea 2.4s ease-in-out infinite; }
.az-linea.l2 { animation-delay: .3s; } .az-linea.l3 { animation-delay: .6s; } .az-linea.l4 { animation-delay: .9s; } .az-linea.l5 { animation-delay: 1.2s; }
@keyframes az-linea { 0%, 100% { fill: var(--mr-linea-2); } 40% { fill: var(--mr-cempa); } }
.az-lupa { animation: az-lupa 3.2s ease-in-out infinite; }
.az-lupa circle { fill: rgba(242, 165, 65, .14); stroke: var(--mr-morado); stroke-width: 5; }
.az-lupa line { stroke: var(--mr-morado); stroke-width: 7; stroke-linecap: round; }
@keyframes az-lupa {
  0% { transform: translate(52px, 46px); } 25% { transform: translate(96px, 56px); }
  50% { transform: translate(70px, 78px); } 75% { transform: translate(104px, 88px); } 100% { transform: translate(52px, 46px); }
}
.az-progreso { height: .65rem; border-radius: 999px; background: var(--mr-linea); overflow: hidden; }
.az-progreso-barra {
  display: block; height: 100%; width: 0; border-radius: inherit; transition: width .25s linear;
  background: linear-gradient(90deg, var(--mr-morado), #b06ad6, var(--mr-cempa)); background-size: 200% 100%;
  animation: az-brillo 1.6s linear infinite;
}
@keyframes az-brillo { to { background-position: -200% 0; } }
.az-porcentaje { margin: .55rem 0 1.1rem; font-size: .95rem; color: var(--mr-piedra); }
.az-porcentaje strong { font-family: var(--mr-serif); font-size: 1.6rem; color: var(--mr-morado); font-variant-numeric: tabular-nums; }
.az-pasos { list-style: none; margin: 0; padding: 0; text-align: left; display: grid; gap: .55rem; }
.az-pasos li {
  display: flex; gap: .8rem; align-items: flex-start; padding: .6rem .75rem; border-radius: var(--mr-radio);
  border: 1px solid var(--mr-linea); color: var(--mr-piedra-2); transition: background .2s, border-color .2s, color .2s;
}
.az-pasos li > i { width: 1.6rem; height: 1.6rem; flex: none; display: grid; place-items: center; border-radius: 50%; background: var(--mr-papel); font-size: .8rem; margin-top: .1rem; }
.az-pasos li strong { display: block; font-size: .93rem; }
.az-pasos li small { display: block; font-size: .8rem; line-height: 1.4; }
.az-paso-detalle { display: block; font-style: normal; font-size: .8rem; margin-top: .2rem; color: var(--az-muy-buena); font-weight: 600; }
.az-pasos li.activo { border-color: var(--mr-morado); background: var(--mr-morado-claro); color: var(--mr-tinta); }
.az-pasos li.activo > i { background: var(--mr-morado); color: #fff; animation: az-latido 1.2s ease-in-out infinite; }
.az-pasos li.hecho { color: var(--mr-tinta); }
.az-pasos li.hecho > i { background: var(--az-muy-buena); color: #fff; }
.az-pasos li.hecho > i::before { content: "\f00c"; }
@keyframes az-latido { 50% { box-shadow: 0 0 0 6px rgba(123, 75, 183, .18); } }
.az-modal-error { margin-top: 1rem; text-align: left; }
.az-modal-error .az-aviso { margin-bottom: .9rem; }
.az-modal.con-error .az-ilustracion, .az-modal.con-error .az-progreso, .az-modal.con-error .az-porcentaje { display: none; }
@media (prefers-reduced-motion: reduce) {
  .az-linea, .az-lupa, .az-progreso-barra, .az-pasos li.activo > i { animation: none; }
  .az-lupa { transform: translate(78px, 62px); }
}

/* Preparando la herramienta (se cubre el formulario hasta que todo está listo) */
.az-form { position: relative; }
.az-form.az-cargando > :not(.az-preparando) { display: none !important; }
.az-preparando { display: grid; place-items: center; min-height: 19rem; padding: .5rem 0; text-align: center; }
.az-preparando[hidden] { display: none; }
.az-prep-cuerpo { width: min(22rem, 100%); }
.az-prep-animacion { position: relative; width: 96px; height: 96px; margin: 0 auto .75rem; }
.az-prep-animacion svg { display: block; }
.az-prep-pista { fill: none; stroke: var(--mr-linea); stroke-width: 7; }
.az-prep-arco {
  fill: none; stroke: var(--mr-morado); stroke-width: 7; stroke-linecap: round; stroke-dasharray: 26 74;
  transform-origin: 60px 60px; animation: az-giro 1.1s linear infinite;
}
.az-prep-icono rect { fill: var(--mr-morado-claro); stroke: var(--mr-morado); stroke-width: 3; }
.az-prep-icono line { stroke: var(--mr-morado); stroke-width: 3; stroke-linecap: round; opacity: .55; animation: az-parpadeo 1.8s ease-in-out infinite; }
.az-prep-icono line:nth-of-type(2) { animation-delay: .2s; } .az-prep-icono line:nth-of-type(3) { animation-delay: .4s; } .az-prep-icono line:nth-of-type(4) { animation-delay: .6s; }
@keyframes az-giro { to { transform: rotate(360deg); } }
@keyframes az-parpadeo { 50% { opacity: 1; stroke: var(--mr-cempa); } }
.az-prep-numero {
  position: absolute; right: -.6rem; bottom: -.2rem; background: var(--mr-morado); color: #fff; border-radius: 999px;
  padding: .1rem .5rem; font-size: .8rem; font-variant-numeric: tabular-nums; box-shadow: 0 0 0 3px #fff;
}
.az-prep-titulo { font-family: var(--mr-serif); font-size: 1.2rem; font-weight: 600; margin: 0 0 .8rem; color: var(--mr-tinta); }
.az-prep-pasos { list-style: none; margin: 0; padding: 0; display: grid; gap: .35rem; text-align: left; font-size: .9rem; }
.az-prep-pasos li { display: flex; gap: .6rem; align-items: center; color: var(--mr-piedra-2); }
.az-prep-pasos li > i { width: 1.1rem; text-align: center; font-size: .85rem; }
.az-prep-pasos li.activo { color: var(--mr-tinta); }
.az-prep-pasos li.activo > i { color: var(--mr-morado); animation: az-giro 1s linear infinite; }
.az-prep-pasos li.hecho { color: var(--mr-tinta); }
.az-prep-pasos li.hecho > i { color: var(--az-muy-buena); }
.az-prep-pasos li.hecho > i::before { content: "\f00c"; }
.az-prep-pasos li.aviso > i { color: var(--az-regular); }
.az-prep-pasos li.aviso > i::before { content: "\f071"; }
.az-prep-pasos li.mal > i { color: var(--az-mala); }
.az-prep-pasos li.mal > i::before { content: "\f00d"; }
.az-prep-pasos li em { font-style: normal; color: var(--mr-piedra); font-size: .82rem; }
.az-prep-error { margin-top: 1rem; text-align: left; }
.az-prep-error .az-aviso { margin-bottom: .8rem; }
.az-prep-botones { display: flex; flex-wrap: wrap; gap: .5rem; }
.az-preparando.con-error .az-prep-arco { animation: none; stroke: var(--az-mala); stroke-dasharray: 100 0; }
.az-preparando.con-error .az-prep-icono line { animation: none; }
.az-preparando.listo { animation: az-salir .35s ease forwards; }
@keyframes az-salir { to { opacity: 0; visibility: hidden; } }
.az-sin-red, .az-lenta { margin-bottom: 1rem; }
.az-lenta { background: var(--az-regular-c); color: #6b3d05; }
.az-form.sin-red button[type=submit] { opacity: .55; }
@media (prefers-reduced-motion: reduce) {
  .az-prep-arco, .az-prep-icono line, .az-prep-pasos li.activo > i, .az-preparando.listo { animation: none; }
  .az-preparando.listo { display: none; }
}
.az-aviso[hidden] { display: none; }

/* Panel › Análisis de fuentes ----------------------------------------- */
.fa-detalle { padding: 1.25rem clamp(1rem, 3vw, 1.75rem); margin-bottom: 1.5rem; border-left: 4px solid var(--mr-morado); }
.fa-detalle-cab { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem; }
.fa-detalle-cab .h5 { margin: .15rem 0 .35rem; }
.fa-detalle-acciones { display: flex; gap: .5rem; align-items: flex-start; }
.fa-medio { display: block; font-size: .78rem; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; color: var(--mr-piedra); margin: 0; }
.fa-pegar { margin-top: 1.25rem; border-top: 1px dashed var(--mr-linea-2); padding-top: 1rem; }
.fa-pegar summary { cursor: pointer; color: var(--mr-morado); font-weight: 600; margin-bottom: .6rem; }
.fa-pegar .form-label { font-size: .9rem; color: var(--mr-piedra); }
.fa-lote { padding: 1.1rem 1.25rem; margin-bottom: 1.25rem; }
.fa-lote-cab { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: .9rem; }
.fa-avance-global { min-width: 14rem; text-align: right; }
.fa-avance-global .az-progreso { display: block; margin-bottom: .25rem; }
.fa-avance-global small { color: var(--mr-piedra); font-weight: 600; }
.fa-lote-form { display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
.fa-lote-form .form-select { width: auto; }
.fa-filtros { display: flex; gap: .5rem; flex-wrap: wrap; margin-bottom: 1rem; }
.fa-filtros .form-control { flex: 1 1 16rem; }
.fa-filtros .form-select { width: auto; }
.fa-tabla .titulo-fila { display: inline-block; margin-top: .1rem; }
.fa-estado { display: inline-flex; gap: .3rem; align-items: center; font-size: .78rem; font-weight: 600; padding: .15rem .55rem; border-radius: 999px; background: var(--az-sin-c); color: #4f4a5c; }
.fa-e-sin_texto { background: var(--mr-cempa-claro); color: var(--mr-cempa-texto); }
.fa-e-roto { background: var(--az-mala-c); color: #7a1a12; margin-top: .3rem; }
.pestanas-sub a { font-size: .9rem; padding: .4rem .75rem; }
.fa-posibles { display: grid; gap: .9rem; }
.fa-posible { padding: 1rem 1.25rem; }
.fa-posible-cab { display: flex; gap: .9rem; align-items: flex-start; }
.fa-posible-cab .az-punto { flex: none; margin-top: .2rem; }
.fa-nombres { font-size: .9rem; margin: .4rem 0; }
.fa-nombres i { color: var(--mr-morado); width: 1.1rem; }
.fa-posible .acciones-fila { display: flex; gap: .4rem; flex-wrap: wrap; margin-top: .75rem; }
.fa-posible .acciones-fila form { margin: 0; }
.fa-cuenta { color: var(--mr-piedra); font-size: .85rem; margin-left: .35rem; }
.fa-registro { list-style: none; margin: 0 0 1rem; padding: 0; text-align: left; max-height: 12.5rem; overflow: auto; display: grid; gap: .35rem; }
.fa-registro li { display: flex; gap: .6rem; align-items: center; font-size: .85rem; padding: .4rem .6rem; border: 1px solid var(--mr-linea); border-radius: var(--mr-radio); animation: fa-entra .3s ease; }
.fa-registro li .az-punto { flex: none; }
.fa-registro li span:last-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fa-registro li small { color: var(--mr-piedra); }
@keyframes fa-entra { from { opacity: 0; transform: translateY(-4px); } }
.fa-modal-botones { display: flex; gap: .5rem; justify-content: center; flex-wrap: wrap; }
.fa-modal.pausado .az-lupa, .fa-modal.pausado .az-linea, .fa-modal.pausado .az-progreso-barra { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) { .fa-registro li { animation: none; } }
.fa-lote-cab > div:first-child { flex: 1 1 26rem; }
.fa-avance-global { flex: 0 1 18rem; }
.fa-registro li span:last-child { flex: 1; }
.fa-tabla td:nth-child(2) { min-width: 12rem; }

/* Panel › ficha del caso: fuentes que pasan por el Analizador y fotos de las notas */
.fuente-rev-analisis { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem; }
.fuente-rev-analisis .az-punto { min-width: 2rem; font-size: .75rem; }
.fuentes-sincro { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem .75rem; margin: .5rem 0 .9rem; padding: .6rem .85rem; border-radius: var(--mr-radio); background: #f4f1fb; color: #3b2f63; font-size: .875rem; }
.fuentes-sincro[hidden] { display: none; }
.fuentes-sincro.listo { background: #e3f3ec; color: #1f5f47; }
.fuentes-sincro.error { background: #fdebdf; color: #8a2d08; }
.fuentes-sincro-texto { flex: 1 1 14rem; }
.fuentes-sincro-barra { flex: 1 1 8rem; max-width: 12rem; height: .4rem; border-radius: 999px; background: rgba(59, 47, 99, .15); overflow: hidden; }
.fuentes-sincro-barra > span { display: block; height: 100%; width: 0; background: var(--mr-morado, #6b3fa0); transition: width .4s ease; }
.fuentes-sincro.listo .fuentes-sincro-barra, .fuentes-sincro.error .fuentes-sincro-barra { display: none; }
.insignia-super { display: inline-block; margin-left: .35rem; padding: .05rem .5rem; border-radius: 999px; background: #2b2140; color: #fff; font-size: .68rem; font-weight: 650; vertical-align: middle; letter-spacing: .02em; }
.fotos-fuentes { list-style: none; padding: 0; margin: .75rem 0 0; display: grid; gap: .85rem; }
.foto-fuente { display: grid; grid-template-columns: 9.5rem 1fr; gap: .9rem; padding: .75rem; border: 1px solid var(--mr-linea); border-radius: var(--mr-radio); background: #fff; }
.foto-fuente.usada { border-color: #1f7a5a; box-shadow: 0 0 0 2px #e3f3ec; }
.foto-fuente.descartada { opacity: .62; }
.foto-fuente.roto .foto-fuente-img img { filter: grayscale(.7); }
.foto-fuente-img { display: block; aspect-ratio: 4 / 3; border-radius: calc(var(--mr-radio) - 2px); overflow: hidden; background: var(--mr-papel, #f6f4f1); }
.foto-fuente-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.foto-fuente-motivos { margin: 0 0 .6rem; padding-left: 1.1rem; }
.foto-fuente-motivos li { margin-bottom: .15rem; }
.foto-fuente-motivos .m-mal { color: #8a2d08; }
.foto-fuente-motivos .m-aviso { color: #8a4b05; }
.foto-fuente-motivos .m-bien { color: #1f5f47; }
.foto-fuente-motivos .m-info { color: var(--mr-piedra); list-style: none; margin-left: -1.1rem; }
.foto-fuente .fx-sello, .fa-foto .fx-sello { display: inline-flex; align-items: center; gap: .3rem; font-size: .72rem; font-weight: 650; padding: .1rem .5rem; border-radius: 999px; background: #f1eff4; color: #4f4a5c; }
.foto-fuente .fx-sello.bien, .fa-foto .fx-sello.bien { background: #e3f3ec; color: #1f7a5a; }
.foto-fuente .fx-sello.aviso, .fa-foto .fx-sello.aviso { background: #fdebdf; color: #a3360a; }
.foto-fuente .fx-sello.roto, .fa-foto .fx-sello.roto { background: #f1eff4; color: #4f4a5c; }
@media (max-width: 575.98px) { .foto-fuente { grid-template-columns: 1fr; } }

/* Contador en vivo ---------------------------------------------------- */
.az-vivo { display: inline-flex; align-items: center; gap: .55rem; transition: background-color .6s ease; border-radius: 999px; }
.az-vivo[hidden] { display: none; }
.az-vivo-punto { width: .55rem; height: .55rem; border-radius: 50%; background: #22c55e; box-shadow: 0 0 0 0 rgba(34, 197, 94, .6); animation: az-latido 2.2s ease-out infinite; flex: none; }
.az-vivo.cambio strong { color: #86efac; transition: color .3s ease; }
@keyframes az-latido { 0% { box-shadow: 0 0 0 0 rgba(34, 197, 94, .55); } 70% { box-shadow: 0 0 0 .5rem rgba(34, 197, 94, 0); } 100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); } }
@media (prefers-reduced-motion: reduce) { .az-vivo-punto { animation: none; } }

/* Últimas notas ------------------------------------------------------- */
.az-ultimas-cab { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1.25rem; }
.az-ultimas { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 30rem), 1fr)); gap: .75rem; }
.az-ultimas[hidden] { display: none; }
.az-ultimas > li { display: flex; gap: .85rem; align-items: flex-start; padding: .9rem 1rem; background: #fff; border: 1px solid var(--mr-linea); border-radius: var(--mr-radio); min-width: 0; }
.az-ultimas > li > div { min-width: 0; }
.az-ultimas > li .az-punto { flex: none; margin-top: .1rem; }
.az-ultimas a { font-weight: 650; color: var(--mr-tinta); text-decoration: none; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.az-ultimas a:hover, .az-ultimas a:focus-visible { color: var(--mr-morado); text-decoration: underline; }
.az-ultimas p { margin: .2rem 0 0; font-size: .85rem; color: var(--mr-piedra); }
.az-ultimas > li.nueva { animation: az-nueva 2.4s ease; }
@keyframes az-nueva { 0% { background: #efe6fb; transform: translateY(-4px); } 100% { background: #fff; transform: none; } }
.az-actualizada { color: #8a4b05; font-weight: 600; }
.az-etiquetas.chicas { margin: .4rem 0 0; gap: .3rem; }
.az-etiquetas.chicas li { font-size: .7rem; padding: .05rem .5rem; }
.az-observatorio-cta { display: grid; grid-template-columns: auto 1fr auto; gap: 1rem 1.25rem; align-items: center; margin-top: 2rem; padding: 1.25rem 1.5rem; border-radius: var(--mr-radio-lg); background: linear-gradient(135deg, #2b1b4a, #4a2a7a); color: #fff; }
.az-observatorio-cta > i { font-size: 2rem; color: #f0a35e; }
.az-observatorio-cta h3 { font-size: 1.15rem; margin: 0 0 .25rem; color: #fff; }
.az-observatorio-cta p { margin: 0; color: rgba(255, 255, 255, .82); font-size: .93rem; }
.az-observatorio-cta .btn { white-space: nowrap; background: #f0a35e; border-color: #f0a35e; color: #23163b; font-weight: 700; }
@media (max-width: 767.98px) { .az-observatorio-cta { grid-template-columns: 1fr; } .az-observatorio-cta > i { display: none; } }

/* ¿El medio actualizó la nota? ---------------------------------------- */
.az-cambios { margin: 0 0 1.5rem; }
.az-cambios-ya { display: flex; gap: .7rem; align-items: flex-start; margin: 0 0 .85rem; padding: .8rem 1rem; border-radius: var(--mr-radio); background: #f4f1fb; color: #3b2f63; font-size: .93rem; }
.az-cambios-ya > i { margin-top: .2rem; color: var(--mr-morado); }
.az-cambios.hay-cambio .az-cambios-cab { display: flex; flex-wrap: wrap; gap: .6rem 1rem; align-items: center; justify-content: space-between; padding: .85rem 1rem; border-radius: var(--mr-radio) var(--mr-radio) 0 0; background: #fff8ec; border: 1px solid #f3dcb5; border-bottom: 0; }
.az-cambios.hay-cambio.mejoro .az-cambios-cab { background: #ecf8f2; border-color: #bfe3d2; }
.az-cambios.hay-cambio.empeoro .az-cambios-cab { background: #fdeeea; border-color: #f2c7bd; }
.az-cambios-titulo { margin: 0; }
.az-cambios-titulo i { color: var(--mr-morado); margin-right: .3rem; }
.az-cambios-cal { display: flex; align-items: center; gap: .45rem; }
.az-efecto { font-weight: 700; font-size: .88rem; }
.az-efecto.bien { color: #1f7a5a; } .az-efecto.mal { color: #b42318; } .az-efecto.igual { color: #6b6478; }
.az-cambios-lista { list-style: none; margin: 0; padding: .8rem 1rem; border: 1px solid var(--mr-linea); border-top: 0; border-radius: 0 0 var(--mr-radio) var(--mr-radio); background: #fff; display: grid; gap: .45rem; font-size: .92rem; }
.az-cambios:not(.hay-cambio) .az-cambios-lista { border-top: 1px solid var(--mr-linea); border-radius: var(--mr-radio); }
.az-cambios-lista i { width: 1.1rem; color: var(--mr-piedra-2); }
.az-cambios-lista li.bien i { color: #1f7a5a; } .az-cambios-lista li.mal i { color: #b42318; }
.az-cambios-lista del { color: #8f2d1f; } .az-cambios-lista ins { color: #1f5f47; text-decoration: none; font-weight: 600; }
.az-cambios-detalle { margin-top: .7rem; }
.az-cambios-detalle summary { cursor: pointer; color: var(--mr-morado); font-weight: 600; font-size: .93rem; }
.az-dif { display: grid; gap: .35rem; margin-top: .6rem; }
.az-dif p { margin: 0; padding: .55rem .75rem; border-radius: calc(var(--mr-radio) - 2px); font-size: .9rem; overflow-wrap: anywhere; }
.az-dif p span { display: block; font-size: .7rem; font-weight: 750; text-transform: uppercase; letter-spacing: .05em; margin-bottom: .15rem; }
.az-dif .antes { background: #fdeeea; color: #5c2117; } .az-dif .ahora { background: #ecf8f2; color: #17473a; }

/* Panel: foto de la nota, versiones y registro desde una nota ---------- */
.fa-foto { display: grid; grid-template-columns: 8.5rem 1fr; gap: .9rem; margin: .5rem 0 1rem; padding: .75rem; border: 1px solid var(--mr-linea); border-radius: var(--mr-radio); background: #fff; }
.fa-foto-img { display: block; aspect-ratio: 4 / 3; border-radius: calc(var(--mr-radio) - 2px); overflow: hidden; background: #f1eff4; }
.fa-foto-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.fa-foto.roto .fa-foto-img img { filter: grayscale(.7); }
@media (max-width: 575.98px) { .fa-foto { grid-template-columns: 1fr; } }
.fa-versiones { margin: .6rem 0 0; padding-left: 0; list-style: none; display: grid; gap: .4rem; font-size: .88rem; }
.fa-versiones li { display: flex; gap: .5rem; align-items: center; }
.desde-nota { background: #f4f1fb; border-left: 4px solid var(--mr-morado); }
.desde-nota-foto .fa-foto { margin: 0; }
