/* Colores institucionales */
:root{
  --c-navy:#1e1248;
  --c-indigo:#282878;
  --c-burgundy:#6F1132;
  --c-pink:#E62645;
  --c-gold:#C09B57;
  --c-white:#fff;
  --c-gray-100:#f5f7fb;
  --c-gray-200:#eef0f5;
  --c-gray-400:#c9ced9;
  --c-gray-600:#6b7280;
  --shadow: 0 10px 30px rgba(0,0,0,.06);
}

/* Layout general */
.ct-ai{max-width:1200px;margin:0 auto;padding:28px 16px;}
.ct-ai__title{text-align:center;font-size:34px;font-weight:900;color:var(--c-burgundy);letter-spacing:.3px;margin:8px 0 6px}
.ct-ai__subtitle{text-align:center;color:var(--c-gray-600);margin-bottom:22px}
.ct-ai__grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}

.ct-ai__card{background:var(--c-white);border:1px solid var(--c-gray-200);border-radius:14px;box-shadow:var(--shadow);padding:18px}
.ct-ai__card-title{text-align:center;font-size:20px;font-weight:800;color:var(--c-burgundy);margin-top:4px;margin-bottom:10px}
.ct-ai__help{color:#2b2b2b;font-size:14px;line-height:1.55;background:var(--c-gray-100);border:1px dashed var(--c-gray-200);border-radius:10px;padding:10px 12px;margin-bottom:12px}
.ct-ai__help ol{margin:6px 0 0 18px}

.ct-ai__form label{display:block;margin-bottom:10px;color:#2b2b2b}
.ct-ai__form label span{color:var(--c-pink)}
.ct-ai__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ct-ai__form input[type="text"],
.ct-ai__form input[type="tel"],
.ct-ai__form textarea{
  width:100%;
  padding:14px 14px; /* Más grande */
  font-size:1rem;
  border:1px solid var(--c-gray-400);
  border-radius:10px;
  background:#fff;
  outline:none;
}
.ct-ai__form textarea{resize:vertical; min-height:120px;}
.ct-ai__status{margin-top:10px;color:var(--c-navy);font-weight:600}

/* Grabadora */
.ct-ai__recorder .ct-ai__controls{display:flex;gap:10px;align-items:center;margin-bottom:10px}
.ct-ai__timer{margin-left:auto;color:var(--c-gray-600)}
.ct-ai__audio{width:100%;margin:8px 0}
.ct-ai__send{
  display:flex;
  flex-direction:column; /* Botón debajo en móviles */
  gap:10px;
  align-items:center;
  margin-top:8px;
}
.ct-ai__send input{
  width:100%;
  padding:14px 14px;
  font-size:1rem;
  border:1px solid var(--c-gray-400);
  border-radius:10px;
}
.ct-ai__send .ct-btn{
  width:auto;
  padding:8px 20px;
  font-size:0.95rem;
  align-self:center;
}

.ct-ai__footnote{font-size:12px;color:var(--c-gray-600);margin-top:8px}

.ct-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:10px;border:1px solid transparent;cursor:pointer;text-decoration:none;font-weight:700}
.ct-btn--primary{background:var(--c-indigo);color:#fff;border:none}
.ct-btn--primary:hover{filter:brightness(.95)}
.ct-btn--outline{background:#fff;color:var(--c-indigo);border:1px solid var(--c-indigo)}
.ct-btn[disabled]{opacity:.6;cursor:not-allowed}

@media (max-width:980px){
  .ct-ai__grid{grid-template-columns:1fr}
}

/* Móviles */
@media (max-width:640px){
  .ct-ai__row{flex-direction:column}
  .ct-btn{width:100%}
  .ct-ai__send input{
    font-size:1.05rem;
    padding:16px;
  }
  .ct-ai__send .ct-btn{
    width:60%;
  }
}

/* Evitar zoom y ocultamiento por teclado en iOS */
input, textarea{
  font-size:16px;
}