.resume-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.resume-viewer { margin-top: 26px; border: 1px solid rgba(148, 163, 184, .28); border-radius: 16px; background: #edf1f7; overflow: hidden; }
.resume-viewer-controls { display: flex; gap: 14px; align-items: center; justify-content: center; padding: 12px; background: #263244; color: #fff; }
.resume-control { width: 36px; height: 36px; border: 1px solid #8492a7; border-radius: 8px; background: #334155; color: #fff; font: inherit; cursor: pointer; }
.resume-control:hover { background: #475569; }
.resume-viewer-pagecount { font-size: .9rem; }
.resume-viewer-pages { padding: 20px; overflow-x: auto; }
.resume-page { position: relative; margin: 0 auto 20px; background: #fff; box-shadow: 0 5px 20px rgba(15, 23, 42, .14); }
.resume-page canvas { display: block; }
.resume-page a.resume-pdf-link { position: absolute; display: block; z-index: 1; }
.resume-page a.resume-pdf-link:hover, .resume-page a.resume-pdf-link:focus-visible { background: rgba(37, 99, 235, .12); outline: 2px solid #2563eb; }
.resume-viewer-error { padding: 16px 20px; }
@media (max-width: 640px) { .resume-viewer-pages { padding: 10px; } .resume-page { margin-bottom: 12px; } .resume-viewer-controls { position: sticky; top: 0; z-index: 2; } }
