.captura {
  position: fixed;
  inset: 0;
  margin: auto;
  inline-size: min(29rem, calc(100% - var(--espacio-6)));
  max-block-size: min(90dvh, 36rem);
  overflow: auto;
  overscroll-behavior: contain;
  border: var(--borde-grueso) solid var(--fg);
  border-radius: var(--radio-control);
  background: var(--bg);
  color: var(--fg);
  padding: var(--espacio-5);
  box-shadow: 0 24px 80px rgb(0 0 0 / 0.28);
}
.captura::backdrop { background: rgb(0 0 0 / 0.62); }
.captura-cabecera { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--espacio-4); }
.captura h2 { margin: 0; max-inline-size: 20ch; font-size: var(--texto-xl); line-height: var(--texto-xl-lh); }
.captura-cerrar {
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  inline-size: 44px;
  block-size: 44px;
  border: var(--borde-fino) solid var(--fg);
  border-radius: var(--radio-control);
  background: var(--bg);
  color: var(--fg);
  cursor: pointer;
  font-size: 1.5rem;
  line-height: 1;
}
.captura-cerrar:hover { background: var(--bg-secondary); }
.captura form { display: grid; gap: var(--espacio-4); margin-block-start: var(--espacio-5); }
.captura-campo label { display: block; margin-block-end: var(--espacio-2); font-weight: var(--peso-medio); }
.captura-campo label span { color: var(--fg-muted); font-weight: var(--peso-cuerpo); }
.captura-campo input {
  inline-size: 100%;
  min-block-size: 48px;
  border: var(--borde-grueso) solid var(--fg);
  border-radius: var(--radio-control);
  background: var(--bg);
  padding: var(--espacio-3);
}
.captura-enviar {
  min-block-size: 52px;
  border: var(--borde-fino) solid var(--primary-superficie-active);
  border-radius: var(--radio-control);
  background: var(--primary-superficie);
  color: var(--primary-superficie-foreground);
  padding: var(--espacio-3) var(--espacio-5);
  box-shadow: var(--bisel);
  cursor: pointer;
  font-weight: var(--peso-medio);
  transition: background-color 150ms ease-out, scale 150ms ease-out;
}
.captura-enviar:hover { background: var(--primary-superficie-hover); }
.captura-enviar:active { scale: 0.96; }
.captura-enviar:disabled { cursor: wait; opacity: 0.72; }
.captura-estado {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.captura-trampa {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
body:has(#captura-whatsapp[open]) { overflow: hidden; }
@media (max-width: 35rem) {
  .captura { inline-size: calc(100% - var(--espacio-4)); padding: var(--espacio-4); }
  .captura h2 { font-size: var(--texto-lg); line-height: var(--texto-lg-lh); }
}
