.portal-pdf-viewer { display: flex; flex-direction: column; width: 100%; height: 100%; min-width: 0; min-height: 0; overflow: hidden; background: #d4d7da; color: var(--text, #1c1e21); }
.portal-pdf-toolbar { display: flex; flex: none; align-items: center; justify-content: center; flex-wrap: wrap; gap: 6px; padding: 8px; background: var(--card, #fff); border-bottom: 1px solid var(--border, #ddd); }
.portal-pdf-toolbar button { width: auto; min-width: 36px; min-height: 36px; padding: 5px 10px; margin: 0; font-size: 20px; line-height: 1; color: var(--text, #1c1e21); background: var(--hover, #eee); border: 1px solid var(--border, #ddd); border-radius: 6px; }
.portal-pdf-toolbar button:hover { background: var(--active-bg, #ddd); }
.portal-pdf-toolbar button:disabled { opacity: .4; cursor: default; }
.portal-pdf-page-count, .portal-pdf-zoom-value { padding: 0 4px; font-size: 12px; white-space: nowrap; }
.portal-pdf-zoom-value { min-width: 42px; text-align: center; direction: ltr; }
.portal-pdf-scroll { flex: 1; min-width: 0; min-height: 0; overflow: auto; padding: 12px; overscroll-behavior: contain; direction: ltr; }
.portal-pdf-canvas { display: block; margin: 0 auto; background: #fff; box-shadow: 0 2px 12px rgba(0, 0, 0, .2); }
.portal-pdf-render-status { padding: 16px; color: #222; text-align: center; background: #fff; }
.portal-pdf-render-status[hidden] { display: none; }
