dialog.pdf-viewer{width:min(1440px,calc(100vw - 48px));max-width:none;height:calc(100dvh - 48px);max-height:none;padding:0;margin:auto;border:1px solid #dedbea;border-radius:18px;overflow:hidden;box-shadow:0 28px 100px #17132655;background:#faf9fd;color:#282439;grid-template-rows:minmax(0,1fr)}
dialog.pdf-viewer[open]{display:grid}dialog.pdf-viewer::backdrop{background:#191627b8;backdrop-filter:blur(5px)}
.pdf-stage-frame{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;width:100%;height:100%;min-width:0;min-height:0;background:#faf9fd;color:#282439}
.pdf-stage-host{position:fixed;inset:0;z-index:1000;display:none;width:100vw;height:100dvh;background:#101014}.pdf-stage-host.active,.pdf-stage-host:fullscreen,.pdf-stage-host:-webkit-full-screen{display:block}.pdf-stage-host:fullscreen,.pdf-stage-host:-webkit-full-screen{width:100vw;height:100vh;background:#101014}.pdf-stage-host>.pdf-stage-frame{width:100%;height:100%}
.pdf-heading{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#fff;gap:12px}.pdf-identity{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.pdf-identity h2{margin:0;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-badge{font-size:10px;letter-spacing:1px;font-weight:800;color:#6950b6;border:1px solid #e4ddf4;border-radius:6px;padding:6px;background:#f5f1ff}.pdf-source-label{display:flex;align-items:center;gap:7px;margin-left:auto;color:#625a70;font-size:11px;white-space:nowrap}.pdf-source-select{max-width:min(320px,34vw);min-height:34px;padding:4px 28px 4px 9px;border:1px solid #dbd7e7;border-radius:8px;background:white;color:#292337;font:12px inherit}
.pdf-toolbar{display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-block:1px solid #e8e5ef;background:#faf9fd;flex-wrap:wrap}.pdf-tool{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;border:1px solid transparent;border-radius:8px;background:transparent;color:#504961;font-size:21px;cursor:pointer;font-family:inherit}.pdf-tool:hover{background:#eae4f7;color:#59429c}.pdf-tool[aria-pressed=true]{background:#eae2fb;border-color:#d9caef;color:#6037ad}.pdf-tool:disabled{opacity:.3;cursor:default}.pdf-tool:focus-visible,.pdf-page-number:focus-visible{outline:3px solid #9d80da;outline-offset:2px}.pdf-close{font-size:27px}.pdf-page-number{width:48px;min-height:32px;border:1px solid #dbd7e7;border-radius:7px;text-align:center;padding:4px;font:13px inherit;background:white;color:#292337;appearance:textfield}.pdf-page-number::-webkit-inner-spin-button{appearance:none}.pdf-page-total{font-size:13px;min-width:28px;white-space:nowrap;color:#797080}.pdf-zoom{min-width:46px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums}.pdf-separator{height:22px;width:1px;background:#ddd8e8;margin:0 5px}
.pdf-font-label{display:inline-flex;align-items:center;gap:6px;margin-left:5px;font-size:12px;color:#625a70;white-space:nowrap}.pdf-font-select{max-width:160px;min-height:34px;padding:4px 25px 4px 9px;border:1px solid #dbd7e7;border-radius:8px;background:#fff;color:#292337;font:13px inherit;cursor:pointer}.pdf-font-select:disabled{opacity:.5;cursor:default}.pdf-font-select:focus-visible{outline:3px solid #9d80da;outline-offset:2px}
.pdf-setting-label{display:inline-flex;align-items:center;gap:6px;margin-left:5px;font-size:12px;color:#625a70;white-space:nowrap}.pdf-setting-select{max-width:155px;min-height:34px;padding:4px 25px 4px 9px;border:1px solid #dbd7e7;border-radius:8px;background:#fff;color:#292337;font:13px inherit;cursor:pointer}.pdf-font-size-select{width:84px;min-width:84px;padding-right:18px}.pdf-columns-select{width:72px;min-width:72px;padding-right:18px}.pdf-setting-select:disabled{opacity:.5;cursor:default}.pdf-setting-select:focus-visible{outline:3px solid #9d80da;outline-offset:2px}
.pdf-stage-toggle{width:auto;min-width:112px;padding-inline:10px;font-size:12px;gap:6px}
.pdf-surface{overflow:auto;min-height:0;min-width:0;background:#e7e6ed;overscroll-behavior:contain;padding:20px;scrollbar-gutter:stable}.pdf-paper{width:max-content;min-width:0;margin:auto;box-shadow:0 4px 22px #25203524;line-height:0;background:white}.pdf-paper canvas{display:block}.pdf-night{background:#191923}.pdf-night canvas{filter:invert(.9) hue-rotate(180deg)}.pdf-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:8px 18px;border-top:1px solid #dedbe6;font-size:11px;color:#776f83;background:white}.pdf-song-navigation{display:flex;align-items:center;gap:14px}.pdf-song-navigation .button{padding:4px 0;font-size:11px}.pdf-song-next{margin-left:auto}.pdf-status{margin:0;overflow-wrap:anywhere;text-align:center}.pdf-shortcuts{justify-self:end;white-space:nowrap;color:#958ba2}.pdf-viewer:fullscreen,.pdf-viewer.pdf-expanded{width:100vw;height:100dvh;max-height:none;border:0;border-radius:0}.pdf-print-pages{display:none}
.pdf-viewer.pdf-stage{background:#101014}.pdf-stage .pdf-stage-frame,.pdf-stage-host>.pdf-stage-frame{grid-template-rows:minmax(0,1fr) auto;background:#101014}.pdf-stage .pdf-heading,.pdf-stage .pdf-toolbar,.pdf-stage-host .pdf-heading,.pdf-stage-host .pdf-toolbar{display:none}.pdf-stage .pdf-surface,.pdf-stage-host .pdf-surface{padding:0;background:#101014;scrollbar-gutter:auto}.pdf-stage .pdf-paper,.pdf-stage-host .pdf-paper{box-shadow:none}.pdf-stage .pdf-footer,.pdf-stage-host .pdf-footer{border-color:#2b2931;background:#17161c;color:#ddd9e5}.pdf-stage .pdf-song-navigation .button,.pdf-stage-host .pdf-song-navigation .button{color:#fff}.pdf-stage .pdf-shortcuts,.pdf-stage-host .pdf-shortcuts{color:#aaa3b4}
@media(max-width:700px){dialog.pdf-viewer{width:100vw;height:100dvh;border:0;border-radius:0}.pdf-heading{padding:12px;align-items:flex-start}.pdf-identity{flex-wrap:wrap}.pdf-identity h2{max-width:calc(100vw - 110px)}.pdf-source-label{width:100%;margin-left:0}.pdf-source-select{max-width:none;min-width:0;flex:1}.pdf-toolbar{padding:6px;gap:2px}.pdf-tool{width:32px;height:32px}.pdf-separator{margin:0 2px}.pdf-page-total{min-width:22px}.pdf-page-number{width:40px}.pdf-zoom{min-width:40px}.pdf-font-label,.pdf-setting-label{margin-left:2px}.pdf-font-select{max-width:135px}.pdf-setting-select{max-width:125px}.pdf-shortcuts{display:none}.pdf-footer{grid-template-columns:1fr auto;padding:7px 12px}.pdf-song-navigation{grid-column:1/-1;justify-content:space-between}.pdf-status{grid-column:1/-1}.pdf-surface{padding:12px}}
@media print{body:has(.pdf-printing)>:not(.pdf-printing){display:none!important}dialog.pdf-viewer.pdf-printing{position:static;display:block!important;overflow:visible;width:auto;height:auto;max-width:none;max-height:none;margin:0;padding:0;border:0;box-shadow:none;background:white}.pdf-printing .pdf-stage-frame{display:none!important}.pdf-printing>.pdf-print-pages{display:block}.pdf-print-pages canvas{display:block;width:100%;height:auto;break-after:page}.pdf-print-pages canvas:last-child{break-after:auto}@page{size:A4;margin:0}}

/* Prepare at full size behind the current modal; reveal only after rendering. */
dialog.pdf-viewer.pdf-preparing{visibility:hidden;pointer-events:none;position:fixed;inset:0}
