@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:wght@500;600;700;800&family=Oswald:wght@500;600;700&family=Inter:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap');

.senc-cover-app, .senc-cover-app *{box-sizing:border-box; -webkit-print-color-adjust:exact; print-color-adjust:exact;}

.senc-cover-app{
  font-family:'Inter',sans-serif;
  background:#1b2027;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:32px 14px 60px;
  border-radius:12px;
}
.senc-cover-app h1,.senc-cover-app h2,.senc-cover-app h3{margin:0;}
.senc-cover-app .cvd{font-family:'Bricolage Grotesque',sans-serif;}
.senc-cover-app .cvm{font-family:'Space Mono',monospace;}
.senc-cover-app .disp{font-family:'Oswald',sans-serif;}

:root{
  --navy-950:#000d20;
  --navy-900:#001333;
  --navy-800:#001c45;
  --navy-700:#012a56;
  --blue-accent:#2fb6ff;
  --blue-soft:#8ecdfb;
  --blue-bright:#cdeeff;
  --gold:#f5b400;
  --logo-blue:#1c4fa0;
  --logo-red:#e2312f;
  --muted-blue:#9fb8d1;
  --paper:#fbfcfe;
  --ink:#001f4d;
  --muted-ink:#5c6c80;
  --hairline:#d8e3ee;
}

/* ---------- Stage / viewer ---------- */
.senc-cover-app .viewer{width:min(94vw, 700px, calc((100vh - 230px) * 0.70707));}
.senc-cover-app .viewer{width:min(94vw, 700px, calc((100dvh - 230px) * 0.70707));}
.senc-cover-app .stage{position:relative; width:100%; aspect-ratio:210/297; perspective:2600px; container-type:inline-size;}
.senc-cover-app .page{
  position:absolute; inset:0; width:100%; height:100%;
  border-radius:6px; overflow:hidden;
  box-shadow:0 40px 90px -20px rgba(0,0,0,.65), 0 0 0 1px rgba(255,255,255,.04);
  opacity:0; pointer-events:none; transform-origin:left center; transform:rotateY(0deg);
  transition:transform .68s cubic-bezier(.6,.05,.35,1), opacity .5s ease;
  backface-visibility:hidden;
}
.senc-cover-app .page.active{opacity:1; pointer-events:auto; z-index:2;}
.senc-cover-app .page.flip-prev.animate{transform:rotateY(-108deg); opacity:0;}
.senc-cover-app .page.flip-next.animate{transform:rotateY(108deg); opacity:0;}

.senc-cover-app .controls{display:flex; align-items:center; justify-content:center; gap:14px; margin-top:22px; flex-wrap:wrap;}
.senc-cover-app .ctrl-btn{
  font-family:'Inter',sans-serif; font-size:13.5px; font-weight:600; color:#e7edf5;
  background:#232a34; border:1px solid #333d4a; padding:10px 16px; border-radius:100px;
  cursor:pointer; transition:background .2s ease, transform .15s ease;
  display:inline-flex; align-items:center; gap:6px;
}
.senc-cover-app .ctrl-btn:hover{background:#2c3542;}
.senc-cover-app .ctrl-btn:active{transform:scale(.97);}
.senc-cover-app .ctrl-btn:disabled{opacity:.35; cursor:not-allowed;}
.senc-cover-app .ctrl-btn.primary{background:var(--blue-accent); border-color:var(--blue-accent); color:#04121f;}
.senc-cover-app .ctrl-btn.primary:hover{background:#54c4ff;}
.senc-cover-app .page-indicator{color:#8a97a8; font-size:13px; letter-spacing:.03em; min-width:96px; text-align:center;}
.senc-cover-app .hint{margin-top:14px; color:#67748a; font-size:12px; text-align:center; max-width:520px; line-height:1.5;}
.senc-cover-app .zoom-controls{display:flex; align-items:center; justify-content:center; gap:10px; margin-top:12px;}
.senc-cover-app .zoom-btn{
  width:30px; height:30px; border-radius:50%; border:1px solid #333d4a; background:#232a34; color:#e7edf5;
  font-size:17px; line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center;
  transition:background .2s ease;
}
.senc-cover-app .zoom-btn:hover{background:#2c3542;}
.senc-cover-app .zoom-btn:active{transform:scale(.94);}
.senc-cover-app .zoom-label{color:#8a97a8; font-size:12px; letter-spacing:.03em; min-width:52px; text-align:center;}
.senc-cover-app .srd-empty{color:#8a97a8; font-size:14px; text-align:center; padding:60px 20px;}

/* ================= PORTADA ================= */
.senc-cover-app .page-cover{position:relative; color:#fff; padding:5.6% 6.4% 5%; color:#001c45; display:grid; grid-template-rows:auto 1fr auto; height:100%;}
.senc-cover-app .cover-photo{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 30%; z-index:0;}
.senc-cover-app .cover-scrim{
  position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.7) 14%, rgba(255,255,255,0) 28%, rgba(255,255,255,0) 62%, rgba(255,255,255,.82) 82%, rgba(255,255,255,.97) 100%),
    linear-gradient(100deg, rgba(255,255,255,.9) 0%, rgba(255,255,255,.72) 34%, rgba(255,255,255,.2) 56%, rgba(255,255,255,0) 72%);
}
.senc-cover-app .cover-masthead, .senc-cover-app .cover-hero, .senc-cover-app .cover-footer{position:relative; z-index:2;}

.senc-cover-app .cover-masthead{padding-bottom:3.2%; border-bottom:1px solid rgba(0,28,69,.14);}
.senc-cover-app .cover-eyebrow{
  font-size:clamp(9.5px,1.7cqw,11.5px); letter-spacing:.22em; text-transform:uppercase;
  color:#3b5f8f; font-weight:600; margin-bottom:.4em;
}
.senc-cover-app .cover-wordmark{
  font-size:clamp(30px,8.6cqw,54px); font-weight:700; letter-spacing:-.005em; line-height:.95;
  text-transform:uppercase; overflow-wrap:break-word; word-break:break-word;
}
.senc-cover-app .cover-masthead-row2{display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:3.2%; flex-wrap:wrap;}
.senc-cover-app .senc-logo-img{height:auto; width:auto; max-height:44px; max-width:150px; flex:none; display:block;}
.senc-cover-app .cover-meta{font-size:clamp(8.5px,1.4cqw,10px); color:#12396b; text-align:right; line-height:1.5;}
.senc-cover-app .cover-meta strong{color:#c98a00; font-weight:700;}
.senc-cover-app .cover-masthead-tag{
  margin-top:2.6%; font-size:clamp(8.5px,1.4cqw,10px); letter-spacing:.24em; text-transform:uppercase;
  color:#3b5f8f; font-weight:600;
}

.senc-cover-app .cover-hero{min-height:0; overflow:hidden;}
.senc-cover-app .hero-text{width:60%; padding-top:5%; display:flex; flex-direction:column; height:100%;}
.senc-cover-app .hero-headline{font-size:clamp(26px,7cqw,40px); font-weight:600; line-height:1.08; letter-spacing:-.005em;}
.senc-cover-app .hero-headline .light{font-weight:500; color:#001c45;}
.senc-cover-app .hero-headline .accent{color:#0b8fe0; font-weight:700;}
.senc-cover-app .gold-divider{width:46px; height:3px; background:var(--gold); margin:4.5% 0 3.4%;}
.senc-cover-app .hero-sub{font-size:clamp(12px,1.8cqw,14px); color:#12396b; font-weight:400; line-height:1.5; max-width:94%;}

.senc-cover-app .cover-lines{margin-top:auto; padding-top:4%; display:flex; flex-direction:column;}
.senc-cover-app .line{display:flex; align-items:flex-start; gap:12px; padding:2.6% 0; border-top:1px solid rgba(0,28,69,.14);}
.senc-cover-app .line:first-child{border-top:none;}
.senc-cover-app .feature-mark{
  flex:none; width:7px; height:30px; border-radius:3.5px; margin-top:3px;
  background:linear-gradient(180deg, var(--blue-bright), var(--blue-accent));
  box-shadow:0 0 8px rgba(47,182,255,.4);
}
.senc-cover-app .line.lead .feature-mark{background:linear-gradient(180deg,#ffe9a8,var(--gold)); box-shadow:0 0 10px rgba(245,180,0,.55);}
.senc-cover-app .line-copy{display:flex; flex-direction:column;}
.senc-cover-app .kicker{font-size:clamp(9.5px,1.5cqw,11px); font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:#0b8fe0; margin-bottom:.35em;}
.senc-cover-app .kicker.gold{color:#c98a00;}
.senc-cover-app .line-title{font-size:clamp(13px,2cqw,15px); font-weight:600; color:#001c45; line-height:1.4; max-width:96%;}
.senc-cover-app .line.lead .line-title{font-size:clamp(17px,3cqw,21.5px); font-weight:700; line-height:1.28;}

.senc-cover-app .cover-footer{
  margin-top:4%; padding-top:3.4%; border-top:1px solid rgba(0,28,69,.14);
  display:flex; justify-content:space-between; align-items:flex-end; gap:10px;
}
.senc-cover-app .cover-footer-labels{font-size:clamp(9px,1.5cqw,10.5px); letter-spacing:.16em; text-transform:uppercase; color:#3b5f8f; font-weight:600;}
.senc-cover-app .cover-footer-tag{font-size:clamp(15px,3cqw,19px); font-weight:700; color:#0b8fe0; letter-spacing:.02em; margin-top:.3em;}
.senc-cover-app .cover-url{font-size:clamp(9px,1.5cqw,10.5px); color:#3b5f8f; display:flex; align-items:center; gap:6px;}
.senc-cover-app .cover-url svg{width:11px;height:11px;}

/* ================= ÍNDICE (automático) ================= */
.senc-cover-app .page-index{background:var(--paper); color:var(--ink); display:flex; flex-direction:column; height:100%;}
.senc-cover-app .idx2-header{
  background:var(--navy-900); color:#fff; flex:none;
  padding:3.2% 6.4%; display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.senc-cover-app .idx2-header-slim{padding:1.8% 6.4%;}
.senc-cover-app .idx2-logo{height:auto; width:auto; max-height:38px; max-width:120px; flex:none; display:block;}
.senc-cover-app .idx2-header-right{text-align:right;}
.senc-cover-app .idx2-header h2{
  font-family:'Oswald',sans-serif; font-weight:600; font-size:clamp(22px,4.6cqw,30px);
  letter-spacing:.04em; text-transform:uppercase; color:#fff;
}
.senc-cover-app .idx2-cont{font-size:.5em; font-weight:400; letter-spacing:.02em; color:var(--muted-blue); text-transform:none;}
.senc-cover-app .idx2-header-tag{margin-top:4px; font-size:clamp(9px,1.6cqw,11px); letter-spacing:.16em; text-transform:uppercase; color:var(--blue-soft); font-weight:600;}
@container (max-width: 480px){
  .senc-cover-app .idx2-header{flex-direction:column; align-items:flex-start; gap:8px;}
  .senc-cover-app .idx2-header-right{text-align:left;}
}
.senc-cover-app .idx2-content{padding:3.6% 6.4% 1.6%; flex:1; overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch;}
.senc-cover-app .idx2-item{display:flex; align-items:baseline; gap:10px; padding:.9% 0; border-bottom:1px dotted var(--hairline);}
.senc-cover-app .idx2-num{flex:none; font-family:'Oswald',sans-serif; font-weight:700; color:var(--blue-accent); font-size:clamp(12px,2.2cqw,14.5px); min-width:22px;}
.senc-cover-app .idx2-title{flex:1; font-weight:600; color:var(--ink); line-height:1.35; font-size:clamp(12px,2.2cqw,14.5px);}
.senc-cover-app .idx2-page{flex:none; font-weight:700; color:var(--muted-ink); font-size:clamp(11px,1.9cqw,13px);}
.senc-cover-app .idx2-cat{
  font-size:clamp(10px,1.7cqw,12px); letter-spacing:.12em; text-transform:uppercase; font-weight:700;
  color:var(--blue-accent); margin:2.8% 0 1.3%; padding-bottom:4px; border-bottom:1.5px solid var(--navy-800);
}
.senc-cover-app .idx2-footer{
  flex:none; padding:2.6% 6.4%; border-top:1px solid var(--hairline);
  display:flex; justify-content:space-between; font-size:clamp(9px,1.5cqw,10.5px);
  color:var(--muted-ink); letter-spacing:.04em; text-transform:uppercase; font-weight:600;
}

/* ================= CONTENIDO (páginas genéricas) ================= */
.senc-cover-app .page-content{background:var(--paper); color:var(--ink); display:flex; flex-direction:column; height:100%;}
.senc-cover-app .content-header{
  flex:none; padding:4% 6.4% 2.4%; border-bottom:2px solid var(--navy-800);
  display:flex; align-items:baseline; justify-content:space-between; gap:10px;
}
.senc-cover-app .content-kicker{font-size:clamp(10px,1.8cqw,12.5px); font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--blue-accent);}
.senc-cover-app .content-pagenum{font-family:'Space Mono',monospace; font-size:clamp(10px,1.6cqw,12px); color:var(--muted-ink);}
.senc-cover-app .content-body-wrap{flex:1; overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; padding:3.2% 6.4%;}
.senc-cover-app .content-title{
  font-family:'Bricolage Grotesque',sans-serif; font-weight:700; color:var(--ink);
  font-size:clamp(22px,4.6cqw,32px); line-height:1.12; letter-spacing:-.01em; margin-bottom:2.4%;
}
.senc-cover-app .content-sub{font-size:clamp(13px,2.2cqw,15.5px); color:var(--muted-ink); line-height:1.55; margin-bottom:3%; max-width:90%;}
.senc-cover-app .content-image{width:100%; border-radius:8px; margin-bottom:3.4%; display:block; object-fit:cover; max-height:34%;}
.senc-cover-app .content-article p{font-size:clamp(12.5px,2cqw,14.5px); line-height:1.7; color:#243244; margin:0 0 1em;}
.senc-cover-app .content-article h2{font-family:'Oswald',sans-serif; font-size:clamp(16px,2.6cqw,19px); color:var(--navy-900); margin:1.4em 0 .5em; text-transform:uppercase; letter-spacing:.02em;}
.senc-cover-app .content-article h3{font-family:'Oswald',sans-serif; font-size:clamp(14px,2.2cqw,16.5px); color:var(--navy-800); margin:1.2em 0 .4em;}
.senc-cover-app .content-article ul, .senc-cover-app .content-article ol{margin:0 0 1em 1.3em; font-size:clamp(12.5px,2cqw,14.5px); color:#243244; line-height:1.65;}
.senc-cover-app .content-article blockquote{
  margin:1.2em 0; padding:.6em 1.2em; border-left:3px solid var(--gold); color:var(--muted-ink); font-style:italic;
}
.senc-cover-app .content-footer{
  flex:none; padding:2.2% 6.4%; border-top:1px solid var(--hairline);
  display:flex; justify-content:space-between; font-size:clamp(9px,1.5cqw,10.5px);
  color:var(--muted-ink); letter-spacing:.04em; text-transform:uppercase; font-weight:600;
}

/* ================= Print / PDF ================= */
@media print{
  body{background:#fff; margin:0;}
  .senc-cover-app{background:#fff; padding:0; margin:0; border-radius:0; overflow:visible !important;}
  .senc-cover-app .controls,.senc-cover-app .hint,.senc-cover-app .zoom-controls{display:none !important;}
  .senc-cover-app .viewer{width:210mm !important; margin:0 !important; overflow:visible !important;}
  .senc-cover-app .stage{width:210mm !important; perspective:none; aspect-ratio:auto; overflow:visible !important;}
  .senc-cover-app .page{
    position:relative !important; opacity:1 !important; transform:none !important; transition:none !important;
    width:210mm; height:297mm; border-radius:0; box-shadow:none; page-break-after:always;
    overflow:visible !important;
  }
  .senc-cover-app .idx2-content{overflow:visible !important;}
  .senc-cover-app .content-body-wrap{overflow:visible !important;}
}
@page{ size:A4; margin:0; }
