:root{--rfu-bg: #ffffff;--rfu-fg: #18181b;--rfu-border: #e4e4e7;--rfu-border-active: #6366f1;--rfu-border-reject: #ef4444;--rfu-dz-bg: #fafafa;--rfu-dz-bg-hover: #f0f0ff;--rfu-dz-bg-reject: #fff1f2;--rfu-icon-color: #a1a1aa;--rfu-icon-active: #6366f1;--rfu-icon-reject: #ef4444;--rfu-hint-color: #a1a1aa;--rfu-browse-color: #6366f1;--rfu-browse-hover: #4f46e5;--rfu-chip-bg: #f4f4f5;--rfu-chip-fg: #71717a;--rfu-row-bg: #f4f4f5;--rfu-row-border: #e4e4e7;--rfu-row-name-color: #18181b;--rfu-row-size-color: #a1a1aa;--rfu-row-ext-bg: #e4e4e7;--rfu-row-ext-fg: #52525b;--rfu-remove-bg: #e4e4e7;--rfu-remove-hover: #d4d4d8;--rfu-thumb-radius: 8px;--rfu-radius: 12px;--rfu-radius-sm: 8px;--rfu-ease: cubic-bezier(.16, 1, .3, 1);--rfu-dur: .18s}.rfu-root{display:flex;flex-direction:column;gap:.875rem;font-family:inherit;width:100%}.rfu-dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2.5rem 2rem;background:var(--rfu-dz-bg);border:2px dashed var(--rfu-border);border-radius:var(--rfu-radius);cursor:pointer;outline:none;transition:border-color var(--rfu-dur) var(--rfu-ease),background var(--rfu-dur) var(--rfu-ease),transform var(--rfu-dur) var(--rfu-ease)}.rfu-dropzone:focus-visible{outline:2px solid var(--rfu-border-active);outline-offset:2px}.rfu-dropzone[data-drag-over=true]{border-color:var(--rfu-border-active);background:var(--rfu-dz-bg-hover)}.rfu-dropzone[data-drag-reject=true],.rfu-dropzone.rfu-dropzone--reject{border-color:var(--rfu-border-reject);background:var(--rfu-dz-bg-reject);animation:rfu-shake .35s ease}.rfu-dropzone[data-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.rfu-root[data-size=sm] .rfu-dropzone{padding:1.5rem 1.25rem}.rfu-root[data-size=lg] .rfu-dropzone{padding:3.5rem 2.5rem}.rfu-dz-icon-wrap{color:var(--rfu-icon-color);transition:transform var(--rfu-dur) var(--rfu-ease),color var(--rfu-dur) var(--rfu-ease)}.rfu-dz-icon-wrap[data-drag-over=true]{transform:scale(1.15) translateY(-2px);color:var(--rfu-icon-active)}.rfu-dropzone[data-drag-reject=true] .rfu-dz-icon-wrap{color:var(--rfu-icon-reject)}.rfu-dz-label{margin:0;font-size:.9rem;font-weight:600;color:var(--rfu-fg);text-align:center;pointer-events:none}.rfu-dropzone[data-drag-reject=true] .rfu-dz-label{color:var(--rfu-border-reject)}.rfu-dropzone[data-drag-over=true] .rfu-dz-label{color:var(--rfu-border-active)}.rfu-dz-sub{margin:0;font-size:.8rem;color:var(--rfu-hint-color);text-align:center;display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:.3rem}.rfu-dz-browse{background:none;border:none;padding:0;font:inherit;font-size:inherit;color:var(--rfu-browse-color);font-weight:600;cursor:pointer;transition:color var(--rfu-dur)}.rfu-dz-browse:hover:not(:disabled){color:var(--rfu-browse-hover);text-decoration:underline}.rfu-dz-constraints{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}.rfu-dz-accept{margin:.25rem 0 0;display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center}.rfu-dz-chip{display:inline-flex;align-items:center;padding:.1rem .5rem;border-radius:999px;background:var(--rfu-chip-bg);color:var(--rfu-chip-fg);font-size:.72rem;font-weight:500}.rfu-btn-trigger{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1.125rem;background:var(--rfu-border-active);color:#fff;border:none;border-radius:var(--rfu-radius-sm);font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background var(--rfu-dur) var(--rfu-ease),opacity var(--rfu-dur)}.rfu-btn-trigger:hover:not(:disabled){background:#4f46e5}.rfu-btn-trigger:focus-visible{outline:2px solid var(--rfu-border-active);outline-offset:2px}.rfu-btn-trigger:disabled{opacity:.5;cursor:not-allowed}.rfu-root[data-size=sm] .rfu-btn-trigger{padding:.35rem .75rem;font-size:.8rem}.rfu-root[data-size=lg] .rfu-btn-trigger{padding:.65rem 1.25rem;font-size:1rem}.rfu-thumb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.625rem;list-style:none;margin:0;padding:0}.rfu-root[data-size=sm] .rfu-thumb-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.4rem}.rfu-root[data-size=lg] .rfu-thumb-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.rfu-thumb-item{display:flex;flex-direction:column;gap:.3rem}.rfu-thumb-wrap{position:relative;border-radius:var(--rfu-thumb-radius);overflow:hidden;aspect-ratio:1;background:var(--rfu-row-bg);border:1px solid var(--rfu-border)}.rfu-thumb-img{width:100%;height:100%;object-fit:cover;display:block}.rfu-thumb-remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:#0000008c;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--rfu-dur);backdrop-filter:blur(2px)}.rfu-thumb-wrap:hover .rfu-thumb-remove{opacity:1}.rfu-thumb-name{font-size:.7rem;color:var(--rfu-row-size-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.rfu-file-rows{display:flex;flex-direction:column;gap:.375rem;list-style:none;margin:0;padding:0}.rfu-file-row{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;background:var(--rfu-row-bg);border:1px solid var(--rfu-row-border);border-radius:var(--rfu-radius-sm);transition:border-color var(--rfu-dur)}.rfu-file-row:hover{border-color:var(--rfu-border-active)}.rfu-file-row-icon{display:flex;align-items:center;color:var(--rfu-icon-color);flex-shrink:0}.rfu-file-row-ext{font-size:.65rem;font-weight:700;padding:.1rem .4rem;border-radius:4px;background:var(--rfu-row-ext-bg);color:var(--rfu-row-ext-fg);flex-shrink:0;letter-spacing:.03em}.rfu-file-row-info{display:flex;flex-direction:column;flex:1;min-width:0;gap:.05rem}.rfu-file-row-name{font-size:.82rem;font-weight:500;color:var(--rfu-row-name-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rfu-file-row-size{font-size:.72rem;color:var(--rfu-row-size-color)}.rfu-file-row-remove{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;background:var(--rfu-remove-bg);border:none;color:var(--rfu-chip-fg);cursor:pointer;flex-shrink:0;transition:background var(--rfu-dur),color var(--rfu-dur)}.rfu-file-row-remove:hover{background:var(--rfu-remove-hover);color:var(--rfu-fg)}.rfu-file-row-remove:focus-visible{outline:2px solid var(--rfu-border-active);outline-offset:2px}@keyframes rfu-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}[data-theme=dark] .rfu-root{--rfu-bg: #09090b;--rfu-fg: #fafafa;--rfu-border: #3f3f46;--rfu-border-active: #818cf8;--rfu-border-reject: #f87171;--rfu-dz-bg: #18181b;--rfu-dz-bg-hover: #1e1b4b;--rfu-dz-bg-reject: #450a0a;--rfu-icon-color: #52525b;--rfu-icon-active: #818cf8;--rfu-icon-reject: #f87171;--rfu-hint-color: #71717a;--rfu-browse-color: #818cf8;--rfu-browse-hover: #a5b4fc;--rfu-chip-bg: #27272a;--rfu-chip-fg: #a1a1aa;--rfu-row-bg: #27272a;--rfu-row-border: #3f3f46;--rfu-row-name-color: #fafafa;--rfu-row-size-color: #71717a;--rfu-row-ext-bg: #3f3f46;--rfu-row-ext-fg: #a1a1aa;--rfu-remove-bg: #3f3f46;--rfu-remove-hover: #52525b}@media(prefers-reduced-motion:reduce){.rfu-dropzone,.rfu-dz-icon-wrap,.rfu-dz-browse,.rfu-btn-trigger,.rfu-file-row-remove,.rfu-thumb-remove{transition:none}.rfu-dropzone.rfu-dropzone--reject{animation:none}}
