/* Ventana de detalle de una nota o avistamiento (Notas > "Ver avistamiento" / "Ver nota") */
.nd-modal.comunidad-modal-container {
    max-width: 1000px;
    max-height: 90vh;
    padding: 0;
    background: #131315;
    border: 1px solid #2a2a2e;
    border-radius: 22px;
    overflow: hidden;
    display: flex;
}
.nd-modal .btn-close-red-modal { top: 14px; right: 14px; background: rgba(0, 0, 0, 0.55); border-color: rgba(255, 255, 255, 0.2); color: #fff; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.nd-modal .btn-close-red-modal:hover { background: #dc2626; }

.nd { display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr); width: 100%; min-height: 0; text-align: left; }

/* ---- Evidencia multimedia ---- */
.nd__evidencia { background: #0b0b0c; display: flex; flex-direction: column; gap: 14px; padding: 0 0 18px; overflow-y: auto; min-height: 0; max-height: 90vh; }
.nd__foto { position: relative; background: #000; display: flex; align-items: center; justify-content: center; min-height: 260px; overflow: hidden; flex: 1 0 auto; }
.nd__foto::before { content: ''; position: absolute; inset: 0; background: var(--nd-img) center / cover; filter: blur(26px) brightness(0.45); transform: scale(1.2); }
.nd__foto img { position: relative; display: block; max-width: 100%; max-height: 440px; object-fit: contain; }
.nd__sinfoto { min-height: 160px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; color: #52525b; font-size: 12px; background: radial-gradient(circle at 50% 40%, #17241c, #0b0b0c 70%); }
.nd__sinfoto i { font-size: 44px; color: #1f3b2a; }
.nd__bloque { margin: 0 18px; }
.nd__etiqueta { display: flex; align-items: center; gap: 7px; margin: 0 0 8px; font-size: 10.5px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: #8b8b94; }
.nd__etiqueta i { color: #4ade80; }
.nd__caja { background: #18181b; border: 1px solid #2a2a2e; border-radius: 14px; padding: 10px; }
.nd__caja audio { display: block; width: 100%; height: 38px; margin: 0; }
.nd__caja video { display: block; width: 100%; max-height: 230px; border-radius: 9px; background: #000; }

/* ---- Información ---- */
.nd__info, .nd__evidencia { scrollbar-width: thin; scrollbar-color: #3f3f46 transparent; }
.nd__info { display: flex; flex-direction: column; gap: 18px; padding: 30px 30px 26px; overflow-y: auto; min-height: 0; max-height: 90vh; }
.nd__chips { display: flex; flex-wrap: wrap; gap: 8px; padding-right: 44px; }
.nd__chip { display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 999px; font-size: 11.5px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: #4ade80; background: rgba(74, 222, 128, 0.1); border: 1px solid rgba(74, 222, 128, 0.3); }
.nd__chip--especie { text-transform: none; letter-spacing: 0; color: #86efac; background: rgba(5, 150, 105, 0.18); border-color: rgba(5, 150, 105, 0.55); }
.nd__chip--especie em { font-style: italic; font-weight: 500; }
.nd__titulo { margin: 0; font-size: clamp(1.35rem, 2.4vw, 1.75rem); font-weight: 800; line-height: 1.2; color: #fff; text-wrap: balance; }

.nd__datos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0; }
.nd__dato { display: flex; align-items: flex-start; gap: 11px; padding: 11px 13px; background: #18181b; border: 1px solid #2a2a2e; border-radius: 13px; min-width: 0; }
.nd__dato--ancho { grid-column: 1 / -1; }
.nd__dato i { flex: none; width: 16px; margin-top: 2px; text-align: center; color: #71717a; font-size: 14px; }
.nd__dato dt { font-size: 10px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: #71717a; }
.nd__dato dd { margin: 2px 0 0; font-size: 13.5px; font-weight: 600; color: #e4e4e7; overflow-wrap: anywhere; }

.nd__desc { margin: 0; padding: 4px 0 4px 16px; border-left: 3px solid #059669; font-size: 14.5px; line-height: 1.75; color: #d4d4d8; white-space: pre-line; overflow-wrap: anywhere; }

.nd__mapa { position: relative; border-radius: 14px; overflow: hidden; border: 1px solid #2a2a2e; }
.nd__mapa #publicReviewMap { width: 100%; height: 200px; }
.nd__coords { position: absolute; left: 10px; bottom: 10px; z-index: 500; padding: 4px 10px; border-radius: 8px; background: rgba(15, 15, 15, 0.85); color: #e4e4e7; font: 700 11px monospace; pointer-events: none; }

.nd__docs { display: flex; flex-wrap: wrap; gap: 8px; }
.nd__doc { display: inline-flex; align-items: center; gap: 9px; max-width: 100%; padding: 8px 14px 8px 10px; border-radius: 11px; background: #18181b; border: 1px solid #2a2a2e; color: #e4e4e7; font-size: 12.5px; text-decoration: none; transition: border-color 0.2s, background 0.2s; }
.nd__doc:hover { border-color: #4ade80; background: #1b2a20; }
.nd__doc i { color: #f87171; font-size: 16px; }
.nd__doc span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 230px; }

.nd__autor { margin-top: auto; padding-top: 14px; border-top: 1px solid #25252a; display: flex; align-items: center; gap: 10px; font-size: 12px; color: #8b8b94; }
.nd__autor b { color: #e4e4e7; font-weight: 600; }
.nd__avatar { width: 30px; height: 30px; border-radius: 50%; background: #1b5e20; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 800; }

@media (max-width: 800px) {
    .nd-modal.comunidad-modal-container { display: block; overflow-y: auto; max-height: 92vh; }
    .nd { display: block; }
    .nd__evidencia { overflow: visible; max-height: none; }
    .nd__info { overflow: visible; max-height: none; padding: 22px 18px; }
    .nd__datos { grid-template-columns: 1fr; }
}
