#preview-grid .preview-thumb{position:relative;isolation:isolate}
#preview-grid .reference-upload-meter{position:absolute;inset:0;width:auto;height:auto;border-radius:inherit;overflow:visible;background:none;pointer-events:none;z-index:4}
#preview-grid .reference-upload-meter svg{display:block;width:100%;height:100%;overflow:visible}
#preview-grid .reference-upload-meter path{fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
#preview-grid .reference-upload-track{stroke:rgba(18,15,12,.26)}
#preview-grid .reference-upload-fill{stroke:#ffe0a0;stroke-dasharray:100;stroke-dashoffset:100;filter:drop-shadow(0 0 1px rgba(59,33,6,.58));transition:stroke-dashoffset .24s ease,stroke .2s ease}
#preview-grid .reference-upload-meter[data-state="ready"] .reference-upload-fill{stroke:#69dbb1;filter:drop-shadow(0 0 1px rgba(5,56,41,.62))}
#preview-grid .reference-upload-meter[data-state="error"] .reference-upload-fill{stroke:#ff9695;stroke-dashoffset:0!important;animation:none!important}
#preview-grid .reference-upload-meter[data-busy="1"] .reference-upload-fill{stroke-dasharray:24 76;animation:reference-frame-wait 1.6s linear infinite}
#preview-grid .reference-upload-retry{position:absolute;inset:0;width:100%;height:100%;z-index:3;display:flex;align-items:flex-end;justify-content:flex-end;padding:6px;border:0;border-radius:inherit;background:linear-gradient(145deg,rgba(28,11,11,.12),rgba(29,10,10,.43));color:#fff4ee;font:600 14px/1 system-ui;cursor:pointer;box-shadow:none}
#preview-grid .reference-upload-retry:hover{background:rgba(49,15,15,.42)}
#preview-grid .reference-upload-retry:focus-visible{outline:2px solid #fff2d0;outline-offset:2px}
#preview-grid .preview-order{z-index:5}
#preview-grid .preview-remove{z-index:6}
#preview-grid .preview-item[data-preview-index] .preview-order{pointer-events:none}
#preview-grid .preview-thumb[data-reference-frame-compact="1"] .reference-upload-retry{padding:5px;font-size:10px}
#preview-grid .preview-thumb[data-reference-frame-compact="1"][data-reference-upload-state="error"] .preview-order{min-width:12px;height:12px;padding:0;font-size:8px}
#preview-grid .preview-thumb[data-reference-frame-compact="1"][data-reference-upload-state="error"] .preview-remove{width:12px;height:12px;font-size:9px}
@keyframes reference-frame-wait{from{stroke-dashoffset:0}to{stroke-dashoffset:-100}}
@media(prefers-reduced-motion:reduce){#preview-grid .reference-upload-meter[data-busy="1"] .reference-upload-fill{animation:none;stroke-dasharray:24 76}#preview-grid .reference-upload-fill{transition:none}}
