/* ==========================================================================
   VENTANAS EMERGENTES Y EXPEDIENTES (modales.css)
   ========================================================================== */

/* --- VENTANAS GENERALES --- */
.modal-box {
    display: none; 
    position: fixed; 
    z-index: 9999; 
    background-color: #fffdf0; 
    border: 3px solid #ffb3ba;
    border-radius: 8px;
    width: 320px;
    padding: 0; 
    box-shadow: 0px 10px 25px rgba(0, 0, 0, 0.15);
    animation: aparecer 0.2s ease-out;
}

.modal-header { background-color: #ffb3ba; border-bottom: 2px solid #ff6b8b; padding: 8px 12px; display: flex; justify-content: space-between; align-items: center; border-radius: 4px 4px 0 0; }
.modal-header h3 { margin: 0; font-size: 14px; color: #4a3b32; display: flex; align-items: center; }
.close-btn { background: transparent; border: none; color: #4a3b32; font-size: 18px; font-weight: bold; cursor: pointer; padding: 0; margin: 0; line-height: 1; }
.close-btn:hover { color: #ffffff; }

/* --- 3b. FLOR (Archivo Clasificado) --- */
.criminal-header { background-color: #2b2125 !important; border-bottom: 2px solid #3a2a30 !important; border-radius: 0; }
.criminal-header h3 { color: #d1b8c3 !important; font-size: 12px; letter-spacing: 0.5px; }
.criminal-close { color: #a6929a !important; font-size: 14px; }
.criminal-close:hover { color: #ff4f73 !important; }

/* --- EXPEDIENTE CRIMINAL - CUSTOM VENTANA FLOR --- */
.criminal-window { background-color: #121212 !important; border: 2px solid #3a2a30 !important; box-shadow: 0px 15px 35px rgba(0, 0, 0, 0.7) !important; width: 580px !important; }
.criminal-container { background-image: url('img/fondo_card_flor.jpg'); background-size: cover; background-position: center; padding: 30px !important; position: relative; overflow: visible !important; font-family: 'Courier New', Courier, monospace !important; color: #e0d5da; }

/* Cabecera y Título */
.criminal-title-zone { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #33252a; padding-bottom: 10px; margin-bottom: 15px; position: relative; }
.criminal-main-title { font-size: 26px; color: #d1b8c3; margin: 0; font-weight: bold; letter-spacing: 2px; text-shadow: 0 0 4px rgba(255, 79, 115, 0.4), 2px 2px 2px #000; }

/* Sello */
.classified-stamp { position: absolute !important; top: 5px !important; right: 0 !important; border: 1px solid #ff4f73 !important; color: #ff4f73 !important; font-size: 10px !important; font-weight: bold !important; padding: 3px 8px !important; text-transform: uppercase !important; letter-spacing: 2px !important; transform: none !important; display: inline-block !important; }
.classified-stamp { position: absolute; top: 65px; right: 40px; border: 2px solid #ff4f73; color: #ff4f73; font-size: 10px; font-weight: bold; padding: 3px 8px; text-transform: uppercase; transform: rotate(-8deg); opacity: 0.4; letter-spacing: 2px; pointer-events: none; }

/* Estructura de columnas de la ventana */
.criminal-layout { display: flex; gap: 20px; margin-bottom: 15px; }
.criminal-left { flex: 0 0 175px; display: flex; flex-direction: column; align-items: flex-start; text-align: left; position: relative; margin-left: -15px; }
.criminal-right { flex: 1; }

.target-profile-label { font-size: 11px; color: #a6929a; text-align: left; margin-bottom: 8px; width: 100%; letter-spacing: 0.5px; padding-left: 2px; }
.criminal-photo-frame { width: 175px; height: 165px; margin: 5px 0 12px 0; position: relative; background-color: #1a1517 !important; border: 2px solid #3a2a30 !important; box-shadow: inset 0 0 8px rgba(0, 0, 0, 0.8) !important; padding: 6px !important; overflow: hidden; display: flex; align-items: center; justify-content: center; box-sizing: border-box; }
.criminal-img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block; position: static !important; filter: grayscale(10%) contrast(110%) !important; }
.criminal-id-tag { font-size: 11px; color: #8f7d85; margin-top: 0px; text-align: left; width: 100%; padding-left: 2px; }

/* Stickers */
.sticker-cadenas1, .sticker-estrella1, .sticker-eyes-left, .sticker-balas1 { position: absolute; background-size: contain; background-repeat: no-repeat; pointer-events: none; }
.sticker-cadenas1 { top: -25px; left: -20px; width: 110px; height: 110px; background-image: url('img/cadenas1.png'); z-index: 99;}
.sticker-estrella1 { top: -15px; right: 20px; width: 55px; height: 55px; background-image: url('img/estrella1.png'); z-index: 99;}
.sticker-balas1 { bottom: -15px; right: -15px; width: 90px; height: 90px; background-image: url('img/balas1.png'); z-index: 99;}
.sticker-eyes-left { bottom: 15px; left: 20px; width: 75px; height: 75px; background-image: url('img/eyes.png'); z-index: 99;}

/* Tabla de Cajas Separadas */
.criminal-table { width: 100%; border-collapse: separate; border-spacing: 0 8px; table-layout: fixed; margin-top: -8px; }
.criminal-table tr { background-color: rgba(28, 25, 27, 0.75) !important; border: 1px solid #3a2830 !important; }
.label-cell { font-weight: bold; color: #a6929a; font-size: 12px; padding: 10px; width: 30%; border-left: 1px solid #3a2830; border-top: 1px solid #3a2830; border-bottom: 1px solid #3a2830; }
.data-cell { color: #ffffff; font-size: 12px; padding: 10px; line-height: 1.3; border-right: 1px solid #3a2830; border-top: 1px solid #3a2830; border-bottom: 1px solid #3a2830; }
.highlight-pink { color: #ff4f73; font-weight: bold; }

/* Dossier Inferior */
.sentencing-zone { border: 1px solid #3a2830; background-color: rgba(28, 25, 27, 0.85); margin-top: 15px; }
.sentencing-header { background-color: #2b2125; color: #d1b8c3; padding: 6px 10px; font-size: 12px; font-weight: bold; border-bottom: 1px solid #3a2830; }
.sentencing-body { padding: 12px; font-size: 11px; line-height: 1.5; color: #c4b9be; }