body.pdf-modal-scroll-lock{overflow:hidden}.pdf-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem;opacity:0;pointer-events:none;transition:opacity .18s ease}.pdf-modal--open{opacity:1;pointer-events:auto}.pdf-modal__backdrop{position:absolute;inset:0;background-color:#000000d1;cursor:pointer}.pdf-modal__dialog{position:relative;z-index:1;display:flex;flex-direction:column;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-shadow:var(--shadow-modal);width:min(92vw,900px);max-height:calc(100vh - 3rem);overflow:hidden;transform:scale(.96);transition:transform .18s ease}.pdf-modal--open .pdf-modal__dialog{transform:scale(1)}.pdf-modal__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .85rem .65rem 1rem;border-bottom:1px solid var(--color-border);background-color:var(--color-surface-raised);flex-shrink:0;min-width:0}.pdf-modal__label{font-size:.82rem;font-weight:600;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.pdf-modal__header-actions{display:flex;align-items:center;gap:.3rem;flex-shrink:0}.pdf-modal__zoom-group{display:flex;align-items:center;gap:.25rem;margin-right:.5rem}.pdf-modal__zoom-level{font-size:.7rem;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-variant-numeric:tabular-nums;color:var(--color-text-faint);min-width:3rem;text-align:center;white-space:nowrap;-webkit-user-select:none;user-select:none}.pdf-modal__icon-btn,.pdf-modal__close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:5px;border:1px solid var(--color-border);background:none;color:var(--color-text-faint);font-size:1rem;line-height:1;cursor:pointer;flex-shrink:0;transition:color .12s ease,border-color .12s ease,background-color .12s ease}.pdf-modal__icon-btn:hover:not(:disabled),.pdf-modal__close:hover{color:var(--color-text-primary);border-color:var(--color-sep);background-color:var(--color-surface-raised)}.pdf-modal__icon-btn:disabled{opacity:.3;cursor:not-allowed}.pdf-modal__close{font-size:.85rem;margin-left:.25rem}.pdf-modal__close:hover{color:var(--color-danger);border-color:var(--color-danger-border);background-color:var(--color-danger-bg)}.pdf-modal__scroll{flex:1;overflow:auto;background-color:var(--color-surface-deep);display:flex;align-items:flex-start;justify-content:center;min-height:0;-webkit-overflow-scrolling:touch}.pdf-modal__canvas-wrap{display:inline-flex;align-items:flex-start;justify-content:center;padding:1.5rem;flex-shrink:0}.pdf-modal__canvas{display:block;background-color:#fff;border-radius:2px;box-shadow:var(--shadow-canvas);flex-shrink:0}.pdf-modal__footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem 1rem;border-top:1px solid var(--color-border-subtle);background-color:var(--color-surface-raised);flex-shrink:0;flex-wrap:wrap;min-height:2.25rem}.pdf-modal__nav-group{display:flex;align-items:center;gap:.4rem}.pdf-modal__nav-group[hidden]{display:none}.pdf-modal__nav-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .7rem;border-radius:5px;border:1px solid var(--color-border);background:none;color:var(--color-text-faint);font-size:.78rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:color .12s ease,border-color .12s ease,background-color .12s ease}.pdf-modal__nav-btn:hover:not(:disabled){color:var(--color-accent);border-color:var(--color-accent-border);background-color:var(--color-accent-bg)}.pdf-modal__nav-btn:disabled{opacity:.35;cursor:not-allowed}.pdf-modal__nav-count{font-size:.72rem;color:var(--color-text-ghost);font-variant-numeric:tabular-nums;white-space:nowrap;min-width:3.5rem;text-align:center;-webkit-user-select:none;user-select:none}.pdf-modal__dims{font-size:.7rem;font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:var(--color-text-dim);font-variant-numeric:tabular-nums;white-space:nowrap;-webkit-user-select:none;user-select:none}@media(max-width:600px){.pdf-modal{padding:0;align-items:flex-end}.pdf-modal__dialog{width:100%;max-height:95vh;border-bottom-left-radius:0;border-bottom-right-radius:0;border-left:none;border-right:none;border-bottom:none}.pdf-modal__canvas-wrap{padding:.75rem}.pdf-modal__header{padding:.55rem .75rem}.pdf-modal__zoom-level{min-width:2.5rem}}
