.hd-files { position:relative; border:1px solid transparent; border-radius:10px; padding:10px; transition:border-color .18s,background-color .18s; }
.hd-files.hd-files--dragover { border-color:#087bb4; background:rgba(8,123,180,.09); }
.hd-image-paste-hint { display:block; margin:8px 0; }
.hd-pending-image { width:64px; height:48px; flex-shrink:0; object-fit:contain; border-radius:5px; background:#fff; }
.hd-attachments .hd-attachment-item { display:flex; flex-direction:column; gap:8px; min-width:0; max-width:260px; }
.hd-attachments .hd-attachment-item>a { overflow-wrap:anywhere; }
.hd-image-preview { display:block; padding:0; border:1px solid #a9c2ce; border-radius:8px; overflow:hidden; background:#fff; cursor:zoom-in; }
.hd-image-preview img { display:block; width:100%; max-height:190px; object-fit:contain; }
.hd-image-dialog { width:min(960px,92vw); max-width:92vw; max-height:90vh; padding:16px; border:1px solid #a9c2ce; border-radius:12px; background:var(--surface,#fff); color:var(--text,#16283c); }
.hd-image-dialog::backdrop { background:rgba(8,20,30,.72); }
.hd-image-dialog header { display:flex; justify-content:space-between; gap:16px; align-items:center; margin-bottom:12px; }
.hd-image-dialog header strong { overflow-wrap:anywhere; min-width:0; }
.hd-image-dialog header button { font-size:26px; min-width:36px; min-height:36px; cursor:pointer; }
.hd-image-dialog>img { display:block; max-width:100%; max-height:calc(90vh - 130px); margin:0 auto 12px; object-fit:contain; }
.hd-image-preview:focus-visible,.hd-image-dialog a:focus-visible { outline:2px solid #087bb4; outline-offset:3px; }
@media(prefers-reduced-motion:reduce){.hd-files{transition:none}}
