/* =========================================
   INICIO.CSS // EXCLUSIVO DE INDEX.HTML
   ========================================= */

/* HERO HOLOGRAMA */
.hero-holograma { height: 100vh; display: flex; align-items: center; padding: 0 5%; }
.hero-contenido-central { width: 45vw; max-width: 800px; position: relative; z-index: 10; padding-top: 50px; }
.titulo-mega { font-family: var(--font-display); font-size: 70px; line-height: 1.1; margin: 0 0 30px 0; text-transform: uppercase; }
.texto-hueco { color: transparent; -webkit-text-stroke: 1px rgba(255, 255, 255, 0.8); }
.text-neon { color: var(--neon-yellow); text-shadow: 0 0 10px rgba(255,234,0,0.4); }
.texto-descripcion { font-size: 18px; color: var(--tech-gray); line-height: 1.6; margin-bottom: 40px; border-left: 2px solid var(--neon-yellow); padding-left: 20px; text-shadow: 0 2px 10px rgba(0,0,0,0.8); }
.hero-acciones { display: flex; flex-direction: column; gap: 25px; align-items: flex-start;}
.hero-fila-inferior { display: flex; flex-direction: row; align-items: center; gap: 30px; }
.stats-holograma { display: flex; flex-direction: row; align-items: center; gap: 20px; font-family: var(--font-display); padding-left: 15px; border-left: 1px solid rgba(255, 234, 0, 0.3);}
.stat-dato h3 { color: white; margin: 0 0 5px 0; font-size: 16px; letter-spacing: 2px; text-shadow: 0 2px 5px black; white-space: nowrap;}
.stat-dato p { color: var(--neon-yellow); margin: 0; font-size: 9px; letter-spacing: 1px; text-transform: uppercase; white-space: nowrap;}
.stat-linea { width: 1px; height: 30px; background-color: rgba(255,255,255,0.2); }

/* MATRIZ HOLOGRÁFICA ELÍPTICA (V3.0) */
.seccion-matriz { position: relative; width: 100%; height: 100vh; display: flex; flex-direction: column; justify-content: center; align-items: center; overflow: hidden; background-color: #050505; }
.matriz-nucleo-logo { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) translateZ(0px); width: 380px; height: auto; z-index: 1; opacity: 0.25; filter: drop-shadow(0 0 15px rgba(255, 234, 0, 0.3)); pointer-events: none; animation: nucleoRespiracion3D 4s ease-in-out infinite; }
@keyframes nucleoRespiracion3D { 0%, 100% { filter: drop-shadow(0 0 15px rgba(255, 234, 0, 0.3)); opacity: 0.2; transform: translate(-50%, -50%) translateZ(0px) scale(1); } 50% { filter: drop-shadow(0 0 25px rgba(255, 234, 0, 0.5)); opacity: 0.4; transform: translate(-50%, -50%) translateZ(0px) scale(1.03); } }
.matriz-fondo-imagen { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #020202; z-index: -2; }
.matriz-capa-oscura { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(5,5,5,1) 0%, rgba(5,5,5,0.85) 50%, rgba(5,5,5,1) 100%); z-index: 2; }
.matriz-header { 
    text-align: center; 
    margin-bottom: 20px; 
    position: relative; 
    z-index: 20; 
    transform: translateY(-40px); /* ESTE ES TU CONTROL MAESTRO */
}
.matriz-titulo { font-family: var(--font-display); font-size: 40px; margin: 0; letter-spacing: 5px; text-shadow: 0 0 15px black;}
.matriz-sub { font-family: var(--font-display); color: var(--tech-gray); font-size: 11px; letter-spacing: 3px; }
.holo-nav { position: absolute; top: 55%; transform: translateY(-50%); background: transparent; border: 1px solid var(--neon-yellow); color: var(--neon-yellow); font-size: 40px; width: 60px; height: 100px; cursor: pointer; z-index: 50; transition: 0.3s; font-family: var(--font-display); display: flex; justify-content: center; align-items: center; backdrop-filter: blur(5px); }
.holo-nav:hover { background: var(--neon-yellow); color: var(--bg-dark); box-shadow: 0 0 20px var(--neon-yellow-glow); }
.prev { left: 5%; } .next { right: 5%; }
.escenario-3d { position: relative; width: 100%; height: 480px; perspective: 1000px; display: flex; justify-content: center; align-items: center; z-index: 10; }
.carrusel-3d { width: 320px; height: 450px; position: absolute; transform-style: preserve-3d; }
.holo-card { position: absolute; width: 320px; height: 460px; padding: 25px; box-sizing: border-box; display: flex; flex-direction: column; background: rgba(3, 3, 3, 0.5); border: 1px solid rgba(255, 234, 0, 0.3); box-shadow: 0 0 20px rgba(255, 234, 0, 0.05), inset 0 0 30px rgba(0,0,0,0.8); transition: border-color 0.4s ease, box-shadow 0.4s ease, background 0.4s ease; transform-style: preserve-3d; }
.holo-projection-layer { position: relative; width: 100%; height: 150px; display: flex; justify-content: center; align-items: center; margin-bottom: 20px; z-index: 10; transform: translateZ(25px); }
.holo-projection-layer img { max-width: 100%; max-height: 100%; object-fit: contain; filter: drop-shadow(0 10px 15px rgba(0,0,0,0.8)); transition: transform 0.4s ease; }
.projection-glow { position: absolute; width: 70%; height: 15px; bottom: -10px; background: var(--neon-yellow); filter: blur(15px); opacity: 0.15; border-radius: 50%; }
.holo-content { position: relative; z-index: 10; flex-grow: 1; display: flex; flex-direction: column; transform: translateZ(10px); }
.holo-card:hover { border-color: var(--neon-yellow); box-shadow: 0 0 40px var(--neon-yellow-glow), inset 0 0 30px rgba(0,0,0,0.9); background: rgba(15, 15, 15, 0.8); }
.holo-card:hover .holo-projection-layer img { transform: scale(1.15); }
.holo-card:hover .projection-glow { opacity: 0.4; }
.card-esquinas { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 5; }
.card-esquinas::before, .card-esquinas::after { content: ''; position: absolute; width: 20px; height: 20px; border: 2px solid var(--neon-yellow); opacity: 0.5; }
.card-esquinas::before { top: 10px; left: 10px; border-right: none; border-bottom: none; }
.card-esquinas::after { bottom: 10px; right: 10px; border-left: none; border-top: none; }
.holo-header { font-family: var(--font-display); font-size: 10px; color: var(--tech-gray); letter-spacing: 2px; margin-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 5px; }
.holo-title { font-family: var(--font-display); font-size: 18px; color: white; margin: 0 0 10px 0; line-height: 1.2; text-transform: uppercase; }
.holo-desc { font-size: 12px; color: #aaa; line-height: 1.4; flex-grow: 1; margin: 0 0 10px 0;}
.holo-data { display: flex; flex-direction: column; gap: 5px; font-family: var(--font-display); font-size: 9px; letter-spacing: 1px; margin-bottom: 15px; background: rgba(0,0,0,0.7); padding: 8px; border-left: 2px solid var(--neon-yellow); }
.holo-data span { white-space: normal; line-height: 1.3;}
.holo-btn { font-family: var(--font-display); font-size: 11px; color: var(--bg-dark); background-color: var(--neon-yellow); text-decoration: none; padding: 10px; text-align: center; font-weight: 900; letter-spacing: 2px; transition: 0.3s; margin-top: auto;}
.holo-btn:hover { background: white; box-shadow: 0 0 15px white; }

/* CINTA DE TELEMETRÍA (MARQUEE) */
.telemetria-marquee { width: 100%; background-color: var(--neon-yellow); padding: 18px 0; overflow: hidden; position: relative; z-index: 20; box-shadow: 0 0 25px var(--neon-yellow-glow); transform: skewY(-1.5deg); margin: 120px 0; }
.marquee-track { display: inline-flex; white-space: nowrap; animation: scroll-telemetria 35s linear infinite; }
.marquee-track span { font-family: var(--font-display); font-size: 26px; font-weight: 900; color: var(--bg-dark); padding: 0 20px; letter-spacing: 3px; }
@keyframes scroll-telemetria { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

/* NODOS DE INFRAESTRUCTURA */
.seccion-nodos { position: relative; width: 100%; height: 100vh; display: flex; align-items: center; justify-content: center; z-index: 10; overflow: hidden; background-color: #0b0c0d; background-image: radial-gradient(circle at 80% 20%, rgba(255, 234, 0, 0.04) 0%, transparent 50%), repeating-radial-gradient(circle, rgba(255,255,255,0.03) 0px, rgba(255,255,255,0.03) 1px, transparent 1px, transparent 4px), repeating-linear-gradient(45deg, rgba(0,0,0,0.3) 0px, rgba(0,0,0,0.3) 2px, transparent 2px, transparent 4px); }
.nodos-container { display: flex; gap: 80px; align-items: center; max-width: 1300px; width: 90%; margin: 0 auto; max-height: 90%; }
.nodo-visual { flex: 1; position: relative; }
.marco-cyber { position: relative; border: 1px solid var(--tech-gray); padding: 10px; background: rgba(0,0,0,0.5); border-radius: 3px; overflow: hidden; transition: border-color 0.4s ease; }
.marco-cyber:hover { border-color: var(--neon-yellow); box-shadow: 0 0 40px var(--neon-yellow-glow); }
.marco-cyber img { width: 100%; display: block; filter: grayscale(90%) contrast(120%) sepia(20%) hue-rotate(180deg) brightness(0.6); transition: filter 0.5s ease; }
.marco-cyber:hover img { filter: grayscale(0%) brightness(1); }
.scanline { position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: var(--neon-yellow); opacity: 0.6; box-shadow: 0 0 15px var(--neon-yellow); animation: escaneo 4s linear infinite; }
@keyframes escaneo { 0% { top: -10px; } 100% { top: 100%; } }
.coordenadas { display: flex; justify-content: space-between; font-family: var(--font-display); font-size: 11px; color: var(--tech-gray); margin-top: 15px; letter-spacing: 2px; }
.nodo-datos { flex: 1; }
.lista-nodos { display: flex; flex-direction: column; gap: 20px; }
.nodo-item { display: flex; gap: 25px; padding: 25px; background: rgba(255, 255, 255, 0.02); border: 1px solid rgba(255,255,255,0.05); border-left: 4px solid var(--tech-gray); transition: all 0.3s ease; cursor: default; backdrop-filter: blur(4px); }
.nodo-item:hover { background: rgba(255, 234, 0, 0.05); border-left: 4px solid var(--neon-yellow); transform: translateX(15px); box-shadow: inset 30px 0 30px -30px var(--neon-yellow-glow); }
.nodo-icono { font-family: var(--font-display); font-size: 35px; font-weight: 900; color: var(--tech-gray); transition: color 0.3s ease; }
.nodo-item:hover .nodo-icono { color: var(--neon-yellow); text-shadow: 0 0 15px var(--neon-yellow-glow); }
.nodo-texto h4 { font-family: var(--font-display); font-size: 16px; color: white; margin: 0 0 8px 0; letter-spacing: 1px; }
.nodo-texto p { color: #aaa; font-size: 14px; margin: 0; line-height: 1.6; }
.animar-fade { opacity: 0; transform: translateY(40px); transition: opacity 0.8s ease, transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1); }
.animar-fade.visible { opacity: 1; transform: translateY(0); }
.delay-1 { transition-delay: 0.1s; } .delay-2 { transition-delay: 0.3s; } .delay-3 { transition-delay: 0.5s; }

/* EL REACTOR DE PROCESOS */
.seccion-reactor { height: 400vh; background-color: var(--bg-dark); position: relative; z-index: 15; margin-top: 120px; margin-bottom: 120px; }
.reactor-sticky { position: sticky; top: 75px; height: calc(100vh - 75px); display: flex; align-items: center; overflow: hidden; }
.reactor-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; opacity: 0; transition: opacity 0.8s ease-in-out; }
.reactor-bg.activa { opacity: 1; }
.reactor-bg img { width: 100%; height: 100%; object-fit: cover; object-position: center center; }
.bg-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to right, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.1) 40%, transparent 100%); z-index: 1; }
.reactor-info { width: 42%; padding-left: 8%; position: relative; height: 100vh; display: flex; flex-direction: column; justify-content: center; z-index: 20; }
.reactor-header { position: absolute; top: 18%; font-family: var(--font-display); font-size: 11px; color: var(--neon-yellow); letter-spacing: 3px; display: flex; align-items: center; gap: 10px; text-shadow: 0 2px 10px rgba(0,0,0,0.9); }
.reactor-fase { position: absolute; top: 50%; transform: translateY(-20px); opacity: 0; pointer-events: none; transition: all 0.6s cubic-bezier(0.2, 0.8, 0.2, 1); }
.reactor-fase.activa { opacity: 1; transform: translateY(-50%); pointer-events: auto; }
.fase-num { font-family: var(--font-display); font-size: 16px; color: var(--neon-yellow); margin-bottom: 10px; letter-spacing: 2px; text-shadow: 0 2px 10px rgba(0,0,0,0.9); }
.texto-sombra { text-shadow: 0px 4px 20px rgba(0,0,0,1), 0px 2px 5px rgba(0,0,0,1) !important; }
.panel-telemetria { margin-top: 35px; border-top: 1px dashed rgba(255, 255, 255, 0.2); padding-top: 15px; max-width: 90%; }
.telemetria-datos { display: flex; justify-content: space-between; font-family: var(--font-display); font-size: 11px; color: var(--neon-yellow); letter-spacing: 2px; margin-bottom: 12px; text-shadow: 0 2px 5px black; }
.telemetria-barra-fondo { width: 100%; height: 3px; background: rgba(255, 255, 255, 0.1); border-radius: 2px; overflow: hidden; }
.barra-progreso-activa { height: 100%; background: var(--neon-yellow); box-shadow: 0 0 10px var(--neon-yellow); width: 0%; transition: width 1s cubic-bezier(0.2, 0.8, 0.2, 1) 0.3s; }
.reactor-fase.activa .barra-progreso-activa { width: var(--progreso); }
.reactor-rueda-container { position: absolute; right: -25vw; top: 50%; transform: translateY(-50%); width: 70vw; height: 70vw; display: flex; justify-content: center; align-items: center; pointer-events: none; }
.medidor-grados { position: absolute; left: 10%; top: 50%; transform: translateY(-50%); font-family: var(--font-display); font-size: 14px; color: var(--neon-yellow); z-index: 100; text-shadow: 0 0 10px rgba(0,0,0,0.9); }
.anillo-exterior { position: absolute; width: 100%; height: 100%; border: 1px dashed rgba(255, 255, 255, 0.4); border-radius: 50%; box-shadow: inset 0 0 20px rgba(0,0,0,0.3); }
.marca { position: absolute; font-family: var(--font-display); font-size: 12px; color: white; letter-spacing: 2px; text-shadow: 0 2px 5px rgba(0,0,0,0.9); }
.m1 { top: 10px; left: 50%; transform: translateX(-50%); } .m2 { bottom: 10px; left: 50%; transform: translateX(-50%); } .m3 { left: 10px; top: 50%; transform: translateY(-50%) rotate(-90deg); } .m4 { right: 10px; top: 50%; transform: translateY(-50%) rotate(90deg); }
.anillo-interior { position: absolute; width: 75%; height: 75%; border: 2px solid rgba(255, 234, 0, 0.2); border-top: 5px solid var(--neon-yellow); border-bottom: 5px solid var(--neon-yellow); border-radius: 50%; filter: drop-shadow(0 0 15px rgba(0,0,0,0.5)); }
.reactor-nucleo { position: absolute; width: 25%; height: 25%; background: rgba(0, 0, 0, 0.15); backdrop-filter: blur(4px); border: 2px solid var(--neon-yellow); border-radius: 50%; display: flex; justify-content: center; align-items: center; box-shadow: 0 0 30px rgba(0,0,0,0.5); overflow: hidden; }
.nucleo-texto { font-family: var(--font-display); font-size: 16px; font-weight: 900; color: white; text-align: center; letter-spacing: 3px; text-shadow: 0 2px 10px rgba(0,0,0,0.9); z-index: 30; }
.nucleo-pulso { position: absolute; width: 100%; height: 100%; border: 2px solid var(--neon-yellow); border-radius: 50%; animation: pulso-reactor 2s infinite; z-index: 20; pointer-events: none; }
.nucleo-grid { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: radial-gradient(rgba(255,255,255,0.1) 2px, transparent 2px); background-size: 8px 8px; z-index: 10; pointer-events: none; }

/* SIMULADOR TÁCTICO DE ESTRÉS GEOGRÁFICO */
.seccion-simulador { height: 100vh; padding: 100px 5% 40px 5%; box-sizing: border-box; position: relative; z-index: 20; display: flex; align-items: center; justify-content: center; margin-top: 0; background-image: url('fondotermo.png'); background-size: cover; background-position: center; background-repeat: no-repeat; }
.consola-container { display: flex; gap: 40px; max-width: 1400px; width: 100%; margin: 0 auto; background: rgba(5,5,5,0.8); border: 1px solid rgba(255,255,255,0.05); border-radius: 5px; padding: 30px; box-shadow: 0 20px 50px rgba(0,0,0,0.8); backdrop-filter: blur(10px); height: 78vh; }
.panel-radar { flex: none; height: 100%; position: relative; border: 2px solid var(--tech-gray); border-radius: 8px; overflow: hidden; background: #020b14; box-shadow: inset 0 0 50px rgba(0, 0, 0, 0.9), 0 0 30px rgba(255, 234, 0, 0.1); }
.peru-map { height: 100%; width: auto; display: block; filter: grayscale(60%) contrast(150%) brightness(0.5) sepia(20%) hue-rotate(180deg); opacity: 0.95; transition: filter 0.5s ease; }
.radar-sweep { position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: conic-gradient(from 0deg, transparent 70%, rgba(255, 234, 0, 0.3) 100%); animation: giro-radar 5s linear infinite; mix-blend-mode: screen; pointer-events: none; }
@keyframes giro-radar { 100% { transform: rotate(360deg); } }
.radar-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: linear-gradient(rgba(255,234,0,0.1) 1px, transparent 1px), linear-gradient(90deg, rgba(255,234,0,0.1) 1px, transparent 1px); background-size: 30px 30px; pointer-events: none; }
.coordenadas-radar { position: absolute; top: 15px; left: 50%; transform: translateX(-50%); font-family: var(--font-display); font-size: 10px; color: white; background: rgba(0,0,0,0.8); padding: 5px 15px; border: 1px solid var(--tech-gray); z-index: 40; width: 85%; max-width: 350px; text-align: center; white-space: normal; line-height: 1.5; }
.nodo-ciudad { position: absolute; width: 6px; height: 6px; background: rgba(255, 255, 255, 0.5); border-radius: 50%; cursor: pointer; transition: all 0.3s ease; z-index: 20; box-shadow: 0 0 10px rgba(255,255,255,0.3); }
.nodo-ciudad:hover { background: white; box-shadow: 0 0 15px var(--neon-yellow), 0 0 30px white; z-index: 100; }
.nodo-ciudad .tooltip { position: absolute; top: -14px; left: 15px; font-family: var(--font-display); font-size: 10px; color: white; background: rgba(0,0,0,0.95); padding: 6px 10px; border: 1px solid rgba(255,255,255,0.3); white-space: nowrap; opacity: 0; pointer-events: none; transition: 0.3s; letter-spacing: 1px; text-align: center; }
.nodo-ciudad.edge-right .tooltip { left: auto; right: 15px; }
.nodo-ciudad:hover .tooltip { opacity: 1; border-color: var(--neon-yellow); }
.tooltip-dep { display: block; font-size: 8px; color: var(--neon-yellow); margin-top: 4px; padding-top: 4px; border-top: 1px solid rgba(255,255,255,0.2); letter-spacing: 2px; }

/* Coordenadas */
.n-puno { top: 85%; left: 87.7%; } .n-talara { top: 25.7%; left: 0.4%; } .n-piura { top: 28.4%; left: 5.5%; } .n-tumbes { top: 20.3%; left: 7%; } .n-lima { top: 64.5%; left: 33.6%; width: 12px; height: 12px; border: 2px solid var(--neon-yellow); background: rgba(0,0,0,0.5); } .n-ptomaldonado { top: 68.1%; left: 94.5%; } .n-iquitos { top: 20.7%; left: 63.4%; } .n-pucallpa { top: 45.5%; left: 53.4%; } .n-chimbote { top: 49%; left: 21.1%; } .n-trujillo { top: 44%; left: 17.8%; } .n-chiclayo { top: 37.1%; left: 11.3%; } .n-moquegua { top: 91.5%; left: 80.5%; } .n-arequipa { top: 87.5%; left: 76%; } .n-juliaca { top: 83.3%; left: 87%; } .n-callao { top: 64.8%; left: 33%; } .n-pisco { top: 74.3%; left: 40.3%; } .n-ica { top: 75.7%; left: 44.5%; } .n-tacna { top: 96%; left: 85.3%; } .n-tacna .tooltip { top: auto; bottom: 15px; } .n-abancay { top: 73.7%; left: 66.5%; } .n-cusco { top: 73%; left: 73.5%; } .n-ayacucho { top: 71.6%; left: 54.9%; } .n-huancavelica { top: 69.2%; left: 50.2%; } .n-huancayo { top: 65.4%; left: 47.8%; } .n-cerropasco { top: 58.2%; left: 39.4%; } .n-huanuco { top: 54.1%; left: 39.8%; } .n-huaraz { top: 51.7%; left: 29.3%; } .n-cajamarca { top: 38.7%; left: 21.8%; } .n-tarapoto { top: 35.2%; left: 38.8%; } .n-moyobamba { top: 32.9%; left: 34%; } .n-chachapoyas { top: 33.3%; left: 26%; }

.panel-controles { flex: 1.5; display: flex; flex-direction: column; justify-content: flex-start; gap: 10px; }
.simulador-header { text-align: left; margin-bottom: 10px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); padding-bottom: 15px; }
.control-grupo { margin-bottom: 5px; }
.control-grupo label { display: block; font-family: var(--font-display); font-size: 12px; color: white; margin-bottom: 8px; letter-spacing: 2px; }
.slider-cyber { -webkit-appearance: none; appearance: none; width: 100%; height: 5px; background: rgba(255,255,255,0.1); border-radius: 3px; outline: none; position: relative; }
.slider-cyber::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 20px; height: 20px; background: var(--bg-dark); border: 2px solid var(--neon-yellow); cursor: pointer; transform: rotate(45deg); box-shadow: 0 0 15px rgba(255,255,255,0.2); transition: 0.2s; }
.slider-cyber::-webkit-slider-thumb:hover { background: white; transform: rotate(45deg) scale(1.2); }
.marcas-rango { display: flex; justify-content: space-between; font-family: var(--font-text); font-size: 10px; color: var(--tech-gray); margin-top: 5px; }
.pantalla-diagnostico { flex-grow: 1; background: rgba(0,0,0,0.6); border: 1px solid var(--tech-gray); padding: 15px; border-left: 4px solid var(--tech-gray); margin-top: 10px; transition: all 0.4s ease; display: flex; flex-direction: column; justify-content: space-between; }
.pantalla-diagnostico.calculando { filter: blur(4px) sepia(100%) hue-rotate(180deg); opacity: 0.5; }
.diag-header { font-family: var(--font-display); font-size: 10px; color: var(--tech-gray); letter-spacing: 2px; margin-bottom: 10px; display: flex; align-items: center; gap: 8px; }
#contenido-diagnostico { flex-grow: 1; display: flex; flex-direction: column; gap: 10px; margin-bottom: 15px;}
.bot-alerta { font-family: var(--font-display); font-size: 11px; letter-spacing: 1px; padding-bottom: 5px; border-bottom: 1px dashed; }
.bot-alerta.frio { color: #00c8ff; border-bottom-color: rgba(0, 200, 255, 0.3); text-shadow: 0 0 10px rgba(0,200,255,0.5); }
.bot-alerta.calor { color: #ff3333; border-bottom-color: rgba(255, 51, 51, 0.3); text-shadow: 0 0 10px rgba(255,0,0,0.5); }
.bot-alerta.neutro { color: var(--neon-yellow); border-bottom-color: rgba(255, 234, 0, 0.3); text-shadow: 0 0 10px rgba(255,234,0,0.5); }
.bot-nucleo span { display: block; font-family: var(--font-display); font-size: 9px; color: var(--tech-gray); margin-bottom: 2px; }
.bot-nucleo strong { font-family: var(--font-display); font-size: 14px; color: white; display: block; margin-bottom: 2px;}
.bot-nucleo p { font-size: 12px; color: #aaa; margin: 0; line-height: 1.4;}
.bot-liquidos { background: rgba(255,255,255,0.03); border: 1px dashed rgba(255,255,255,0.1); padding: 10px; border-left: 3px solid var(--tech-gray); }
.bot-liquidos span { display: block; font-family: var(--font-display); font-size: 9px; color: var(--tech-gray); margin-bottom: 5px; }
.bot-liquidos ul { list-style: none; padding: 0; margin: 0; font-size: 12px; color: white; }
.bot-liquidos li { margin-bottom: 4px; }
.bot-liquidos li::before { content: '▸'; color: var(--neon-yellow); margin-right: 6px; }
.diag-desc { font-size: 12px; color: #bbb; line-height: 1.5; margin: 0; }
.pantalla-diagnostico .btn-cyber-solid { width: 100% !important; box-sizing: border-box !important; justify-content: center; margin-top: auto; font-size: 11px; padding: 10px; }


/* INICIO RESPONSIVE */
@media (max-height: 850px) { .nodos-container { transform: scale(0.88); } }
@media (max-height: 800px) { .escenario-3d { transform: scale(0.85); } .matriz-header { margin-bottom: 0; } }
@media (max-width: 1024px) {
    .video-split-container { width: 100%; right: 0; opacity: 0.3; z-index: -15; border: none;}
    .hero-contenido-central { width: 100%; max-width: 100%; }
    .titulo-mega { font-size: 50px; }
    .hero-fila-inferior { flex-direction: column; align-items: flex-start; }
    .stats-holograma { border-left: none; padding-left: 0; padding-top: 15px; border-top: 1px solid rgba(255,234,0,0.3); flex-wrap: wrap;}
    .hud-marco { display: none; }
    .nodos-container { flex-direction: column; transform: scale(1); padding-top: 50px;}
    .seccion-nodos { height: auto; padding: 100px 0; } 
    .telemetria-marquee { transform: skewY(0deg); }
    .reactor-info { width: 100%; padding: 0 5%; z-index: 20; background: rgba(0,0,0,0.4); backdrop-filter: blur(5px); }
    .reactor-rueda-container { right: -50vw; width: 120vw; height: 120vw; opacity: 0.5; }
    .consola-container { flex-direction: column; height: auto; }
    .panel-radar { aspect-ratio: 1/1; height: auto; }
    .consola-contacto { flex-direction: column; }
    .info-operativa { border-right: none; border-bottom: 1px dashed var(--tech-gray); padding-right: 0; padding-bottom: 20px; margin-bottom: 20px; }
    .input-fila-2, .input-fila-3, .input-fila-4 { grid-template-columns: 1fr; }
}