:root{--ies-blue:#142847;--ies-orange:#ff4f01;--ies-muted:#556580;--ies-line:#e2e6ed;color-scheme:light}
*{box-sizing:border-box}
html,body{margin:0;padding:0;min-width:0;max-width:100%;font-family:Arial,Helvetica,sans-serif;color:var(--ies-blue);background:#f4f6f9}
a{text-decoration:none;color:inherit}button{font:inherit}
.pdf-viewer{min-width:0;width:100%;max-width:1100px;min-height:0;margin:0 auto;background:#fff;display:flex;flex-direction:column;overflow:hidden}
.pdf-header{display:flex;align-items:center;gap:14px;min-height:54px;padding:10px 20px;border-bottom:1px solid var(--ies-line);background:#fff}
.pdf-institution{font-size:16px;font-weight:800;white-space:nowrap}.pdf-institution span{color:var(--ies-orange)}
.pdf-heading{font-size:14px;color:var(--ies-muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}
.pdf-return{margin-left:auto;font-size:13px;font-weight:600;color:var(--ies-orange)}
.pdf-main{width:100%;min-width:0;min-height:0;overflow:auto;padding:18px;background:#f4f6f9;scrollbar-width:thin;overscroll-behavior:contain}
.pdf-pages{display:flex;flex-direction:column;align-items:center;gap:14px;min-width:0;width:100%}
.pdf-page{position:relative;flex:none;background:#fff;box-shadow:0 4px 22px rgba(25,38,65,.12);line-height:0;overflow:hidden}
.pdf-page canvas{display:block;width:100%;height:100%;cursor:default}
.pdf-page .pdf-page-label{position:absolute;left:10px;bottom:8px;padding:5px 8px;background:rgba(255,255,255,.94);font:12px Arial,sans-serif;line-height:1.2;color:#52637c;border-radius:4px;pointer-events:none}
.pdf-page[data-rendered="1"] .pdf-page-label{display:none}
.pdf-status{padding:35px 8px;text-align:center;color:var(--ies-muted);font-size:13px;line-height:1.5}
.pdf-status[hidden]{display:none}
.pdf-fallback{padding:24px 16px;max-width:620px;margin:0 auto;text-align:center;line-height:1.5}
.pdf-fallback[hidden],.pdf-pages[hidden]{display:none}
.pdf-fallback p{color:var(--ies-muted)}.pdf-fallback a{display:inline-block;padding:9px 16px;background:var(--ies-orange);border-radius:5px;color:#fff}
.pdf-toolbar{display:flex;align-items:center;gap:10px;padding:9px 16px;background:#fff;border-top:1px solid var(--ies-line);min-height:56px}
.pdf-pagination{display:flex;align-items:center;gap:9px}.pdf-pagination[hidden]{display:none}
.pdf-pagination button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--ies-line);background:#fff;border-radius:50%;color:var(--ies-blue);font-size:24px;line-height:1;cursor:pointer}
.pdf-pagination button:disabled{opacity:.32;cursor:default}.pdf-pagination button:not(:disabled):hover{border-color:var(--ies-orange);color:var(--ies-orange)}
.pdf-count{font-size:13px;font-weight:600;color:var(--ies-muted);white-space:nowrap}
.pdf-spacer{flex:1}
.pdf-toolbar a{display:inline-flex;align-items:center;justify-content:center;min-height:35px;padding:7px 13px;border-radius:6px;font-size:13px;font-weight:600;white-space:nowrap;color:var(--ies-blue);border:1px solid var(--ies-line)}
.pdf-toolbar a:hover{border-color:var(--ies-orange);color:var(--ies-orange)}
.pdf-toolbar a#download{background:var(--ies-orange);border-color:var(--ies-orange);color:#fff}
body.embedded{background:transparent}
body.embedded .pdf-viewer{max-width:none;border:1px solid var(--ies-line);border-radius:9px}
body.embedded .pdf-header{display:none}
body.embedded .pdf-main{padding:10px;background:#f6f7fa;overflow:auto;overscroll-behavior:auto;-webkit-overflow-scrolling:touch}
body.embedded .pdf-page{box-shadow:0 1px 10px rgba(20,40,71,.09)}
body.embedded .pdf-toolbar{border-top:0;min-height:49px;padding:7px 10px}
body.embedded .pdf-toolbar a{padding:6px 10px;font-size:12px;min-height:32px}
body.embedded .pdf-pagination button{width:30px;height:30px;font-size:21px}
body.embedded .pdf-pagination{gap:6px}
body.embedded .pdf-count{font-size:12px}
body.embedded .pdf-page canvas{cursor:default}
body:not(.embedded) .pdf-viewer{height:100vh;height:100dvh}
body:not(.embedded) .pdf-main{flex:1;overflow:auto}

@media(max-width:520px){
.pdf-header{padding:9px 12px;min-height:48px;gap:9px}
.pdf-heading{font-size:12px}.pdf-institution{font-size:14px}.pdf-return{font-size:12px}
.pdf-main{padding:9px}.pdf-toolbar{padding:8px;gap:6px}
.pdf-toolbar a{padding:6px 8px;font-size:12px}
.pdf-pagination{gap:5px}.pdf-pagination button{width:31px;height:31px}
body.embedded .pdf-main{padding:5px}
body.embedded .pdf-toolbar{padding:7px 6px;gap:4px}
body.embedded .pdf-toolbar a{padding:6px 7px;font-size:11px}
}
@media(max-width:350px){body.embedded .pdf-toolbar a#download{font-size:0}body.embedded .pdf-toolbar a#download:after{content:'PDF';font-size:11px}}

/* v23: las hojas permanecen en un flujo vertical continuo; scroll con rueda y tacto. */
.pdf-main{flex:1;overflow-y:auto;overflow-x:auto;touch-action:pan-y pan-x;-webkit-overflow-scrolling:touch}
body.embedded .pdf-pages{gap:10px}
body.embedded .pdf-page{max-width:none}
.pdf-page:focus-visible{outline:2px solid var(--ies-orange);outline-offset:2px}

/* v24: unified PDF viewport. Scrolling remains INSIDE the document. */
html,body{height:100%;}
body.embedded{height:100%;overflow:hidden;}
body.embedded .pdf-viewer{height:100%;min-height:0;max-height:none;}
body.embedded .pdf-main{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;}
.pdf-pages.single-page{min-height:100%;justify-content:center;}

/* v25: documento ancho completo, lupa integrada y gesto de pellizcar. */
.pdf-pages{width:max-content;min-width:100%;align-items:center;}
.pdf-main{touch-action:pan-x pan-y;}
.pdf-page canvas{touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;}
.pdf-zoom{display:inline-flex;align-items:center;gap:3px;flex:none;}
.pdf-toolbar .pdf-zoom button{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;border:1px solid var(--ies-line);border-radius:6px;background:#fff;color:var(--ies-blue);font-size:20px;font-weight:600;cursor:pointer;line-height:1;padding:0 5px;}
.pdf-toolbar .pdf-zoom button:hover{border-color:var(--ies-orange);color:var(--ies-orange);}
.pdf-toolbar .pdf-zoom button:disabled{opacity:.35;cursor:default;}
.pdf-toolbar .pdf-zoom #zoom-reset{min-width:53px;font-size:12px;font-weight:700;}
body.embedded .pdf-toolbar .pdf-zoom button{min-width:32px;height:32px;}
body.embedded .pdf-toolbar .pdf-zoom #zoom-reset{min-width:45px;font-size:11px;}
@media(max-width:520px){
  .pdf-toolbar .pdf-zoom{gap:2px;}
  .pdf-toolbar .pdf-zoom button{min-width:31px;height:32px;}
  .pdf-toolbar .pdf-zoom #zoom-reset{min-width:44px;font-size:11px;}
}
@media(max-width:350px){
  body.embedded .pdf-toolbar .pdf-zoom button{min-width:28px;padding:0 3px;}
  body.embedded .pdf-toolbar .pdf-zoom #zoom-reset{min-width:39px;font-size:10px;}
}
