/* e-commune — styles des remplacements internes (zone de dépôt « dropify ») */
.dropify-wrapper {
    position: relative; display: block; width: 100%; overflow: hidden; cursor: pointer;
    border: 2px dashed var(--ec-border, #d7dce4); border-radius: 10px; background: var(--ec-surface-2, #f8fafc);
    padding: 12px; text-align: center; transition: border-color .15s, background .15s;
}
.dropify-wrapper:hover, .dropify-wrapper.dragover { border-color: var(--ec-accent, #0050c8); background: #fff; }
.dropify-wrapper input[type="file"] { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; z-index: 5; }
.dropify-message { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; padding: 10px; color: var(--ec-muted, #6b7280); font-size: 13px; }
.dropify-message p { margin: 0; }
.dropify-icon { font-size: 26px; line-height: 1; color: var(--ec-accent, #0050c8); }
.dropify-error { color: #b42318; font-weight: 600; }
.dropify-wrapper.has-error { border-color: #b42318; }
.dropify-preview { display: none; position: absolute; inset: 0; background: #fff; align-items: center; justify-content: center; padding: 8px; }
.dropify-wrapper.has-preview .dropify-preview { display: flex; }
.dropify-wrapper.has-preview .dropify-message { visibility: hidden; }
.dropify-render img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 6px; }
.dropify-render { display: flex; align-items: center; justify-content: center; height: 100%; width: 100%; }
.dropify-extension { font-size: 18px; font-weight: 700; text-transform: uppercase; color: var(--ec-accent, #0050c8); letter-spacing: .06em; }
.dropify-infos { position: absolute; left: 0; right: 0; bottom: 0; padding: 4px 8px; background: rgba(17, 24, 39, .72); color: #fff; font-size: 12px; opacity: 0; transition: opacity .15s; }
.dropify-infos p { margin: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dropify-wrapper:hover .dropify-infos { opacity: 1; }
.dropify-clear { display: none; position: absolute; top: 8px; right: 8px; z-index: 6; border: 1px solid #d7dce4; background: #fff; border-radius: 6px; font-size: 12px; padding: 2px 8px; color: #b42318; }
.dropify-wrapper.has-preview .dropify-clear { display: inline-block; }

/* Font Awesome 7 : largeur naturelle des icônes, comme en version 6 (fa-fw reste à largeur fixe) */
:root { --fa-width: auto; }
