
/* ASEJUPS Asistencia - v1.0.2 - estilos del formulario */
.asejups-form, .asejups-asistencia {
  --asejups-primary: #f2b300;   /* dorado corporativo */
  --asejups-primary-hover: #d89a00;
  --asejups-border: #cfd4da;
  --asejups-text: #1f2937;
  --asejups-radius: 8px;
  --asejups-shadow: 0 1px 2px rgba(31,41,55,.08), 0 4px 8px rgba(31,41,55,.04);
}

.asejups-form h3, .asejups-asistencia h3 {
  color: var(--asejups-text);
  font-weight: 700;
  margin-bottom: 16px;
}

.asejups-form select,
.asejups-form input[type="text"],
.asejups-form input[type="email"],
.asejups-form input[type="tel"],
.asejups-form input[type="url"],
.asejups-form textarea,
.asejups-asistencia select,
.asejups-asistencia input[type="text"],
.asejups-asistencia input[type="email"],
.asejups-asistencia input[type="url"],
.asejups-asistencia input[type="tel"],
.asejups-asistencia textarea {
  display: block;
  width: 100%;
  max-width: 560px;
  height: 52px;
  font-size: 1.05rem;
  padding: 12px 14px;
  color: var(--asejups-text);
  background: #fff;
  border: 1px solid var(--asejups-border);
  border-radius: var(--asejups-radius);
  box-sizing: border-box;
  box-shadow: var(--asejups-shadow);
  transition: border-color .15s ease, box-shadow .15s ease;
  margin-bottom: 14px;
}
.asejups-asistencia textarea {
  height: auto;         /* anula los 52px del bloque general */
  min-height: 96px;     /* ajustá si querés más alto (p.ej. 120px) */
  line-height: 1.4;
  resize: vertical;
}

.asejups-form select:focus,
.asejups-form input:focus,
.asejups-asistencia select:focus,
.asejups-asistencia input:focus {
  border-color: var(--asejups-primary);
  outline: none;
  box-shadow: 0 0 0 3px rgba(242,179,0,.2);
}

.asejups-form label,
.asejups-asistencia label {
  display:block;
  font-weight:600;
  margin: 12px 0 6px;
}

.asejups-form button,
.asejups-asistencia button {
  display:inline-block;
  min-width: 240px;
  height: 52px;
  font-size: 1.05rem;
  font-weight: 700;
  color: #1b1b1b;
  background: var(--asejups-primary);
  border: 1px solid var(--asejups-primary);
  border-radius: var(--asejups-radius);
  cursor: pointer;
  padding: 10px 18px;
  box-shadow: var(--asejups-shadow);
  transition: background .15s ease, transform .05s ease;
}

.asejups-form button:hover,
.asejups-asistencia button:hover {
  background: var(--asejups-primary-hover);
}

.asejups-form button:active,
.asejups-asistencia button:active {
  transform: translateY(1px);
}

#asejups-asist-msg.ok { color: #166534; font-weight: 600; margin-top: 8px; }
#asejups-asist-msg.err { color: #991b1b; font-weight: 600; margin-top: 8px; }

/* Spinner y estados (v1.0.5) */
.asejups-spinner{
  margin-top: 6px;
  font-size: .95rem;
  line-height: 1.4;
  color: #6b7280;
  position: relative;
  padding-left: 22px;
}
.asejups-spinner:before{
  content: "";
  position: absolute;
  left: 0; top: 2px;
  width: 14px; height: 14px;
  border: 2px solid rgba(31,41,55,.25);
  border-top-color: var(--asejups-primary);
  border-radius: 50%;
  animation: asejups-spin 1s linear infinite;
}
@keyframes asejups-spin { to { transform: rotate(360deg); } }

.asejups-form .is-loading{
  opacity: .7;
  pointer-events: none;
}

.asejups-spinner{display:none}


/* v1.1.0 Modal simple (409 ya inscrito) */
.asejups-modal{position:fixed;inset:0;z-index:9999;display:none;}
.asejups-modal.is-open{display:block;}
.asejups-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45);}
.asejups-modal__dialog{
  position:relative;margin:12vh auto 0 auto;max-width:560px;background:#fff; border-radius:12px;
  padding:22px; box-shadow:0 10px 30px rgba(0,0,0,.2);
}
.asejups-modal__dialog h3{margin:0 0 8px 0;font-size:1.25rem;}
.asejups-btn-close{
  margin-top:14px; min-width:160px; height:44px; border-radius:10px; border:1px solid var(--asejups-primary);
  background: var(--asejups-primary); font-weight:700; color:#1b1b1b; cursor:pointer;
}
@media (prefers-reduced-motion:no-preference){
  .asejups-modal__dialog{transform:translateY(10px);opacity:.98;transition:transform .15s ease, opacity .15s ease;}
  .asejups-modal.is-open .asejups-modal__dialog{transform:translateY(0);opacity:1;}
}

/* v1.1.1 Modal de éxito + texto largo/URL */
.asejups-modal__body { margin-top: 8px; }
.asejups-modal__body .asejups-success-text { margin: 8px 0 0 0; }
.asejups-modal__actions { margin-top: 14px; }
.asejups-break { word-break: break-all; overflow-wrap: anywhere; }
.asejups-warning-text { color: #92400e; background: #fef3c7; border: 1px solid #fcd34d; padding: 8px 10px; border-radius: 8px; margin-top: 10px; }