/* FM360 Test gratuito: diseño del PDF del cliente (PREGUNTAS_Y_RESULTADOS).
   Colores y tipografías: variables de fm.css (globales de Elementor). */
.fm-test{--t-navy:var(--navy,#062342); --t-blue:var(--navy-home,#1E3A56); --t-gold:var(--gold,#C9A44C); --t-gray:var(--gray,#6B7280); --t-light:var(--gray-light,#F4F5F7); --t-border:var(--border,#E1E4E9);
  max-width:820px; margin:0 auto; color:var(--t-navy); font-family:var(--font-body,'Lora',Georgia,serif); font-size:16px; line-height:1.55;}
.fm-test *{box-sizing:border-box;}

/* Cabecera azul */
.fm-test-hero{background:linear-gradient(135deg,var(--t-blue),var(--t-navy)); color:#fff; padding:22px 32px 30px; border-radius:4px 4px 0 0;}
.fm-test-hero-top{display:flex; justify-content:space-between; gap:12px; font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-size:11px; letter-spacing:.3em; color:var(--t-gold); padding-bottom:14px; border-bottom:1px solid rgba(255,255,255,.18);}
.fm-test-hero-top span:last-child{color:#fff; opacity:.85;}
.fm-test-hero-body{display:flex; justify-content:space-between; align-items:flex-end; gap:24px;}
.fm-test .fm-test-title{font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-weight:700; font-size:clamp(28px,4.5vw,40px); line-height:1.15; color:#fff; margin:22px 0 12px;}
.fm-test-hero-result .fm-test-title{font-size:clamp(24px,3.6vw,32px); margin:20px 0 6px;}
.fm-test-sub{margin:0; padding-left:12px; border-left:3px solid var(--t-gold); font-style:italic; color:#DCE2EA;}
.fm-test-score{margin:0; font-family:var(--font-heading,'Montserrat',Arial,sans-serif); color:var(--t-gold); letter-spacing:.06em; font-size:14px;}
.fm-test-bars{display:flex; align-items:flex-end; gap:10px; flex-shrink:0;}
.fm-test-bars i{display:block; width:24px;}
.fm-test-bars i:nth-child(1){height:22px; background:#C7CFD9;}
.fm-test-bars i:nth-child(2){height:34px; background:#9AA8B5;}
.fm-test-bars i:nth-child(3){height:48px; background:var(--t-gold);}
.fm-test-bars i:nth-child(4){height:62px; background:rgba(255,255,255,.14);}

/* Preguntas */
.fm-test-form{padding:28px 32px 36px; border:1px solid var(--t-border); border-top:0; background:#fff;}
.fm-test-intro{margin:0 0 6px;}
.fm-test-hint{margin:0 0 18px; font-style:italic; font-size:13px; color:var(--t-gray);}
.fm-test-q{border:0; border-bottom:1px solid var(--t-border); margin:0; padding:18px 0;}
.fm-test-q legend{display:flex; gap:14px; padding:0; margin-bottom:10px; font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-weight:700; font-size:16px; line-height:1.35; color:var(--t-navy);}
.fm-test-num{color:var(--t-gold); min-width:22px;}
.fm-test-opt{display:flex; align-items:flex-start; gap:10px; padding:5px 0 5px 36px; cursor:pointer; font-size:15px; line-height:1.4; position:relative;}
.fm-test-opt input{position:absolute; opacity:0; width:1px; height:1px;}
.fm-test-box{flex:0 0 16px; width:16px; height:16px; margin-top:2px; border:1.5px solid var(--t-navy); background:#fff; position:relative;}
.fm-test-opt input:checked + .fm-test-box{background:var(--t-navy);}
.fm-test-opt input:checked + .fm-test-box::after{content:""; position:absolute; left:4px; top:0; width:5px; height:10px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg);}
.fm-test-opt input:focus-visible + .fm-test-box{outline:2px solid var(--t-gold); outline-offset:2px;}
.fm-test-opt:hover .fm-test-box{border-color:var(--t-gold);}
.fm-test-q.is-missing legend{color:#B42318;}
.fm-test-q.is-missing .fm-test-box{border-color:#B42318;}

/* Tus datos */
.fm-test-datos{padding-top:28px;}
.fm-test-datos h2{font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-weight:700; font-size:22px; color:var(--t-navy); margin:0 0 4px;}
.fm-test-datos > p{margin:0 0 16px;}
.fm-test-field{display:block; margin-bottom:14px; font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-weight:700; font-size:13px;}
.fm-test-field em{font-weight:400; color:var(--t-gray);}
.fm-test-field input{display:block; width:100%; margin-top:6px; padding:10px 12px; font:inherit; font-family:var(--font-body,'Lora',Georgia,serif); font-weight:400; font-size:15px; color:var(--t-navy); background:var(--t-light); border:1px solid var(--t-border); border-radius:2px;}
.fm-test-field input:focus{outline:2px solid var(--t-gold); outline-offset:0; background:#fff;}
.fm-test-consent{padding-left:0; margin:6px 0 16px;}
.fm-test-consent a{color:var(--t-navy); text-decoration:underline;}
.fm-test-hp{position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden;}
.fm-test .cf-turnstile{margin:0 0 16px;}
.fm-test-error{color:#B42318; font-size:14px; margin:0 0 14px;}
.fm-test-submit{display:inline-block; font-family:var(--font-button,'Montserrat',Arial,sans-serif); font-weight:700; font-size:15px; color:#fff; background:var(--t-blue); border:0; border-bottom:3px solid var(--t-gold); padding:14px 26px; cursor:pointer; border-radius:2px;}
.fm-test-submit:hover{background:var(--t-navy);}
.fm-test-submit[disabled]{opacity:.6; cursor:wait;}

/* Resultado */
.fm-test-result-body{padding:26px 32px 32px; border:1px solid var(--t-border); border-top:0; background:#fff;}
.fm-test-tramos{display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:22px;}
.fm-test-tramo i{display:block; height:30px; background:#E5E7EB;}
.fm-test-tramo.is-active i{background:#9AA8B5; height:38px; margin-top:-8px;}
.fm-test-tramo small{display:block; margin-top:6px; font-size:12px; color:var(--t-gray);}
.fm-test-tramo strong{font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-size:13px;}
.fm-test-tag{margin-left:8px; font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-size:10px; letter-spacing:.25em; color:var(--t-gold); font-weight:700;}
.fm-test-frase{font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-weight:700; margin:0 0 8px;}
.fm-test .fm-test-h3{font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-weight:700; font-size:16px; color:var(--t-navy); margin:22px 0 6px;}
.fm-test-refuerzos{display:grid; grid-template-columns:150px 1fr; margin:0;}
.fm-test-refuerzos dt,.fm-test-refuerzos dd{margin:0; padding:9px 0; border-bottom:1px solid var(--t-border); font-size:15px;}
.fm-test-refuerzos dt{font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-weight:700; color:var(--t-gold); padding-right:12px;}
.fm-test-paso{margin:24px 0 18px; padding:16px 20px; background:#EEF1F5; border-left:4px solid var(--t-navy);}
.fm-test-paso-label{font-family:var(--font-heading,'Montserrat',Arial,sans-serif); font-size:11px; letter-spacing:.3em; color:var(--t-gold); font-weight:700;}
.fm-test-paso p{margin:8px 0 0;}
.fm-test-paso a,.fm-test-cierre a{color:var(--t-navy); font-weight:700; text-decoration:underline; text-decoration-color:var(--t-gold); text-underline-offset:3px;}
.fm-test-cierre{margin:0 0 8px;}
.fm-test-aviso{font-size:13px; color:var(--t-gray); margin:0;}

@media (max-width:640px){
  .fm-test-hero{padding:18px 18px 24px;}
  .fm-test-hero-top span:last-child{display:none;}
  .fm-test-bars{display:none;}
  .fm-test-form,.fm-test-result-body{padding:20px 18px 26px;}
  .fm-test-opt{padding-left:0;}
  .fm-test-refuerzos{grid-template-columns:1fr;}
  .fm-test-refuerzos dt{border-bottom:0; padding-bottom:0;}
  .fm-test-tramos{gap:6px;}
  .fm-test-tag{display:block; margin:2px 0 0;}
}
