:root{
    --ax-ink:#1A2530;
    --ax-navy:#1A2530;
    --ax-cyan:#00B4D8;
    --ax-cyan-deep:#008fb2;
    --ax-cyan-soft:#7af0ff;
    --ax-grad:linear-gradient(120deg,#2ad0f0 0%,#00B4D8 48%,#008fb2 100%);
    --ax-grad-soft:linear-gradient(120deg,rgba(0,180,216,.16),rgba(0,180,216,.05));
    --ax-glass:rgba(255,255,255,.72);
    --ax-glass-brd:rgba(26,37,48,.08);
    --ax-shadow-lg:0 30px 80px -28px rgba(26,37,48,.34);
    --ax-shadow-md:0 18px 48px -22px rgba(26,37,48,.28);
    --ax-ease:cubic-bezier(.22,.7,.18,1);
    --mx:50%; --my:30%;
  }

  html{scroll-behavior:smooth}

  /* ---------- Fondo animado tipo "aurora" (solo cian + navy de marca) ---------- */
  body{
    font-family:'Manrope','Montserrat',Arial,sans-serif !important;
    background-color:#eef4f9 !important;
    background-image:
      radial-gradient(1200px 800px at 8% -8%, rgba(0,180,216,.16), transparent 60%),
      radial-gradient(1100px 760px at 100% 4%, rgba(0,180,216,.10), transparent 58%),
      radial-gradient(900px 700px at 50% 120%, rgba(26,37,48,.10), transparent 60%) !important;
    background-attachment:fixed !important;
  }
  /* La máscara superior mantiene la franja del header/logo siempre limpia */
  .ax-bg{
    position:fixed; inset:0; z-index:0; overflow:hidden; pointer-events:none;
    -webkit-mask-image:linear-gradient(to bottom, transparent 0, #000 138px, #000 100%);
    mask-image:linear-gradient(to bottom, transparent 0, #000 138px, #000 100%);
  }
  .ax-orb{position:absolute; border-radius:50%; filter:blur(64px); opacity:.5; will-change:transform}
  .ax-orb.o1{width:520px; height:520px; top:-110px; left:-120px; background:radial-gradient(circle at 30% 30%,#9af2ff,#00B4D8); animation:axFloat1 22s var(--ax-ease) infinite}
  .ax-orb.o2{width:560px; height:560px; top:6%; right:-160px; background:radial-gradient(circle at 70% 30%,#bfeefc,#1A2530); animation:axFloat2 26s var(--ax-ease) infinite}
  .ax-orb.o3{width:480px; height:480px; bottom:-160px; left:34%; background:radial-gradient(circle at 50% 50%,#9af2ff,#0090c9); animation:axFloat3 30s var(--ax-ease) infinite}
  .ax-grid{position:absolute; inset:0; background-image:linear-gradient(rgba(26,37,48,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(26,37,48,.045) 1px,transparent 1px); background-size:48px 48px; mask-image:radial-gradient(circle at 50% 30%,#000,transparent 78%); -webkit-mask-image:radial-gradient(circle at 50% 30%,#000,transparent 78%)}
  @keyframes axFloat1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(60px,40px) scale(1.08)}}
  @keyframes axFloat2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-70px,50px) scale(1.1)}}
  @keyframes axFloat3{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(40px,-50px) scale(1.06)}}

  main.mortgage-public-shell{position:relative; z-index:1}
  .premium-footer{position:relative; z-index:1}

  /* ---------- Nav premium + LOGO siempre por encima y nunca tapado ---------- */
  .enterprise-header-wrapper{z-index:10001 !important}
  .enterprise-nav-bar{
    background:rgba(255,255,255,.68) !important;
    border:1px solid rgba(255,255,255,.6) !important;
    box-shadow:0 18px 50px -20px rgba(26,37,48,.30) !important;
    backdrop-filter:blur(22px) saturate(160%) !important; -webkit-backdrop-filter:blur(22px) saturate(160%) !important;
  }
  .brand-logo{z-index:6 !important}
  .brand-logo img{filter:drop-shadow(0 10px 18px rgba(26,37,48,.22)) drop-shadow(0 0 12px rgba(255,255,255,.65)) !important}
  .nav-link{font-family:'Manrope',sans-serif !important; letter-spacing:1.2px !important; transition:.3s var(--ax-ease) !important}
  .nav-link:hover,.nav-link.active-section{box-shadow:0 8px 22px -8px rgba(0,180,216,.55) !important}

  /* ====================================================== */
  /*  HERO / PASO 1 — sección oscura cinematográfica         */
  /* ====================================================== */
  .wizard-intro{
    background:
      radial-gradient(900px 380px at var(--mx) var(--my), rgba(0,180,216,.26), transparent 60%),
      radial-gradient(700px 420px at 88% 0%, rgba(0,180,216,.18), transparent 60%),
      linear-gradient(160deg,#213140 0%,#15212c 60%,#1A2530 100%) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:32px !important;
    box-shadow:var(--ax-shadow-lg), inset 0 1px 0 rgba(255,255,255,.08) !important;
    padding:clamp(40px,6vw,76px) clamp(22px,4vw,60px) clamp(34px,4vw,56px) !important;
    overflow:hidden !important;
  }
  .wizard-intro::before{
    content:"" !important; position:absolute !important; inset:0 !important;
    background:
      radial-gradient(60% 120% at 15% -10%, rgba(0,180,216,.22), transparent 60%),
      radial-gradient(50% 120% at 100% 0%, rgba(0,180,216,.16), transparent 55%) !important;
    animation:axHeroPulse 9s ease-in-out infinite !important; pointer-events:none !important;
  }
  @keyframes axHeroPulse{0%,100%{opacity:.7}50%{opacity:1}}
  .wizard-intro::after{
    content:""; position:absolute; inset:0; pointer-events:none;
    background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
    background-size:42px 42px;
    mask-image:radial-gradient(circle at 50% 0%,#000,transparent 70%); -webkit-mask-image:radial-gradient(circle at 50% 0%,#000,transparent 70%);
  }
  .wizard-intro > *{position:relative; z-index:2}
  .step-kicker{
    color:#bfeaff !important; background:rgba(0,180,216,.12); border:1px solid rgba(0,180,216,.28);
    padding:8px 16px; border-radius:999px; backdrop-filter:blur(6px);
  }
  .step-kicker::before,.step-kicker::after{background:linear-gradient(90deg,transparent,#7af0ff,transparent) !important}
  .sim-live-counter{
    color:var(--brand-dark) !important; background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(234,251,255,.94)) !important;
    border:1px solid rgba(127,227,255,.82) !important;
    box-shadow:0 24px 55px -28px rgba(127,227,255,.95), 0 16px 38px rgba(3,18,30,.26), inset 0 1px 0 rgba(255,255,255,.92) !important;
    backdrop-filter:blur(10px) saturate(140%); -webkit-backdrop-filter:blur(10px) saturate(140%);
  }
  .sim-live-counter span{color:#1A2530 !important}
  .sim-live-counter strong{
    background:linear-gradient(135deg,#00B4D8,#1282a2) !important; color:#fff !important;
    text-shadow:none; box-shadow:0 12px 26px rgba(0,180,216,.34) !important
  }
  .wizard-intro h2{
    font-family:'Space Grotesk','Manrope',sans-serif !important;
    font-size:clamp(38px,6.2vw,72px) !important; font-weight:700 !important;
    letter-spacing:-.02em !important; line-height:1.02 !important;
    background:linear-gradient(100deg,#ffffff 0%,#d2f4ff 42%,#7fe3ff 72%,#ffffff 100%) !important;
    -webkit-background-clip:text !important; background-clip:text !important;
    -webkit-text-fill-color:transparent !important; color:transparent !important;
    background-size:200% auto; animation:axShimmer 7s linear infinite;
  }
  @keyframes axShimmer{to{background-position:200% center}}
  .wizard-intro p{color:rgba(226,240,252,.74) !important; font-size:clamp(15px,1.5vw,18px) !important}

  /* Tarjetas de modo (glass oscuro flotante) */
  .wizard-modos .modo,
  .wizard-modos .modo:last-child{
    background:rgba(255,255,255,.055) !important;
    border:1px solid rgba(255,255,255,.12) !important;
    color:#fff !important;
    border-radius:22px !important;
    box-shadow:0 24px 50px -30px rgba(0,0,0,.7), inset 0 1px 0 rgba(255,255,255,.10) !important;
    backdrop-filter:blur(14px) saturate(140%); -webkit-backdrop-filter:blur(14px) saturate(140%);
    transition:transform .4s var(--ax-ease), box-shadow .4s var(--ax-ease), background .4s var(--ax-ease), border-color .4s var(--ax-ease) !important;
    position:relative; overflow:hidden;
  }
  .wizard-modos .modo::after{
    content:""; position:absolute; inset:0; border-radius:inherit; padding:1px;
    background:var(--ax-grad); opacity:0; transition:opacity .4s var(--ax-ease);
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
    -webkit-mask-composite:xor; mask-composite:exclude; pointer-events:none;
  }
  .wizard-modos .modo:hover{
    transform:translateY(-8px) !important;
    background:rgba(255,255,255,.10) !important; border-color:rgba(0,180,216,.5) !important;
    box-shadow:0 36px 70px -30px rgba(0,180,216,.6) !important; color:#fff !important;
  }
  .wizard-modos .modo:hover::after{opacity:1}
  .wizard-modos .modo .mode-title{color:#fff !important; font-family:'Space Grotesk',sans-serif !important}
  .wizard-modos .modo .mode-copy{color:rgba(226,240,252,.66) !important}
  .wizard-modos .modo.activo{background:var(--ax-grad) !important; border-color:transparent !important}
  .wizard-modos .modo.activo .mode-copy{color:rgba(255,255,255,.85) !important}
  .mode-icon{
    background:var(--ax-grad) !important; color:#fff !important;
    box-shadow:0 12px 26px -10px rgba(0,180,216,.7) !important; font-family:'Space Grotesk',sans-serif !important;
  }

  /* ====================================================== */
  /*  TARJETAS / FORM / RESULTADOS — glass claro elevado     */
  /* ====================================================== */
  .card{
    background:var(--ax-glass) !important;
    border:1px solid rgba(255,255,255,.7) !important;
    border-radius:24px !important;
    box-shadow:var(--ax-shadow-md), inset 0 1px 0 rgba(255,255,255,.6) !important;
    backdrop-filter:blur(18px) saturate(150%); -webkit-backdrop-filter:blur(18px) saturate(150%);
    transition:transform .45s var(--ax-ease), box-shadow .45s var(--ax-ease) !important;
  }
  .results-column .card:hover{transform:translateY(-4px); box-shadow:var(--ax-shadow-lg)}
  .card h2{font-family:'Space Grotesk','Manrope',sans-serif !important; letter-spacing:-.01em !important}
  .eyebrow{color:var(--ax-cyan-deep) !important; font-weight:700 !important}
  .eyebrow::before{background:var(--ax-grad) !important; border-radius:999px}

  .form-mode-summary{
    background:linear-gradient(135deg,rgba(0,180,216,.10),rgba(0,180,216,.03)) !important;
    border:1px solid rgba(0,180,216,.18) !important; border-radius:18px !important;
  }

  /* Inputs con foco luminoso */
  input,select{
    border-radius:13px !important;
    border:1px solid rgba(26,37,48,.12) !important;
    background:rgba(255,255,255,.85) !important;
    transition:border-color .25s var(--ax-ease), box-shadow .25s var(--ax-ease), background .25s var(--ax-ease) !important;
    font-family:'Manrope',sans-serif !important;
  }
  input:focus,select:focus{
    outline:none !important; border-color:var(--ax-cyan) !important;
    box-shadow:0 0 0 4px rgba(0,180,216,.16), 0 8px 22px -12px rgba(0,180,216,.5) !important;
    background:#fff !important;
  }
  label{font-family:'Manrope',sans-serif !important; font-weight:600 !important}

  /* Botones con degradado y brillo */
  button{font-family:'Manrope',sans-serif !important; letter-spacing:.1em !important}
  #btnCalc,#btnWsp,#btnWspTop,.result-actions #btnWspTop,
  button:not(.btn-mini):not(.modo):not(.compra):not(.lead-close):not(.help-tip-close):not(.d-del):not(.btn-secondary):not(.btn-back):not(.mobile-menu-btn){
    background:var(--ax-grad) !important;
    background-size:180% auto !important;
    border-radius:16px !important;
    box-shadow:0 18px 38px -16px rgba(0,180,216,.6) !important;
    transition:transform .3s var(--ax-ease), box-shadow .3s var(--ax-ease), background-position .6s var(--ax-ease) !important;
    position:relative; overflow:hidden;
  }
  #btnCalc{padding:17px !important; font-size:14.5px !important}
  #btnWsp,#btnWspTop{
    display:inline-flex !important; align-items:center; justify-content:center; gap:9px;
    background:linear-gradient(135deg,#25D366,#128C7E) !important;
    box-shadow:0 18px 38px -16px rgba(37,211,102,.68) !important;
    color:#fff !important;
  }
  #btnWsp i,#btnWspTop i{font-size:17px; line-height:1}
  #btnCalc:hover,#btnWsp:hover,#btnWspTop:hover,
  button:not(.btn-mini):not(.modo):not(.compra):not(.lead-close):not(.help-tip-close):not(.d-del):not(.btn-secondary):not(.btn-back):not(.mobile-menu-btn):hover{
    background-position:right center !important;
    transform:translateY(-3px) !important;
    box-shadow:0 26px 52px -16px rgba(0,180,216,.78) !important;
  }
  #btnWsp:hover,#btnWspTop:hover{box-shadow:0 26px 52px -16px rgba(37,211,102,.82) !important}
  .btn-mini{border-radius:999px !important; border:1.5px solid var(--ax-cyan) !important; transition:.25s var(--ax-ease) !important}
  .btn-mini:hover{background:rgba(0,180,216,.12) !important; transform:translateY(-2px)}
  .result-actions .btn-back{background:linear-gradient(135deg,#1A2530,#243646) !important; border-radius:16px !important}

  /* Toolbar de resultados */
  .result-toolbar{
    background:
      radial-gradient(600px 200px at 90% -40%, rgba(0,180,216,.16), transparent 60%),
      linear-gradient(135deg,rgba(255,255,255,.85),rgba(237,247,251,.85)) !important;
    border:1px solid rgba(0,180,216,.18) !important; border-radius:24px !important;
    box-shadow:var(--ax-shadow-md) !important;
  }
  .result-toolbar h2{font-family:'Space Grotesk',sans-serif !important; letter-spacing:-.01em !important}

  /* KPIs con barra superior degradada + entrada animada */
  .kpi{
    border:1px solid rgba(26,37,48,.08) !important; border-radius:18px !important;
    background:linear-gradient(180deg,#fff,#f7fbfe) !important;
    box-shadow:0 14px 30px -22px rgba(26,37,48,.5) !important;
    position:relative; overflow:hidden;
    transition:transform .35s var(--ax-ease), box-shadow .35s var(--ax-ease);
  }
  .kpi::before{content:""; position:absolute; top:0; left:0; right:0; height:3px; background:var(--ax-grad); opacity:.9}
  .kpi:hover{transform:translateY(-4px); box-shadow:0 22px 44px -22px rgba(0,180,216,.6)}
  .kpi strong{font-family:'Space Grotesk',sans-serif !important}
  #kpis .kpi{animation:axPop .6s var(--ax-ease) both}
  #kpis .kpi:nth-child(2){animation-delay:.07s}
  #kpis .kpi:nth-child(3){animation-delay:.14s}
  #kpis .kpi:nth-child(4){animation-delay:.21s}
  #kpis .kpi:nth-child(5){animation-delay:.28s}
  #kpis .kpi:nth-child(6){animation-delay:.35s}
  @keyframes axPop{from{opacity:0; transform:translateY(16px) scale(.96)}to{opacity:1; transform:none}}

  .ev-metric{border-radius:16px !important; box-shadow:0 14px 30px -24px rgba(26,37,48,.5) !important; animation:axPop .6s var(--ax-ease) both}
  .ev-metric strong{font-family:'Space Grotesk',sans-serif !important}
  .highlight{
    background:linear-gradient(135deg,rgba(0,180,216,.12),rgba(0,180,216,.03)) !important;
    border:1px solid rgba(0,180,216,.3) !important; border-radius:16px !important;
  }
  ul.recs li{animation:axFadeUp .6s var(--ax-ease) both}
  ul.recs li:nth-child(2){animation-delay:.06s} ul.recs li:nth-child(3){animation-delay:.12s}
  ul.recs li:nth-child(4){animation-delay:.18s} ul.recs li:nth-child(5){animation-delay:.24s}
  ul.recs li:nth-child(6){animation-delay:.3s} ul.recs li:nth-child(n+7){animation-delay:.36s}
  @keyframes axFadeUp{from{opacity:0; transform:translateY(12px)}to{opacity:1; transform:none}}

  th{color:var(--ax-cyan-deep) !important}
  table tbody tr{transition:background .2s var(--ax-ease)}
  table tbody tr:hover{background:rgba(0,180,216,.05)}

  /* ---------- Overlay del modal con efectos de aurora (colores de marca) ---------- */
  .lead-modal{
    background:
      radial-gradient(720px 480px at 18% 16%, rgba(0,180,216,.30), transparent 60%),
      radial-gradient(680px 520px at 84% 86%, rgba(0,180,216,.16), transparent 62%),
      rgba(26,37,48,.62) !important;
    backdrop-filter:blur(10px) saturate(140%) !important; -webkit-backdrop-filter:blur(10px) saturate(140%) !important;
    overflow:hidden;
  }
  .lead-modal::before{
    content:""; position:absolute; inset:-25%; z-index:0; pointer-events:none;
    background:
      radial-gradient(closest-side, rgba(0,180,216,.38), transparent 70%) 12% 16%/44% 44% no-repeat,
      radial-gradient(closest-side, rgba(122,240,255,.24), transparent 70%) 88% 84%/48% 48% no-repeat,
      radial-gradient(closest-side, rgba(26,37,48,.55), transparent 70%) 62% 8%/42% 42% no-repeat;
    filter:blur(22px);
    animation:axOverlayDrift 14s ease-in-out infinite;
  }
  @keyframes axOverlayDrift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(2.5%,-2.5%) scale(1.07)}}
  .lead-dialog{
    position:relative; z-index:1;
    border:1px solid rgba(0,180,216,.18) !important;
    border-radius:24px !important;
    box-shadow:0 40px 120px -30px rgba(10,22,34,.6), 0 0 0 1px rgba(255,255,255,.5) inset !important;
    animation:axPop .5s var(--ax-ease) both;
  }
  .lead-head h2{font-family:'Space Grotesk',sans-serif !important}

  /* ---------- Pie de página premium (claro, colores de marca) ---------- */
  .premium-footer{
    background-color:#f7fbfd !important;
    background-image:
      radial-gradient(720px 340px at 10% 0%, rgba(0,180,216,.08), transparent 60%),
      radial-gradient(700px 340px at 92% 6%, rgba(26,37,48,.05), transparent 62%) !important;
    border-top:1px solid rgba(0,180,216,.14) !important;
  }
  .premium-footer::before{height:4px !important}
  /* Títulos con acento cian (alineación segura en desktop y móvil) */
  .pf-col:not(.pf-contact) .pf-title{
    font-family:'Space Grotesk',sans-serif !important;
    display:inline-flex; align-items:center; gap:10px;
  }
  .pf-col:not(.pf-contact) .pf-title::before{
    content:""; width:18px; height:3px; border-radius:999px; background:var(--ax-grad); flex:none;
  }
  .pf-contact .pf-title{font-family:'Space Grotesk',sans-serif !important}
  .pf-link{font-family:'Manrope',sans-serif !important}
  .pf-link::after{height:2px !important; background:var(--ax-grad) !important}
  /* Botones sociales con relleno en degradado al pasar el cursor */
  .pf-social-btn{
    border:1px solid rgba(26,37,48,.08) !important;
    transition:transform .3s var(--ax-ease), box-shadow .3s var(--ax-ease), background .3s var(--ax-ease), color .3s var(--ax-ease) !important;
  }
  .pf-social-btn:hover{
    background:var(--ax-grad) !important; color:#fff !important;
    transform:translateY(-5px) scale(1.06) !important;
    box-shadow:0 14px 26px -10px rgba(0,180,216,.6) !important;
  }
  /* Barra de indicadores "EN VIVO" como panel glass */
  .pf-indicators-bar{
    background:rgba(255,255,255,.72) !important;
    border:1px solid rgba(0,180,216,.18) !important;
    border-radius:16px !important;
    box-shadow:0 18px 44px -26px rgba(26,37,48,.4) !important;
    backdrop-filter:blur(12px) saturate(150%); -webkit-backdrop-filter:blur(12px) saturate(150%);
  }
  .pf-indicator-item{transition:color .25s var(--ax-ease)}
  .pf-indicator-item:hover{color:var(--ax-cyan-deep)}
  /* Logo del footer con leve realce */
  .pf-logo-col img{transition:transform .4s var(--ax-ease), filter .4s var(--ax-ease)}
  .pf-logo-col img:hover{transform:translateY(-2px) scale(1.03); filter:drop-shadow(0 12px 22px rgba(0,180,216,.25))}
  .pf-bottom{border-top:1px solid rgba(26,37,48,.1) !important}

  /* ---------- Reveal al hacer scroll ---------- */
  .ax-reveal{opacity:0; transform:translateY(30px); transition:opacity .8s var(--ax-ease), transform .8s var(--ax-ease)}
  .ax-reveal.ax-in{opacity:1; transform:none}
  .wizard-modos .modo.ax-reveal{transition-delay:calc(var(--ax-i,0) * .09s)}
  .pf-col.ax-reveal{transition-delay:calc(var(--ax-i,0) * .06s)}

  /* ---------- Respeto a usuarios con movimiento reducido ---------- */
  @media (prefers-reduced-motion: reduce){
    *,*::before,*::after{animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important}
    .ax-reveal{opacity:1 !important; transform:none !important}
    html{scroll-behavior:auto}
  }
  @media (max-width:900px){
    .ax-orb{filter:blur(48px)}
    .wizard-intro{border-radius:24px !important}
  }

  /* ---------- Ajuste movil: campos consistentes en iPhone y Android ---------- */
  @media (max-width:680px){
    html{
      -webkit-text-size-adjust:100%;
      text-size-adjust:100%;
    }
    .mortgage-public-shell{padding-top:96px}
    .wrap{padding-inline:14px}
    .card,
    .calc-form-card,
    .result-toolbar{
      border-radius:22px !important;
      padding:18px 16px !important;
    }
    .grid{gap:16px}
    .calc-form-card h2{font-size:21px !important}
    .row2,
    .lead-grid,
    .lead-phone-split,
    .lead-email-split,
    .comp-row,
    .compras{
      grid-template-columns:1fr !important;
      gap:10px !important;
    }
    .row2 > div > label,
    .lead-field label{
      min-height:0 !important;
      margin-top:12px !important;
      margin-bottom:6px !important;
      align-items:flex-start !important;
    }
    .calc-form-card input:not([type="checkbox"]),
    .calc-form-card select,
    .lead-dialog input:not([type="checkbox"]),
    .lead-dialog select{
      min-height:50px !important;
      height:50px !important;
      padding:13px 14px !important;
      font-size:16px !important;
      line-height:1.2 !important;
      border-radius:14px !important;
      transform:none !important;
    }
    .calc-form-card input[type="number"],
    .lead-dialog input[type="number"]{
      appearance:textfield;
      -moz-appearance:textfield;
    }
    .calc-form-card input:focus,
    .calc-form-card select:focus,
    .lead-dialog input:focus,
    .lead-dialog select:focus{
      font-size:16px !important;
      transform:none !important;
    }
    .pct-wrap input,
    .lead-input-status input{
      min-height:50px !important;
      height:50px !important;
    }
    .pct-wrap::after{right:14px}
    #precio + #unidadPrecio,
    #unidadPrecio{
      width:96px !important;
      flex:0 0 96px !important;
    }
    .compra{
      min-height:50px !important;
      display:flex !important;
      align-items:center !important;
      justify-content:center !important;
      margin:0 !important;
      padding:13px 14px !important;
      border-radius:14px !important;
      font-size:14px !important;
      line-height:1.2 !important;
      letter-spacing:.03em !important;
    }
    .btn-mini,
    .result-actions button,
    .lead-actions button{
      min-height:50px !important;
      padding:13px 14px !important;
      border-radius:16px !important;
      font-size:13px !important;
      line-height:1.2 !important;
    }
    .deuda-row{
      grid-template-columns:1fr 50px !important;
      gap:10px !important;
      align-items:stretch !important;
      margin-bottom:12px !important;
    }
    .deuda-row .d-tipo,
    .deuda-row .d-modo,
    .deuda-row .d-monto,
    .deuda-row .d-meses{
      grid-column:1 / 2 !important;
    }
    .deuda-row .d-del{
      grid-column:2 / 3 !important;
      grid-row:1 / 2 !important;
      width:50px !important;
      height:50px !important;
      min-height:50px !important;
      align-self:end !important;
      border-radius:14px !important;
      margin:0 !important;
    }
    .d-detalle{
      grid-template-columns:1fr 1fr !important;
      gap:8px !important;
    }
    .d-mas{grid-column:1 / -1 !important}
    .lead-email-split span{display:none !important}
    .lead-actions{gap:10px !important}
    .check input,
    .lead-check input{
      width:18px !important;
      height:18px !important;
      min-height:18px !important;
      padding:0 !important;
      border-radius:4px !important;
      appearance:auto !important;
      -webkit-appearance:auto !important;
    }
    .lead-check{
      align-items:flex-start !important;
      padding:14px !important;
      border-radius:14px !important;
    }
  }

  /* ---------- Ayuda contextual segura: no se sale de la pantalla ---------- */
  .q::after{display:none !important}
  .q.on{
    background:var(--ax-cyan) !important;
    border-color:var(--ax-cyan) !important;
    color:#fff !important;
    box-shadow:0 0 0 4px rgba(0,180,216,.12) !important;
  }
  .help-tip-backdrop[hidden],
  .help-tip-popover[hidden]{display:none !important}
  .help-tip-backdrop{
    position:fixed; inset:0; z-index:12980;
    background:rgba(26,37,48,.30);
    backdrop-filter:blur(2px); -webkit-backdrop-filter:blur(2px);
  }
  .help-tip-popover{
    position:fixed; z-index:12990;
    width:min(330px, calc(100vw - 28px));
    max-height:min(360px, calc(100vh - 28px));
    overflow:auto;
    padding:15px 48px 15px 16px;
    border:1px solid rgba(0,180,216,.26);
    border-radius:16px;
    background:#fff;
    color:var(--brand-dark);
    box-shadow:0 28px 70px -28px rgba(26,37,48,.55), inset 0 1px 0 rgba(255,255,255,.9);
    font-size:13px;
    line-height:1.5;
    letter-spacing:0;
    text-transform:none;
  }
  .help-tip-popover::before{
    content:""; position:absolute; top:-7px; left:var(--arrow-x, 50%);
    width:14px; height:14px;
    background:#fff;
    border-left:1px solid rgba(0,180,216,.26);
    border-top:1px solid rgba(0,180,216,.26);
    transform:translateX(-50%) rotate(45deg);
  }
  .help-tip-text{font-weight:600}
  .help-tip-close{
    position:absolute !important; top:9px !important; right:9px !important;
    width:30px !important; height:30px !important; min-height:30px !important;
    margin:0 !important; padding:0 !important;
    display:grid !important; place-items:center !important;
    border-radius:999px !important;
    border:1px solid rgba(216,76,63,.18) !important;
    background:#fff !important;
    color:var(--bad) !important;
    box-shadow:none !important;
    font-size:18px !important;
    line-height:1 !important;
    letter-spacing:0 !important;
    cursor:pointer;
  }
  .help-tip-close:hover{background:rgba(216,76,63,.08) !important; transform:none !important}
  @media (max-width:680px){
    .help-tip-popover{
      left:14px !important;
      right:14px !important;
      top:auto !important;
      bottom:max(14px, env(safe-area-inset-bottom)) !important;
      width:auto !important;
      max-height:min(62vh, 430px);
      padding:18px 52px 18px 18px;
      border-radius:20px;
      font-size:14px;
    }
    .help-tip-popover::before{display:none}
  }

  /* ---------- Indicadores automaticos bloqueados ---------- */
  .indicator-lock-shell{position:relative; display:block}
  .indicator-lock-shell::before{
    content:"\f023";
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    position:absolute; top:50%; right:14px; transform:translateY(-50%);
    z-index:4; pointer-events:none; opacity:0;
    font-size:14px; line-height:1; color:#7a8794;
  }
  .indicator-lock-shell.is-locked::before{opacity:.72}
  .indicator-lock-shell.is-locked input.indicator-locked{padding-right:48px !important}
  .indicator-lock-shell.pct-wrap.is-locked::before{right:37px}
  .indicator-lock-shell.pct-wrap.is-locked input.indicator-locked{padding-right:68px !important}

  /* ---------- Alineacion desktop de campos de formulario ---------- */
  @media (min-width:681px){
    .calc-form-card input:not([type="checkbox"]),
    .calc-form-card select,
    .lead-dialog input:not([type="checkbox"]),
    .lead-dialog select{
      height:56px !important;
      min-height:56px !important;
      padding-top:0 !important;
      padding-bottom:0 !important;
      line-height:1.2 !important;
    }
    .calc-form-card .pct-wrap,
    .calc-form-card .indicator-lock-shell,
    .lead-dialog .lead-input-status{
      display:block;
      min-height:56px;
    }
    .calc-form-card .pct-wrap input,
    .calc-form-card .indicator-lock-shell input,
    .lead-dialog .lead-input-status input{
      height:56px !important;
      min-height:56px !important;
    }
    .calc-form-card .row2 > div > label{
      min-height:38px;
      display:flex;
      align-items:flex-end;
    }
    .calc-form-card #precio,
    .calc-form-card #unidadPrecio{
      height:56px !important;
      min-height:56px !important;
    }
    .calc-form-card #unidadPrecio{
      display:block;
      align-self:stretch;
    }
    .calc-form-card .deuda-row input,
    .calc-form-card .deuda-row select,
    .calc-form-card .comp-row input,
    .calc-form-card .comp-row select{
      height:48px !important;
      min-height:48px !important;
      padding-top:0 !important;
      padding-bottom:0 !important;
    }
    .calc-form-card .d-del{
      height:48px !important;
      min-height:48px !important;
    }
  }
