/*forzar estilo tema*/

/* boton formulario*/
.elementor-kit-10 button:hover { color: #333!important; }


/* estilos de link en cta */

.btad-cta-legal{
  margin: 14px auto 0 auto; /* centra el bloque */
  padding: 14px 18px;
  border-radius: 12px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);

  text-align: left !important; /* fuerza alineación izquierda */
  max-width: 900px; /* evita que el texto quede demasiado ancho */
}

.btad-cta-legal p{
  margin: 0 0 12px 0;
  line-height: 1.5;
}

.btad-cta-legal ul{
  padding-left: 22px;
  margin: 6px 0 0 0;
  text-align: left !important;
}

.btad-cta-legal li{
  margin: 6px 0;
  font-weight: 600;
}

.btad-cta-link{
  color: #231459 !important;
  text-decoration: underline;
  font-weight: 700;
}

.btad-cta-link:hover{
  opacity: .9;
}



/* ================================
   SUBCATEGORÍAS (Encabezados)
================================ */
.btad-subcategory-header{
  margin: 30px 0 15px;
  padding-bottom: 10px;
  border-bottom: 2px solid #f0f0f0;
}

.btad-subcategory-header h3{
  font-size: 18px;
  font-weight: 800;
  color: #2d2d2d;
  margin: 0;
  text-transform: uppercase;
}

.btad-subcategory-header p{
  font-size: 13px;
  color: #666;
  margin-top: 6px;
}

/* formulario estilos generales */
.btad-wrap { padding: 20px !important; }
.btad-container{
  max-width: 1100px !important;
  margin: 0 auto;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0,0,0,.3);
  overflow: hidden;
}

/* cabecera formulario*/
.btad-header{
  background:#231459 ;
  color: #fff;
  padding: 40px 30px;
  text-align: center;
}
.btad-title-center h2{font-size:38!important;}

.btad-header h1{ font-size: 28px; margin-bottom: 10px !important;}
.btad-header p{ font-size: 16px; opacity: .9 !important; }
.btad-content{ padding: 40px 30px; }

.btad-step{ display:none; }
.btad-step.active{ display:block; animation: btadFadeIn .5s; }
@keyframes btadFadeIn{ from{opacity:0; transform:translateY(20px);} to{opacity:1; transform:translateY(0);} }

.btad-form-group{ margin-bottom: 25px; }
.btad-form-group label{ display:block; font-weight:600; color:#333; margin-bottom:8px; font-size:14px; }
.btad-form-group input[type="text"],
.btad-form-group input[type="tel"],
.btad-form-group select{
  width:100%;
  padding:12px 15px;
  border:2px solid #e0e0e0;
  border-radius:8px;
  font-size:15px;
  transition: all .3s;
}
.btad-form-group input:focus,
.btad-form-group select:focus{
  outline:none;
  border-color:#667eea;
  box-shadow:0 0 0 3px rgba(102,126,234,.1);
}

.btad-tema-selector{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 15px;
  margin-top: 20px;
}
.btad-tema-card{
  background: linear-gradient(180deg,#fff 0%,#f8f9fb 100%);
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:20px;
  cursor:pointer;
  transition: all .3s;
  text-align:center;
}
.btad-tema-card:hover{ transform: translateY(-5px); box-shadow:0 10px 25px rgba(0,0,0,.15); border-color:1px solid #e5e7eb; }
.btad-tema-card.selected{
  border-color:#667eea;
  background: linear-gradient(135deg,#667eea 0%,#3858e9 100%);
  color:#fff;
}
.btad-tema-card h3{ font-size:16px; margin-bottom:8px; }
.btad-tema-card p{ font-size:13px; opacity:.85; }

.btad-question-card{
  background:#f8f9fa;
  border-left:4px solid #667eea;
  padding:10px;
  margin-bottom:20px;
  border-radius:8px;
  transition: all .3s;
}
.btad-question-card.filter-question{
  background: linear-gradient(135deg,#fff5f5 0%,#ffe4e6 100%);
  border-left-color:#dc2626;
}
.btad-question-text{ font-size:15px; color:#333; margin-bottom:15px; line-height:1.6;font-weight: bold; }

.btad-options{ display:flex; gap:10px; }
.btad-option-btn{
  flex:1;
  padding:12px;
  border:2px solid #e0e0e0;
  background:#fff;
  border-radius:8px;
  cursor:pointer;
  font-size:14px;
  font-weight:600;
  transition: all .3s;
}


    
.btad-option-btn:hover{ border-color:#667eea; background:#f0f4ff !important; }
.btad-option-btn.selected{ border-color:#667eea; background:#667eea; color:#fff; }

.btad-option-btn.si{ border-color:#10b981; }
.btad-option-btn.si.selected{ background:#10b981; border-color:#10b981; }
.btad-option-btn.no{ border-color:#ef4444; }
.btad-option-btn.no.selected{ background:#ef4444; border-color:#ef4444; }
.btad-option-btn.nc{ border-color:#f59e0b; }
.btad-option-btn.nc.selected{ background:#f59e0b; border-color:#f59e0b; }

.btad-progress-bar{ height:8px; background:#e0e0e0; border-radius:10px; margin-bottom:30px; overflow:hidden; }
.btad-progress-fill{ height:100%; background: linear-gradient(90deg,#667eea 0%,#764ba2 100%); transition: width .3s; }

.btad-btn{
  background: linear-gradient(135deg,#667eea 0%,#764ba2 100%);
  color:#fff; border:none;
  padding:15px 30px;
  border-radius:8px;
  font-size:16px;
  font-weight:600;
  cursor:pointer;
  transition: all .3s;
  margin-top:20px;
}
.btad-btn:hover{ transform: translateY(-2px); box-shadow:0 10px 25px rgba(102,126,234,.3); }
.btad-btn:disabled{ opacity:.5; cursor:not-allowed; transform:none; box-shadow:none; }

.btad-btn-secondary{ background:#6c757d; margin-right:10px; }

.btad-actions{ margin-top:30px; }

.btad-result-card{
  text-align: center;
  padding: 55px 20px 40px !important; /* más aire arriba */
  margin-top: 0 !important;           /* evita recorte por overflow hidden */
}

.btad-result-score{
  font-size: 56px;     /* puedes dejar 42 si quieres, pero 56 se ve mejor */
  font-weight: 800;
  line-height: 1.1;    /* CLAVE para que no se corte */
  background: linear-gradient(135deg,#667eea 0%,#764ba2 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin: 0 0 16px;    /* evita margin raro */
  padding: 0;          /* evita que “suba” */
}
.btad-result-level{ font-size:28px; font-weight:700; margin-bottom:15px; }
.btad-result-description{ font-size:16px; color:#666; margin-bottom:30px; line-height:1.6; }

.btad-summary-table{ margin:30px 0; background:#f8f9fa; padding:20px; border-radius:8px; }
.btad-summary-row{ display:flex; justify-content:space-between; padding:10px 0; border-bottom:1px solid #e0e0e0; }
.btad-summary-row:last-child{ border-bottom:none; }
.btad-summary-label{ font-weight:600; color:#333; }
.btad-summary-value{ color:#666; }

.btad-category-results{ margin:30px 0; }
.btad-category-card{ background:#fff; border:2px solid #e0e0e0; border-radius:12px; padding:20px; margin-bottom:20px; }
.btad-category-header{ display:flex; justify-content:space-between; align-items:center; margin-bottom:15px; }
.btad-category-name{ font-size:18px; font-weight:700; color:#333; }
.btad-category-percentage{ font-size:24px; font-weight:700; padding:5px 15px; border-radius:20px; }

.btad-percentage-excellent{ background:#d1fae5; color:#065f46; }
.btad-percentage-good{ background:#dbeafe; color:#1e40af; }
.btad-percentage-warning{ background:#fef3c7; color:#92400e; }
.btad-percentage-critical{ background:#fee2e2; color:#991b1b; }

.btad-category-detail{ font-size:14px; color:#666; line-height:1.6; }
.btad-category-bar{ height:8px; background:#e0e0e0; border-radius:10px; overflow:hidden; margin-top:10px; }
.btad-category-bar-fill{ height:100%; border-radius:10px; transition: width .5s ease; }
.btad-bar-excellent{ background: linear-gradient(90deg,#10b981 0%,#059669 100%); }
.btad-bar-good{ background: linear-gradient(90deg,#3b82f6 0%,#2563eb 100%); }
.btad-bar-warning{ background: linear-gradient(90deg,#f59e0b 0%,#d97706 100%); }
.btad-bar-critical{ background: linear-gradient(90deg,#ef4444 0%,#dc2626 100%); }

.btad-cta-box{ color:#fff; padding:30px; border-radius:12px; margin-top:30px; background: linear-gradient(135deg,#667eea 0%,#764ba2 100%); }

.btad-alert{ padding:20px; border-radius:8px; margin:20px 0; }
.btad-alert-warning{ background:#fff3cd; border-left:4px solid #ffc107; color:#856404; }
.btad-alert-info{ background:#e3f2fd; border-left:4px solid #2196f3; color:#0d47a1; }
.btad-alert-note{ background:#eff6ff; border-left:4px solid #3b82f6; color:#1e40af; }

/* ================================
   BRECHAS EN RESULTADOS
================================ */
.btad-category-issues{
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 12px;
  background: #fff7ed; /* suave tipo alerta */
  border: 1px solid #fed7aa;
}

.btad-category-issues-title{
  font-weight: 800;
  font-size: 12px;
  color: #9a3412;
  margin-bottom: 8px;
  letter-spacing: .3px;
}

.btad-category-issues-list{
  margin: 0;
  padding-left: 18px;
}

.btad-category-issues-list li{
  margin: 6px 0;
  font-size: 13px;
  line-height: 1.35;
  color: #7c2d12;
}

/* ================================
   BLOQUE LEGAL + TIPIFICADOR
================================ */
.btad-legal-block{
  margin: 18px 0 18px;
  padding: 16px 18px;
  border-radius: 14px;
  background: #eef2ff;
  border: 1px solid #c7d2fe;
}

.btad-legal-text{
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.45;
  color: #1f2937;
}

.btad-legal-cta{
  display: inline-block;
  margin-top: 6px;
  padding: 10px 14px;
  border-radius: 10px;
  background: #111827;
  color: #fff !important;
  text-decoration: none;
  font-weight: 800;
  font-size: 13px;
}

.btad-legal-cta:hover{
  opacity: .92;
}

/* ================================
   EXPOSICIÓN A SANCIONES
================================ */
.btad-exposure-block{
  margin: 0 0 18px;
  padding: 16px 18px;
  border-radius: 14px;
  background: #fff7ed;
  border: 1px solid #fed7aa;
}

.btad-exposure-title{
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 900;
  color: #7c2d12;
  letter-spacing: .2px;
}

.btad-exposure-sub{
  margin: 0 0 12px;
  font-size: 13px;
  color: #7c2d12;
  line-height: 1.4;
}

.btad-exposure-item{
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px dashed #fdba74;
}

.btad-exposure-item-title{
  font-weight: 900;
  color: #9a3412;
  font-size: 13px;
  margin-bottom: 8px;
}

.btad-exposure-list{
  margin: 0;
  padding-left: 18px;
}

.btad-exposure-list li{
  margin: 6px 0;
  font-size: 13px;
  line-height: 1.35;
  color: #7c2d12;
}

/* ================================
   ACCIONES DE RESULTADO (PDF + Reset)
================================ */
.btad-result-actions{
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 25px;
}

.btad-btn-pdf{
  background: linear-gradient(135deg, #1e3a5f 0%, #2d5a8e 100%);
}
.btad-btn-pdf:hover{
  box-shadow: 0 10px 25px rgba(30,58,95,.35);
}

.btad-save-status{
  text-align: center;
  margin-top: 14px;
  font-size: 13px;
  font-weight: 600;
  min-height: 20px;
}
.btad-save-loading{ color: #667eea; }
.btad-save-ok{ color: #10b981; }
.btad-save-error{ color: #ef4444; }

/* ================================
   VALIDACIÓN CAMPOS (errores inline)
================================ */
.btad-field-error{
  display: none;
  font-size: 13px;
  color: #dc2626;
  margin-top: 6px;
  font-weight: 600;
  line-height: 1.3;
}

.btad-input-error{
  border-color: #dc2626 !important;
  box-shadow: 0 0 0 3px rgba(220,38,38,.12) !important;
}

.btad-form-group input.btad-input-error:focus,
.btad-form-group select.btad-input-error:focus{
  border-color: #dc2626 !important;
  box-shadow: 0 0 0 3px rgba(220,38,38,.18) !important;
}

@media (max-width:768px){
  .btad-tema-selector{ grid-template-columns: 1fr; }
  .btad-options{ flex-direction: column; }
  .btad-header h1{ font-size:24px; }
  .btad-result-score{ font-size:56px; }
}