/* Electrum Signature Index™ 2.0 — estilos propios (complementa electrum.css + Tailwind) */
:root{--si-p:#4a148c;--si-pl:#7c43bd;--si-g:#b8975a;--si-gl:#d8c08a;--si-ink:#1a1a1a}

/* Progreso por capítulos */
.si-dots{display:flex;gap:.4rem;align-items:center}
.si-dot{width:26px;height:26px;border-radius:99px;display:grid;place-items:center;font-size:.68rem;font-weight:800;color:#9ca3af;background:#f3f1f7;transition:all .3s}
.si-dot.on{background:linear-gradient(135deg,var(--si-p),var(--si-pl));color:#fff;box-shadow:0 0 0 4px rgba(74,20,140,.12)}
.si-dot.done{background:var(--si-gl);color:var(--si-ink)}
.si-chtitle{display:flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--si-p)}
.si-chtitle i{font-size:1.1rem}
#si-hint{font-size:.9rem;color:#6b7280;line-height:1.55;margin:-.75rem 0 1.5rem}

/* Elección forzada */
.si-fc{display:grid;gap:.65rem}
.si-fc-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid #e5e7eb;border-radius:14px;padding:.85rem 1rem;background:#fff;transition:all .2s}
.si-fc-row p{font-size:.95rem;color:#1f2937;line-height:1.4}
.si-fc-row.is-m{border-color:var(--si-p);background:linear-gradient(90deg,rgba(74,20,140,.07),rgba(184,151,90,.05));box-shadow:0 0 0 3px rgba(74,20,140,.08)}
.si-fc-row.is-l{border-color:#e5e7eb;background:#fafafa}
.si-fc-row.is-l p{color:#9ca3af;text-decoration:line-through;text-decoration-color:rgba(156,163,175,.6)}
.si-fc-btns{display:flex;gap:.35rem;flex-shrink:0}
.si-fc-btns button{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:.5rem .8rem;border-radius:99px;border:1px solid #e5e7eb;color:#6b7280;background:#fff;transition:all .15s}
.si-fc-btns button:hover{border-color:var(--si-pl);color:var(--si-p)}
.si-fc-row.is-m [data-k=m]{background:var(--si-p);border-color:var(--si-p);color:#fff}
.si-fc-row.is-l [data-k=l]{background:#4b5563;border-color:#4b5563;color:#fff}
@media(max-width:520px){.si-fc-row{flex-direction:column;align-items:flex-start}.si-fc-btns{align-self:flex-end}}

/* Inputs */
.si-input{width:100%;border:1px solid #e5e7eb;border-radius:14px;padding:1rem 1.1rem;font-size:1.05rem;outline:none;transition:all .2s}
.si-input:focus{border-color:var(--si-p);box-shadow:0 0 0 4px rgba(74,20,140,.1)}
.si-time{display:block;border:1px solid #e5e7eb;border-radius:14px;padding:1rem;background:#fff}
.si-time span{display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:800;color:#6b7280;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}
.si-time span i{font-size:1.1rem;color:var(--si-p)}
.si-time select{width:100%;font-size:1.4rem;font-weight:800;color:var(--si-ink);background:transparent;outline:none;cursor:pointer}

/* Interludio */
.si-inter-in{padding:1rem 0;animation:siUp .5s ease both}
.si-inter-k{display:flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--si-g);margin-bottom:1rem}
.si-inter-t{font-family:'Cormorant Garamond',serif;font-size:clamp(1.6rem,3.2vw,2.2rem);line-height:1.2;color:var(--si-ink)}
.si-inter-t strong{color:var(--si-p)}
.si-inter-next{display:flex;gap:1rem;align-items:center;margin-top:2rem;padding:1rem 1.2rem;border-radius:16px;background:#f7f5fb}
.si-inter-next i{font-size:2rem;color:var(--si-p)}
.si-inter-next small{display:block;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#9ca3af}
.si-inter-next strong{display:block;color:var(--si-ink)}
.si-inter-next span{font-size:.85rem;color:#6b7280}
.si-loader{width:64px;height:64px;margin:0 auto;border-radius:99px;border:3px solid #efeaf7;border-top-color:var(--si-p);border-right-color:var(--si-g);animation:siSpin 1s linear infinite}
.si-spin{display:inline-block;animation:siSpin 1s linear infinite}
@keyframes siSpin{to{transform:rotate(360deg)}}
@keyframes siUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* Invitación */
.si-banner{display:flex;gap:.7rem;align-items:flex-start;padding:1rem 1.1rem;border-radius:14px;background:linear-gradient(90deg,rgba(184,151,90,.14),rgba(74,20,140,.06));border:1px solid rgba(184,151,90,.35);font-size:.9rem;color:#3b2a10;margin-bottom:1.5rem}
.si-banner i{font-size:1.5rem;color:var(--si-g)}

/* Resultado */
#si-result{animation:siUp .6s ease both}
.si-head{text-align:center}
.si-arch{font-family:'Cormorant Garamond',serif;font-size:clamp(2.4rem,5vw,3.6rem);line-height:1.02;color:var(--si-ink);font-weight:700}
.si-code{margin-top:.9rem}
.si-code span{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;font-weight:700;letter-spacing:.14em;padding:.45rem .9rem;border-radius:99px;color:var(--si-p);background:#f5f1fb;border:1px solid #e6dcf5}
.si-anim{animation:siFade .9s ease both}
@keyframes siFade{from{opacity:0;transform:scale(.92);transform-origin:center}to{opacity:1;transform:none}}
.si-sw{display:inline-block;width:14px;height:4px;border-radius:2px;vertical-align:middle}
.si-sw-d{background:repeating-linear-gradient(90deg,#b8975a 0 5px,transparent 5px 8px)}
.si-pill-ok,.si-pill-warn{display:flex;gap:.8rem;padding:1rem 1.1rem;border-radius:14px;font-size:.9rem;line-height:1.5;margin-bottom:.7rem}
.si-pill-ok strong,.si-pill-warn strong{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:.15rem}
.si-pill-ok{background:#f5f1fb;color:#2e1060}.si-pill-ok i{color:var(--si-p);font-size:1.3rem}
.si-pill-warn{background:#fdf8ee;color:#5b4318}.si-pill-warn i{color:var(--si-g);font-size:1.3rem}
.si-index{display:grid;grid-template-columns:auto 1fr;gap:2.5rem;align-items:center;padding:2rem;border-radius:22px;background:linear-gradient(135deg,#fbfaff,#f6f2fc);border:1px solid #ece6f7;margin-bottom:1.5rem}
@media(max-width:700px){.si-index{grid-template-columns:1fr;text-align:left}.si-index>div:first-child{text-align:center}}
.si-index-b{font-size:.75rem;font-weight:800;color:var(--si-p);text-transform:uppercase;letter-spacing:.08em;margin-top:.5rem;max-width:170px;margin-inline:auto}
.si-ring{position:relative;margin:0 auto}
.si-ring svg{width:100%;height:auto;display:block}
.si-ring-arc{transition:stroke-dasharray 1.2s ease}
.si-ring-v{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.si-ring-v strong{font-family:'Cormorant Garamond',serif;font-size:2.8rem;line-height:1;color:var(--si-ink)}
.si-ring-v small{font-size:.65rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.1em}
.si-bar-t{height:7px;border-radius:99px;background:#ece8f3;overflow:hidden}
.si-bar-t span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--si-p),var(--si-pl));transition:width 1s ease}
.si-bar-gold span{background:linear-gradient(90deg,var(--si-g),var(--si-gl))}
.si-insight{display:flex;gap:1rem;padding:1.3rem 1.4rem;border-radius:18px;background:var(--si-ink);color:#e5e7eb;margin-bottom:2.5rem;line-height:1.55}
.si-insight i{font-size:2rem;color:var(--si-gl);flex-shrink:0}
.si-insight strong{display:block;color:var(--si-gl);font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;margin-bottom:.2rem}

/* Informe */
.si-rep{padding:2rem 0;border-top:1px solid #f0edf5}
.si-rep header{display:flex;align-items:center;gap:.7rem;margin-bottom:1.4rem}
.si-rep header span{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--si-g);line-height:1}
.si-rep header i{font-size:1.5rem;color:var(--si-p)}
.si-rep header h3{font-size:1.25rem;font-weight:800;color:var(--si-ink)}
.si-shift{display:grid;grid-template-columns:110px 1fr;gap:.8rem;align-items:center;margin-bottom:.8rem}
.si-shift-l{font-size:.78rem;font-weight:700;color:#4b5563}
.si-shift .si-bar-t{margin:.2rem 0}
.si-big{font-family:'Cormorant Garamond',serif;font-size:3rem;line-height:1;color:var(--si-p);margin-bottom:.6rem}
.si-big small{font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--si-g);margin-left:.4rem}
.si-kpi{border-radius:14px;background:#f7f5fb;padding:.9rem 1rem}
.si-kpi small{display:block;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#9ca3af}
.si-kpi strong{font-size:1.05rem;color:var(--si-ink)}
.si-gantt{display:grid;gap:.45rem}
.si-g-row{display:grid;grid-template-columns:minmax(150px,34%) 1fr;gap:.8rem;align-items:center}
.si-g-row p{font-size:.78rem;font-weight:700;color:#374151;line-height:1.25}
.si-g-row p small{display:block;font-weight:600;color:#9ca3af;font-size:.7rem}
.si-g-track{position:relative;height:22px;border-radius:7px;background:repeating-linear-gradient(90deg,#f6f4fa 0 calc(100%/21.5*3 - 1px),#ebe7f3 calc(100%/21.5*3 - 1px) calc(100%/21.5*3))}
.si-g-track span{position:absolute;top:3px;bottom:3px;border-radius:5px}
.si-g-strat{background:linear-gradient(90deg,#4a148c,#7c43bd)}
.si-g-nego{background:#6a1b9a}
.si-g-hard{background:#8e5cc9}
.si-g-dip{background:repeating-linear-gradient(45deg,#d1d5db 0 5px,#e5e7eb 5px 10px)}
.si-g-crea{background:linear-gradient(90deg,#b8975a,#d8c08a)}
.si-g-phys{background:#1565c0}
.si-g-off{background:#1a1a1a}
.si-g-ticks{position:relative;height:16px}
.si-g-ticks span{position:absolute;transform:translateX(-50%);font-size:.62rem;font-weight:700;color:#9ca3af}
@media(max-width:600px){.si-g-row{grid-template-columns:1fr}.si-g-row p{margin-bottom:-.2rem}}
.si-card{border:1px solid #eceef2;border-radius:16px;padding:1.2rem 1.25rem;background:#fff;font-size:.86rem;color:#4b5563;line-height:1.55}
.si-card p{margin-bottom:.5rem}
.si-card h4{font-weight:800;color:var(--si-ink);font-size:1rem;margin-bottom:.6rem}
.si-card-n{font-size:.62rem!important;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--si-g)}
.si-fix{color:var(--si-p)!important;font-weight:700;margin-top:.7rem}
.si-quote{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-style:italic;color:var(--si-p)!important}
.si-manual{border-radius:20px;overflow:hidden;border:1px solid #e6dcf5;background:#fff}
.si-man-h{padding:1.4rem 1.6rem;background:linear-gradient(135deg,#2b0f55,#4a148c);color:#fff}
.si-man-h p{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:var(--si-gl)}
.si-man-h strong{display:block;font-family:'Cormorant Garamond',serif;font-size:2rem;line-height:1.1}
.si-man-h span{font-size:.75rem;color:#d9ccef}
.si-manual dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.si-man-i{padding:1rem 1.6rem;border-top:1px solid #f1edf7}
.si-man-i dt{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--si-p);margin-bottom:.25rem}
.si-man-i dd{font-size:.86rem;color:#374151;line-height:1.5}
.si-chip{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;padding:.6rem 1rem;border-radius:99px;border:1px solid #e5e7eb;color:#374151;background:#fff;transition:all .2s}
.si-chip:hover{border-color:var(--si-p);color:var(--si-p)}
.si-rec{margin-top:1.5rem;border-radius:24px;padding:2rem;background:linear-gradient(135deg,#4a148c,#2b0f55 60%,#1a1a1a);color:#fff;position:relative;overflow:hidden}
.si-rec:before{content:'';position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(216,192,138,.35),transparent 70%)}
.si-rec-k{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.2em;color:var(--si-gl)}
.si-rec-t{font-family:'Cormorant Garamond',serif;font-size:2.4rem;line-height:1.1;margin:.3rem 0 .8rem}
.si-rec-why{font-size:1rem;color:#f3e9ff;line-height:1.6;margin-bottom:.5rem}
.si-rec-d{font-size:.85rem;color:#d9ccef}.si-rec-d a{text-decoration:underline}
.si-ghost{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.4);border-radius:99px;padding:1rem 2rem;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.si-ghost:hover{background:rgba(255,255,255,.1)}

/* Bloqueo elegante */
.si-lock{position:relative;margin-top:1rem;border-radius:24px;overflow:hidden}
.si-lock-content{filter:blur(7px) saturate(.8);opacity:.55;max-height:1100px;overflow:hidden;pointer-events:none;user-select:none}
.si-lock-overlay{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding:2.5rem 1rem;background:linear-gradient(180deg,rgba(255,255,255,.35),rgba(255,255,255,.92) 30%,#fff)}
.si-lock-card{width:100%;max-width:620px;background:#fff;border:1px solid #ece6f7;border-radius:24px;padding:2rem;box-shadow:0 40px 80px -30px rgba(74,20,140,.35)}
.si-lock-h{font-family:'Cormorant Garamond',serif;font-size:2.1rem;line-height:1.1;color:var(--si-ink);margin-bottom:1rem}
.si-lock-list{display:grid;grid-template-columns:1fr 1fr;gap:.45rem 1rem;font-size:.82rem;color:#374151;margin-bottom:1.5rem}
.si-lock-list li{display:flex;gap:.45rem;align-items:flex-start}.si-lock-list i{color:var(--si-g);margin-top:.15rem}
@media(max-width:560px){.si-lock-list{grid-template-columns:1fr}.si-lock-card{padding:1.4rem}.si-lock-overlay{padding:1rem .5rem}.si-lock-content{max-height:1500px}}
.si-f{display:block}
.si-f span{display:block;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin-bottom:.3rem}
.si-f span em{font-style:normal;text-transform:none;letter-spacing:0;font-weight:600;color:#9ca3af}
.si-f input{width:100%;border:1px solid #e5e7eb;border-radius:12px;padding:.8rem .9rem;font-size:.95rem;outline:none;transition:all .2s}
.si-f input:focus{border-color:var(--si-p);box-shadow:0 0 0 4px rgba(74,20,140,.1)}
.si-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.si-check{display:flex;gap:.6rem;align-items:flex-start;font-size:.78rem;color:#4b5563;line-height:1.45;margin-top:.9rem;cursor:pointer}
.si-check input{margin-top:.15rem;accent-color:var(--si-p);width:16px;height:16px;flex-shrink:0}
.si-check a{color:var(--si-p);text-decoration:underline}
.si-msg{font-size:.8rem;color:#b91c1c;min-height:1.1rem;margin:.6rem 0}
.si-assure{display:flex;gap:.4rem;font-size:.72rem;color:#6b7280;line-height:1.45;margin-top:.9rem}
.si-assure i{color:var(--si-p);font-size:1rem;flex-shrink:0}
.si-unlocking{animation:siUp .7s ease both}

/* Química */
.si-chem{margin:2rem 0;border-radius:24px;padding:2rem;background:linear-gradient(135deg,#1a1a1a,#2b0f55);color:#fff}
.si-chem .si-ring-v strong{color:#fff}.si-chem .si-ring circle:first-child{stroke:rgba(255,255,255,.12)}
.si-chem-l{font-size:.75rem;font-weight:800;color:var(--si-gl);text-transform:uppercase;letter-spacing:.08em;margin-top:.5rem;max-width:180px;margin-inline:auto}
.si-chem-c{border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);padding:.9rem 1rem;color:#e9e1f7;line-height:1.5}
.si-chem-c strong{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;color:var(--si-gl);margin-bottom:.2rem}
.si-chem-r{counter-reset:r;display:grid;gap:.4rem;font-size:.86rem;color:#f3e9ff}
.si-chem-r li{counter-increment:r;display:flex;gap:.6rem}
.si-chem-r li:before{content:counter(r);flex-shrink:0;width:22px;height:22px;border-radius:99px;background:var(--si-g);color:#1a1a1a;font-size:.7rem;font-weight:800;display:grid;place-items:center}
.si-invite{margin-top:2.5rem;border-radius:22px;padding:1.8rem;border:1px dashed #d8c08a;background:#fffdf8}

.si-actions{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:center;justify-content:space-between;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #f0edf5;font-size:.72rem;color:#9ca3af}
.si-actions button{font-weight:800;color:#6b7280;display:inline-flex;gap:.35rem;align-items:center}
.si-actions button:hover{color:var(--si-p)}
.si-actions span{flex-basis:100%}
.si-print-foot{display:none}
.si-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,30px);opacity:0;z-index:90;max-width:min(560px,92vw);background:#1a1a1a;color:#fff;padding:1rem 1.2rem;border-radius:16px;font-size:.85rem;line-height:1.45;box-shadow:0 20px 50px -10px rgba(0,0,0,.4);transition:all .4s;display:flex;gap:.6rem;align-items:flex-start}
.si-toast i{color:var(--si-gl);font-size:1.2rem}
.si-toast.on{transform:translate(-50%,0);opacity:1}
.si-toast.warn i{color:#fbbf24}

@media(prefers-reduced-motion:reduce){.si-anim,.si-inter-in,#si-result,.si-unlocking{animation:none}.si-ring-arc,.si-bar-t span{transition:none}}

/* PDF / impresión: informe premium completo (portada + 6 capítulos + recomendación) */
@media print{
  @page{size:letter;margin:12mm}
  html,body{background:#fff!important}
  /* Oculta el resto de la página, pero NO las secciones internas del informe */
  .ex-header,body>footer,footer.bg-brand-dark,#cookie-banner,.ex-wa,.ex-topbar,
  main>section:not(#diagnostico),body>section:not(#diagnostico),
  .si-actions,.si-invite,.si-lock-overlay,#si-copy-man,.si-chip,.si-toast,#si-intro,#si-quiz,#si-inter{display:none!important}
  main{padding-top:0!important}
  #diagnostico{display:block!important;padding:0!important;margin:0!important;background:#fff!important}
  #diagnostico>*{max-width:none!important}
  #si-app{box-shadow:none!important;border:0!important;padding:0!important;max-width:none!important;overflow:visible!important}
  #si-report{display:block!important}
  #si-report,.si-rep,.si-rec,.si-chem,.si-index{visibility:visible!important;opacity:1!important;transform:none!important;animation:none!important;filter:none!important;max-height:none!important;overflow:visible!important}
  #si-result{opacity:1!important;transform:none!important;animation:none!important}
  /* Sin desbloquear: el informe bloqueado no se imprime (respeta la captura con correo) */
  .si-lock{display:none!important}
  .si-rep{break-inside:auto;page-break-inside:auto;margin-top:1.4rem}
  .si-rep>header,.si-card,.si-kpi,.si-man-i,.si-g-row,.si-bar,.si-shift{break-inside:avoid;page-break-inside:avoid}
  .si-rep>header{break-after:avoid;page-break-after:avoid}
  .si-rec,.si-index,.si-insight,.si-manual{break-inside:avoid;page-break-inside:avoid}
  #si-app *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .si-print-foot{display:block;margin-top:1.5rem;font-size:.7rem;color:#6b7280;text-align:center;border-top:1px solid #e5e7eb;padding-top:.6rem}
  .si-rec a.btn-gold,.si-ghost{display:none!important}
}

