/* ITR Académico — estilos autónomos para la malla y el formulario.
   Incluyen su propia paleta de respaldo para verse bien con CUALQUIER tema.
   Si se usa el "Tema ITR", este hereda además sus variables. */
.itr-malla, .itr-form {
  --itr-azul-noche: #1b2a4a;
  --itr-borgona: #6b1f2a;
  --itr-dorado: #b08d3e;
  --itr-crema: #f6f2ea;
  --itr-borde: #e5ddcf;
}

/* Botón (respaldo si el tema no lo define) */
.itr-btn {
  display:inline-block; background: var(--itr-borgona, #6b1f2a); color:#fff;
  padding:12px 24px; border-radius:8px; font-weight:600; border:0; cursor:pointer; text-decoration:none;
}
.itr-btn:hover { opacity:.92; color:#fff; }

/* Formulario */
.itr-form { display:grid; gap:16px; background:#fff; border:1px solid var(--itr-borde); border-radius:10px; padding:30px; box-shadow:0 6px 24px rgba(27,42,74,.10); }
.itr-form label { font-weight:600; display:block; margin-bottom:6px; font-size:.95rem; }
.itr-form input, .itr-form select, .itr-form textarea { width:100%; padding:12px 14px; border:1px solid var(--itr-borde); border-radius:8px; font-size:1rem; }
.itr-form__aviso { padding:12px 16px; border-radius:8px; margin-bottom:12px; }
.itr-form__aviso--ok { background:#e6f4ea; color:#1e5631; }
.itr-form__aviso--error { background:#fdecec; color:#8a1c1c; }

/* Malla */
.itr-malla__filtros { display:flex; gap:10px; flex-wrap:wrap; justify-content:center; margin-bottom:28px; }
.itr-malla__filtro { border:1px solid var(--itr-borde); background:#fff; padding:8px 16px; border-radius:999px; cursor:pointer; font-size:.9rem; }
.itr-malla__filtro.activo { background: var(--itr-azul-noche); color:#fff; border-color: var(--itr-azul-noche); }
.itr-malla__grid { display:grid; gap:20px; grid-template-columns: repeat(auto-fill, minmax(260px,1fr)); }
.itr-curso { background:#fff; border:1px solid var(--itr-borde); border-left:5px solid var(--itr-borgona); border-radius:10px; padding:20px; cursor:pointer; }
.itr-curso__nivel { font-size:.75rem; text-transform:uppercase; letter-spacing:.05em; color: var(--itr-dorado); font-weight:700; }
.itr-curso h3 { margin:.3rem 0; font-size:1.15rem; }
.itr-curso__detalle { display:none; margin-top:12px; padding-top:12px; border-top:1px dashed var(--itr-borde); }
.itr-curso.abierto .itr-curso__detalle { display:block; }
.itr-curso__tags span { display:inline-block; background:var(--itr-crema); border-radius:6px; padding:2px 8px; font-size:.78rem; margin:2px 4px 2px 0; }
