.pdf-controls { display: inline-flex; align-items: center; }
.pdf-btn-wrapper { position: relative; display: inline-block; }
.pdf-btn-wrapper::after { content: attr(data-tooltip); position: absolute; bottom: 115%; left: 50%; transform: translateX(-50%); padding: 6px 12px; background-color: #1e293b; color: #ffffff; font-size: 13px; font-weight: 500; border-radius: 4px; white-space: nowrap; opacity: 0; visibility: hidden; transition: all 0.2s ease; pointer-events: none; z-index: 10; }
.pdf-btn-wrapper::before { content: ''; position: absolute; bottom: 115%; left: 50%; transform: translateX(-50%) translateY(100%); border-width: 5px; border-style: solid; border-color: #1e293b transparent transparent transparent; opacity: 0; visibility: hidden; transition: all 0.2s ease; pointer-events: none; z-index: 10; }
.pdf-btn-wrapper.is-generating::after,
.pdf-btn-wrapper.is-generating::before { opacity: 1; visibility: visible; }
.pdf-btn-wrapper.is-error::after { background-color: #dc2626; }
.pdf-btn-wrapper.is-error::before { border-top-color: #dc2626; }
.pdf-controls button { padding: 0; background: transparent; border: none; border-radius: 6px; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.2s ease; }
.pdf-controls button:hover:not(:disabled) { background: #f1f5f9; border-color: #94a3b8; }
.pdf-controls button:disabled { cursor: not-allowed; background: #f8fafc; border-color: #e2e8f0; }
.pdf-controls button:disabled svg { opacity: 0.4; filter: grayscale(100%); }
