/* ============================================================
   screens.css — Estilos propios de cada pantalla (no HUD).
   Responsabilidad: Base/Launchpad, Terminal, Centro de
   Evidencias, Análisis forense y Ajustes. El HUD del Scanner y
   las ceremonias viven en hud.css; los componentes reutilizables
   en components.css.
   ============================================================ */

/* ---------- Launchpad ---------- */
#lp-hero h3 {
  font-size: var(--fs-lg);
  letter-spacing: var(--track-wide);
  text-transform: uppercase;
}

/* ---------- Cam gate (previo a la ceremonia) ---------- */
.cam-gate {
  position: absolute;
  inset: 0;
  z-index: 25;
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--s4);
  padding: var(--s5);
  text-align: center;
  background: radial-gradient(circle at 50% 40%, rgba(0, 240, 255, 0.06), var(--bg-void) 72%);
}
.cam-gate.is-open { display: flex; animation: screen-in var(--t-slow) var(--ease); }
.cam-gate .sigil-lg { width: 96px; height: 96px; }
.cam-gate .sigil-lg svg { width: 100%; height: 100%; }
.cam-gate h2 {
  font-size: var(--fs-xl);
  letter-spacing: var(--track-xwide);
  text-transform: uppercase;
  color: var(--txt-hi);
  text-shadow: var(--glow-cyan);
}
.cam-gate p {
  max-width: 320px;
  font-size: var(--fs-xs);
  color: var(--txt-lo);
  line-height: 1.65;
}
.cam-gate .btn { max-width: 320px; width: 100%; }

/* ---------- Terminal ITC ---------- */
.term-screen {
  padding: calc(var(--safe-t) + var(--s4)) var(--s4) var(--s3) !important;
}
.term-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--s3);
  margin-bottom: var(--s3);
  padding-bottom: var(--s3);
  border-bottom: 1px solid var(--line-soft);
  flex: 0 0 auto;
}

/* ---------- Centro de Evidencias ---------- */
.ar-panel.hidden { display: none; }
.gallery .shot { cursor: pointer; }
.shot-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--txt-ghost);
  font-size: 9px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.ev-media {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--s2);
  margin-bottom: var(--s3);
}
.ev-media img {
  width: 100%;
  border-radius: var(--r-md);
  border: 1px solid var(--line-soft);
  display: block;
  background: #000;
}
.ev-media-label {
  font-size: 8px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--txt-ghost);
  margin-bottom: 4px;
}

/* ---------- Análisis forense ---------- */
#an-body.hidden, #an-empty.hidden { display: none; }
#an-timeline { margin-bottom: 4px; }
#an-snapshot .kv { font-size: var(--fs-nano); }

/* ---------- Ajustes ---------- */
.settings-group { margin-bottom: var(--s5); }
.settings-group:last-child { margin-bottom: 0; }
.danger-zone {
  border: 1px dashed rgba(255, 51, 85, 0.35);
  border-radius: var(--r-md);
  padding: var(--s3);
  background: rgba(255, 51, 85, 0.05);
}
.apikey-row { display: flex; gap: var(--s2); }
.apikey-row .input { flex: 1; }

@media (min-width: 720px) {
  .term-screen { padding-left: max(var(--s4), calc((100% - 700px) / 2)) !important; padding-right: max(var(--s4), calc((100% - 700px) / 2)) !important; }
}
