.pdf-attachment { border:1px solid #e4edf2; border-radius:12px; overflow:hidden; background:#f8fafc; margin:8px 0 16px; min-width:0; color:#1f4754; }
.pdf-attachment-header,.pdf-reader-header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px; flex-wrap:wrap; }
.pdf-attachment-header strong { font-size:13px; overflow-wrap:anywhere; flex:1 1 180px; }
.pdf-attachment-actions,.pdf-reader-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.pdf-attachment button:not(.pdf-preview),.pdf-reader button { padding:9px 12px; border:1px solid #cbdde2; border-radius:9px; background:white; color:#1f4754; font-size:13px; font-weight:600; cursor:pointer; }
.pdf-attachment-actions>button:first-child { background:#4bafa8; border-color:#4bafa8; color:white; }
.pdf-attachment button:disabled,.pdf-reader button:disabled { opacity:.55; cursor:default; }
.pdf-attachment button:focus-visible,.pdf-reader button:focus-visible,.pdf-reader input:focus-visible,.pdf-reader-pages:focus-visible { outline:3px solid #4bafa8; outline-offset:2px; }
.pdf-preview { display:flex; align-items:center; justify-content:center; border:0; border-top:1px solid #e4edf2; width:100%; min-height:260px; padding:12px; background:#e9eff1; cursor:zoom-in; }
.pdf-page { position:relative; background:white; box-shadow:0 2px 12px #0c29332b; margin:0 auto 16px; max-width:100%; }
.pdf-page canvas { display:block; margin:0 auto; max-width:100%; }
.pdf-page-preview { display:flex; align-items:center; justify-content:center; margin:0; min-height:250px; background:transparent; box-shadow:none; }
.pdf-page-preview canvas { box-shadow:0 2px 12px #0c29332b; }
.pdf-page-status { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#5a7580; font-size:13px; }
.pdf-preview-message { display:flex; justify-content:center; align-items:center; gap:10px; padding:20px; min-height:100px; color:#5a7580; font-size:14px; flex-wrap:wrap; }
.pdf-attachment-footer { padding:10px 12px; font-size:12px; color:#587784; }
.pdf-reader { position:fixed; inset:0; z-index:10000; display:flex; flex-direction:column; background:#e5ecef; color:#1f4754; height:100vh; height:100dvh; }
.pdf-reader-header { background:#16313a; color:white; padding:10px 16px; flex-shrink:0; }
.pdf-reader-header h2 { font-size:15px; margin:0; flex:1 1 180px; overflow-wrap:anywhere; }
.pdf-reader-toolbar { display:flex; align-items:center; justify-content:center; gap:8px; padding:8px 12px; background:white; flex-wrap:wrap; font-size:13px; border-bottom:1px solid #cbdde2; flex-shrink:0; }
.pdf-reader-toolbar label { display:flex; align-items:center; gap:6px; }
.pdf-reader-toolbar input { width:55px; padding:7px 4px; border:1px solid #cbdde2; border-radius:6px; color:#1f4754; font-size:13px; }
.pdf-zoom { min-width:42px; text-align:center; }
.pdf-reader-pages { overflow:auto; flex:1; min-height:0; overscroll-behavior:contain; }
.pdf-reader-paper { margin:12px auto; }
@media(max-width:600px) { .pdf-attachment-header { gap:8px; padding:10px; } .pdf-attachment-actions { width:100%; } .pdf-attachment-actions>button { flex:1; } .pdf-reader-header { padding:8px; gap:8px; } .pdf-reader-header h2 { flex-basis:100%; font-size:13px; } .pdf-reader-actions { width:100%; justify-content:flex-end; } .pdf-reader-toolbar { gap:5px; padding:6px; } .pdf-reader-toolbar button { padding:8px; font-size:12px; } }
