/* Shared by the homepage and the list editor. Native file input remains accessible. */
.homepage .file-zone,.subpage .file-zone{padding:24px 20px;background:linear-gradient(135deg,#f5faff,#effbfc);border:1.5px dashed #a3c9f8;border-radius:16px;text-align:center;transition:background .15s,border-color .15s,box-shadow .15s}
.file-zone .upload-label{display:flex;flex-direction:column;align-items:center;gap:7px;cursor:pointer;margin:0 0 16px;color:#08225f}
.upload-label .upload-icon{display:block;width:52px;height:52px;box-sizing:content-box;padding:12px;color:#0064ff;background:white;border:1px solid #dcecff;border-radius:17px;box-shadow:0 5px 15px #0064ff0b;margin-bottom:5px}
.upload-label strong{font-size:17px;line-height:1.4}.upload-label span{font-size:12px;font-weight:400;color:#536b99}
.file-zone #file-list{display:block;width:min(100%,360px);margin:0 auto;padding:0;border:0;background:transparent;color:#536b99;font-size:12px;text-align:left;cursor:pointer;border-radius:9px}
.file-zone #file-list::file-selector-button{border:0;border-radius:9px;padding:12px 18px;background:#0064ff;color:#fff;font:inherit;font-weight:700;cursor:pointer;margin-right:12px;box-shadow:0 4px 12px #0064ff1a}
.file-zone #file-list:disabled{opacity:.5;cursor:wait}.upload-formats{display:flex;justify-content:center;gap:6px;margin-top:18px}.upload-formats span{border:1px solid #d5e6f9;background:#ffffffb3;color:#536b99;border-radius:5px;font-size:10px;font-weight:700;letter-spacing:.5px;padding:3px 7px}
.file-zone #file-help{font-size:11px;color:#536b99;line-height:1.6;margin-top:9px}.file-zone #file-status:empty{display:none}.file-zone #file-status:not(:empty){padding:10px;border-radius:8px;background:#fff;color:#08225f;text-align:left;overflow-wrap:anywhere}.file-zone #document-preview{text-align:left}.file-zone #document-preview summary{color:#0064ff}.homepage .file-zone.drag-over,.subpage .file-zone.drag-over,.homepage .file-zone:focus-within,.subpage .file-zone:focus-within{background:#eaf5ff;border-color:#0064ff;box-shadow:0 0 0 4px #0064ff0b}.file-zone[aria-busy=true]{border-color:#0064ff}.homepage .file-zone:hover,.subpage .file-zone:hover{border-color:#0064ff}
@media(max-width:600px){.homepage .file-zone,.subpage .file-zone{padding:20px 12px}.upload-label strong{font-size:15px}.upload-label .upload-icon{width:38px;height:38px;padding:10px}.file-zone #file-list{font-size:11px}.file-zone #file-list::file-selector-button{padding:11px 12px}}
@media(prefers-reduced-motion:reduce){.homepage .file-zone,.subpage .file-zone{transition:none}}
