 :root { color-scheme: dark; --navy:#001F3F; --teal:#14B8A6; --gold:#FCD34D; }
* { box-sizing: border-box; }
body { margin:0; color:#f3f8fc; background:#031322; font-family:Outfit,system-ui,sans-serif; }
#reader-header { position:relative; z-index:5; background:#082438; border-bottom:1px solid #25485d; padding:12px clamp(12px,3vw,40px); }
.reader-top,.reader-access,.reader-tools,.tool-group { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.reader-top { justify-content:space-between; }
h1 { font-size:clamp(1rem,2vw,1.4rem); margin:0; }
a { color:var(--teal); text-underline-offset:4px; }
#back { min-height:44px; display:flex; align-items:center; gap:8px; }
#download { border:1px solid var(--teal); border-radius:10px; padding:10px 14px; color:#fff; text-decoration:none; }
button,select,input { font:inherit; color:inherit; background:#001F3F; border:1px solid #466578; border-radius:8px; min-height:44px; }
button { cursor:pointer; padding:6px 14px; } button:disabled { opacity:.4; cursor:default; }
button:hover:not(:disabled) { border-color:var(--teal); } select { padding:6px; max-width:150px; }
:focus-visible { outline:3px solid var(--gold); outline-offset:2px; }
.reader-tools { justify-content:center; gap:12px 24px; margin-top:8px; }
.tool-group { flex-wrap:nowrap; gap:8px; } #page { width:64px; text-align:center; } #zoom { min-width:52px; text-align:center; }
#previous,#next,#zoom-in,#zoom-out { font-size:1.4rem; min-width:44px; }
#status { font-size:.85rem; margin:8px 0 0; text-align:center; color:#c5dae4; } #status:empty { display:none; }
#reader-main { position:absolute; inset:var(--header-height,170px) 0 0; }
#viewerContainer { position:absolute; inset:0; overflow:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }
.pdfViewer .page { margin:12px auto; border:0; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
noscript { position:relative; z-index:6; background:#001F3F; padding:16px; }
@media(max-width:600px) { .reader-top { gap:4px 12px; } h1 { order:-1; width:100%; } .reader-access { gap:8px; } #download { font-size:.85rem; padding:10px; } #back { font-size:.9rem; } .reader-tools { gap:8px; } }
