/* Reader-style PDF viewer (pdf-reader.mjs). Chrome follows the app theme; pages stay white paper. */
.pdfr-host{display:flex;flex-direction:column;min-height:0;min-width:0;max-width:100%}
.pdfr{--pdfr-bar:var(--surface,#fff);--pdfr-well:#e9e7e1;display:flex;flex-direction:column;flex:1;min-width:0;min-height:420px;height:100%;border:1px solid var(--line,#e5e2d9);border-radius:12px;overflow:hidden;background:var(--pdfr-well);color:var(--ink,#0d1b2a);outline:none}
:root[data-theme=dark] .pdfr{--pdfr-well:#06090e}
.pdfr:fullscreen{border:0;border-radius:0;height:100vh}
.pdfr-toolbar{display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--pdfr-bar);border-bottom:1px solid var(--line,#e5e2d9);flex-wrap:wrap;position:relative;z-index:2}
.pdfr-group{display:flex;align-items:center;gap:2px;padding-right:6px;margin-right:2px;border-right:1px solid var(--line,#e5e2d9)}
.pdfr-group:last-child{border-right:0;padding-right:0;margin-right:0}
.pdfr-spacer{flex:1}
.pdfr-btn{display:inline-grid;place-items:center;width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:var(--ink,#0d1b2a);cursor:pointer;text-decoration:none}
.pdfr-btn:hover{background:var(--surface-soft,#f4f3ee)}
.pdfr-btn[aria-pressed=true]{background:var(--nav-selected,#eceffe);color:var(--blue,#3346d3)}
.pdfr-btn:disabled{opacity:.35;cursor:default;background:transparent}
.pdfr-btn:focus-visible,.pdfr-thumb:focus-visible{outline:2px solid var(--blue,#3346d3);outline-offset:1px}
.pdfr-pagebox{display:inline-flex;align-items:center;gap:6px;margin-left:4px;font-size:13px;color:var(--muted,#5b6678);font-variant-numeric:tabular-nums}
.pdfr-page-input{width:42px;height:30px;text-align:center;border:1px solid var(--line-strong,#d2cec2);border-radius:6px;background:var(--surface,#fff);color:var(--ink,#0d1b2a);font:inherit;font-variant-numeric:tabular-nums}
.pdfr-zoom{height:30px;border:1px solid var(--line-strong,#d2cec2);border-radius:6px;background:var(--surface,#fff);color:var(--ink,#0d1b2a);font:inherit;font-size:13px;padding:0 6px;min-width:112px}
.pdfr-find{display:flex;align-items:center;gap:4px;padding:6px 8px;background:var(--pdfr-bar);border-bottom:1px solid var(--line,#e5e2d9)}
.pdfr-find[hidden]{display:none}
.pdfr-find-field{display:flex;align-items:center;gap:8px;flex:0 1 320px;height:32px;padding:0 10px;border:1px solid var(--line-strong,#d2cec2);border-radius:8px;background:var(--surface,#fff);color:var(--muted,#5b6678)}
.pdfr-find-field:focus-within{border-color:var(--blue,#3346d3);box-shadow:0 0 0 3px #3346d333}
.pdfr-find-input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink,#0d1b2a);font:inherit;font-size:13px;outline:none}
.pdfr-find-input.pdfr-miss{color:var(--error-ink,#a8222d)}
.pdfr-find-count{font-size:12px;color:var(--muted,#5b6678);min-width:72px;padding:0 6px;font-variant-numeric:tabular-nums}
.pdfr-body{display:flex;flex:1;min-height:0;min-width:0}
.pdfr-thumbs{flex:0 0 150px;overflow:auto;padding:14px 12px;display:flex;flex-direction:column;align-items:center;gap:14px;background:var(--pdfr-bar);border-right:1px solid var(--line,#e5e2d9)}
.pdfr-thumbs[hidden]{display:none}
.pdfr-thumb{display:flex;flex-direction:column;align-items:center;gap:6px;border:0;background:transparent;padding:4px;border-radius:8px;cursor:pointer;color:var(--muted,#5b6678);font:inherit;font-size:12px}
.pdfr-thumb canvas{display:block;width:110px;min-height:60px;background:#fff;box-shadow:0 1px 3px #0003;border:2px solid transparent;border-radius:2px}
.pdfr-thumb.active canvas{border-color:var(--blue,#3346d3)}
.pdfr-thumb.active{color:var(--ink,#0d1b2a);font-weight:600}
.pdfr-viewport{flex:1;min-width:0;overflow:auto;position:relative;overscroll-behavior:contain;scrollbar-color:var(--line-strong,#c9c5b9) transparent}
.pdfr-pages{display:flex;flex-direction:column;align-items:center;gap:16px;padding:16px;min-width:min-content}
.pdfr-page{position:relative;flex:0 0 auto;background:#fff;box-shadow:0 1px 3px #0d1b2a26,0 8px 24px -12px #0d1b2a40;color-scheme:light}
.pdfr-page canvas{display:block;width:100%;height:100%}
.pdfr .textLayer ::selection{background:#3346d340}
.pdfr-hit{background:#ffd54a8c;border-radius:2px;color:transparent}
.pdfr-hit-current{background:#ff8a00a6;outline:2px solid #ff8a00;outline-offset:0}

/* pdf.js text layer (from pdfjs-dist web/pdf_viewer.css, Apache-2.0): transparent, selectable text over the canvas */
.pdfr .textLayer{position:absolute;text-align:initial;inset:0;overflow:clip;opacity:1;line-height:1;letter-spacing:normal;word-spacing:normal;text-size-adjust:none;-webkit-text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:CanvasText;z-index:0;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size))}
.pdfr .textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;transform-origin:0% 0%;user-select:text;-webkit-user-select:text}
.pdfr .textLayer>:not(.markedContent),.pdfr .textLayer .markedContent span:not(.markedContent){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}
.pdfr .textLayer .markedContent{display:contents}
.pdfr .textLayer span.pdfr-hit{position:static!important;transform:none!important;font-size:inherit!important}
.pdfr .textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:0;cursor:default;user-select:none}

/* Wide dialog for the invoice PDF preview */
dialog.pdfr-dialog{width:min(1180px,calc(100% - 32px));max-width:none;height:calc(100dvh - 48px);max-height:none}
dialog.pdfr-dialog>form,dialog.pdfr-dialog .modal-body{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}
dialog.pdfr-dialog .fields{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column}
dialog.pdfr-dialog .form-footer:not(:has(button,a)){display:none}
dialog.pdfr-dialog #invoice-pdf-preview{flex:1;min-height:0;padding:0;background:transparent}
/* Invoice designer: exact PDF preview */
.iv-exact-preview .pdfr-host{height:max(520px,calc(100dvh - 260px))}

@media(max-width:700px){
 .pdfr-group:has([data-pdfr=rotate]),.pdfr [data-pdfr=fullscreen],.pdfr [data-pdfr=sidebar]{display:none}
 .pdfr-zoom{min-width:0}
 .pdfr-pages{padding:8px;gap:8px}
 dialog.pdfr-dialog{width:calc(100% - 16px);height:calc(100dvh - 16px)}
}

/* Print only the rendered pages */
#pdfr-print{display:none}
@media print{
 html.pdfr-printing body>*:not(#pdfr-print){display:none!important}
 html.pdfr-printing #pdfr-print{display:block}
 html.pdfr-printing #pdfr-print img{display:block;width:100%;height:auto;page-break-after:always;break-after:page}
 html.pdfr-printing #pdfr-print img:last-child{page-break-after:auto;break-after:auto}
 @page{margin:0}
}
