.attachment-dialog{width:min(1260px,94vw);height:min(880px,92vh);max-width:94vw;max-height:92vh;padding:0;border:1px solid #cfd8e4;border-radius:6px;color:#253b56;background:white;overflow:hidden}
.attachment-dialog[open]{display:flex;flex-direction:column}.attachment-dialog::backdrop{background:#16253a88}
.attachment-dialog header{display:flex;align-items:center;gap:16px;padding:10px 16px;border-bottom:1px solid #dde4ed;flex-shrink:0}
.attachment-dialog header h2{font-size:15px;margin:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.attachment-meta,.attachment-status{padding:6px 16px;font-size:12px;color:#63748b;flex-shrink:0}.attachment-status{min-height:29px;border-bottom:1px solid #e2e7ef}
.attachment-tools{display:flex;flex-wrap:wrap;gap:8px;padding:3px 16px;align-items:center;flex-shrink:0;font-size:12px}
.attachment-viewport{flex:1;min-height:0;overflow:auto;background:#f1f4f8;position:relative;padding:12px;overscroll-behavior:contain}
.attachment-image{display:block;width:auto;height:auto;max-width:none;background:white}.attachment-image.fit-width{max-width:100%;height:auto}
.attachment-tiles{position:relative;background:white;flex:none}.attachment-tile{position:absolute;max-width:none;display:block}
.attachment-thumb-button{width:64px;height:46px;position:relative;padding:2px;border:1px solid #dde4ed;background:#f8fafc;cursor:zoom-in;border-radius:3px}
.attachment-thumb-button img,.attachment-thumb-button canvas{width:100%;height:100%;object-fit:contain}.attachment-thumb-placeholder{font-size:11px;color:#7a8799}
.attachment-list>.actions{padding:8px 0}.attachment-list input[data-attachment-search]{height:30px;min-width:220px}
#attachment-upload-status{padding:8px 0;font-size:12px;color:#3c628e;white-space:pre-wrap}
