.modal-backdrop.svelte-17b4x17{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#05060ac7;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal.svelte-17b4x17{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);flex-direction:column;gap:16px;max-width:min(480px,92vw);padding:28px;display:flex}h2.svelte-17b4x17{font-family:var(--font-display);font-size:1.3rem;font-weight:600}.reason.svelte-17b4x17{color:var(--color-text-muted);font-size:.88rem}.options.svelte-17b4x17{flex-direction:column;gap:10px;display:flex}.option.svelte-17b4x17{text-align:left;border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface-2);cursor:pointer;transition:border-color var(--ease-fast);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.option.svelte-17b4x17:hover{border-color:var(--color-accent-line)}.option-title.svelte-17b4x17{color:var(--color-text);font-size:.95rem;font-weight:600}.option-desc.svelte-17b4x17{color:var(--color-text-dim);font-size:.8rem}.viewer.svelte-3x0t8e{flex-direction:column;gap:24px;display:flex}.drop-zone.svelte-3x0t8e{border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);text-align:center;transition:border-color var(--ease-base), background var(--ease-base);padding:40px 24px}.drop-zone.svelte-3x0t8e:has(.drop-label:where(.svelte-3x0t8e):hover){border-color:var(--color-accent);background:#5081f50a}.drop-zone.drag-active.svelte-3x0t8e{border-color:var(--color-accent);background:#5081f514;transform:scale(1.01)}.sr-only.svelte-3x0t8e{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.drop-label.svelte-3x0t8e{cursor:pointer;color:var(--color-text-muted);flex-direction:column;align-items:center;gap:8px;font-size:.95rem;display:flex}.drop-icon.svelte-3x0t8e{color:var(--color-text-dim);font-size:2rem;line-height:1}.drop-sub.svelte-3x0t8e{color:var(--color-text-dim);font-size:.78rem}.progress-section.svelte-3x0t8e{flex-direction:column;gap:6px;display:flex}.progress-label.svelte-3x0t8e{color:var(--color-text-muted);justify-content:space-between;font-size:.82rem;display:flex}.progress-bar.svelte-3x0t8e{background:var(--color-border-strong);border-radius:var(--radius-full);height:4px;overflow:hidden}.progress-fill.svelte-3x0t8e{border-radius:var(--radius-full);height:100%;transition:width .3s}.progress-fill.accent.svelte-3x0t8e{background:var(--color-accent)}.progress-fill.warm.svelte-3x0t8e{background:var(--color-warm)}.progress-sub.svelte-3x0t8e{color:var(--color-text-dim);font-variant-numeric:tabular-nums;font-size:.75rem}.progress-file.svelte-3x0t8e{font-family:var(--font-mono);color:var(--color-text-dim);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.search-row.svelte-3x0t8e{align-items:center;gap:10px;display:flex}.search-input.svelte-3x0t8e{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text);transition:border-color var(--ease-fast);outline:none;flex:1;padding:10px 14px;font-size:.95rem}.search-input.svelte-3x0t8e:focus{border-color:var(--color-accent-line)}.btn-search.svelte-3x0t8e,.btn-add.svelte-3x0t8e,.btn-download.svelte-3x0t8e,.btn-clear.svelte-3x0t8e{border-radius:var(--radius-md);cursor:pointer;transition:opacity var(--ease-fast);border:none;padding:10px 18px;font-size:.9rem;font-weight:600}.btn-add.svelte-3x0t8e{background:var(--color-surface);border:1px solid var(--color-border-strong);color:var(--color-text-muted);align-items:center;display:inline-flex}.btn-add.svelte-3x0t8e:hover{color:var(--color-text);border-color:var(--color-accent-line)}.btn-search.svelte-3x0t8e{background:var(--color-accent);color:#fff}.btn-search.svelte-3x0t8e:disabled{opacity:.5;cursor:default}.btn-download.svelte-3x0t8e{background:var(--color-surface);border:1px solid var(--color-border-strong);color:var(--color-text-muted)}.btn-download.svelte-3x0t8e:hover{color:var(--color-text);border-color:var(--color-border-strong)}.btn-clear.svelte-3x0t8e{background:var(--color-surface);border:1px solid var(--color-border-strong);color:var(--color-text-muted)}.btn-clear.svelte-3x0t8e:hover{color:#ef4444;border-color:#ef4444}.meta-row.svelte-3x0t8e{justify-content:space-between;align-items:center;gap:16px;margin-top:-12px;display:flex}.status-slot.svelte-3x0t8e{flex:1;min-width:0}.sort-time.svelte-3x0t8e{font-family:var(--font-mono);color:var(--color-text-dim);font-size:.75rem}.preload-hint.svelte-3x0t8e{color:var(--color-text-dim);align-items:center;gap:7px;font-size:.75rem;display:flex}.preload-hint.svelte-3x0t8e .dot:where(.svelte-3x0t8e){border-radius:50%;width:6px;height:6px}.preload-hint.svelte-3x0t8e .dot.pulsing:where(.svelte-3x0t8e){background:var(--color-warm);animation:1.1s ease-in-out infinite blink}.preload-hint.svelte-3x0t8e .dot.ready:where(.svelte-3x0t8e){background:var(--color-accent);box-shadow:0 0 6px var(--color-accent)}.per-page.svelte-3x0t8e{color:var(--color-text-dim);align-items:center;gap:8px;font-size:.78rem;display:flex}.per-page.svelte-3x0t8e select:where(.svelte-3x0t8e){background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;outline:none;padding:4px 8px;font-size:.78rem}.image-grid.svelte-3x0t8e{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.image-grid.grid-3.svelte-3x0t8e{grid-template-columns:repeat(3,1fr);gap:16px}.image-tile.svelte-3x0t8e{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);content-visibility:auto;contain-intrinsic-size:auto 220px;flex-direction:column;gap:4px;animation:.32s cubic-bezier(.2,.7,.2,1) both svelte-3x0t8e-tile-in;display:flex;position:relative;overflow:hidden}@keyframes svelte-3x0t8e-tile-in{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:none}}.tile-preview.svelte-3x0t8e{appearance:none;cursor:pointer;background:0 0;border:none;margin:0;padding:0;display:block;position:relative}.image-tile.svelte-3x0t8e img:where(.svelte-3x0t8e),.preview.svelte-3x0t8e{aspect-ratio:1;-o-object-fit:contain;object-fit:contain;background:var(--color-surface-2);width:100%;display:block}.copied-badge.svelte-3x0t8e{font-family:var(--font-mono);color:#fff;background:#5081f5c7;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;animation:.2s both fade-up;display:flex;position:absolute;inset:0}.tile-remove.svelte-3x0t8e{z-index:2;width:22px;height:22px;color:var(--color-text-muted);cursor:pointer;opacity:0;transition:opacity var(--ease-fast), color var(--ease-fast);background:#0a0c13b3;border:none;border-radius:50%;font-size:.7rem;position:absolute;top:6px;right:6px}.image-tile.svelte-3x0t8e:hover .tile-remove:where(.svelte-3x0t8e){opacity:1}.tile-remove.svelte-3x0t8e:hover{color:#ef4444}.tile-footer.svelte-3x0t8e{justify-content:space-between;align-items:center;gap:6px;padding:4px 8px;display:flex}.tile-actions.svelte-3x0t8e{flex-shrink:0;gap:4px;display:flex}.tile-actions.svelte-3x0t8e button:where(.svelte-3x0t8e){border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-2);width:24px;height:24px;color:var(--color-text-muted);cursor:pointer;transition:color var(--ease-fast), border-color var(--ease-fast);font-size:.8rem}.tile-actions.svelte-3x0t8e button:where(.svelte-3x0t8e):hover{color:var(--color-text);border-color:var(--color-accent-line)}.preview.svelte-3x0t8e{justify-content:center;align-items:center;display:flex}.svg-icon.svelte-3x0t8e{background:var(--color-text);width:56%;height:56%;-webkit-mask:var(--icon-src) center / contain no-repeat;-webkit-mask:var(--icon-src) center / contain no-repeat;mask:var(--icon-src) center / contain no-repeat}.no-preview.svelte-3x0t8e{aspect-ratio:1;width:100%;color:var(--color-text-dim);background:var(--color-surface-2);word-break:break-all;text-align:center;justify-content:center;align-items:center;padding:8px;font-size:.7rem;display:flex}.tile-name.svelte-3x0t8e{min-width:0;color:var(--color-text-dim);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.7rem;overflow:hidden}.pagination.svelte-3x0t8e{color:var(--color-text-muted);justify-content:center;align-items:center;gap:16px;font-size:.88rem;display:flex}.pagination.svelte-3x0t8e button:where(.svelte-3x0t8e){background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;padding:6px 14px;font-size:.9rem}.pagination.svelte-3x0t8e button:where(.svelte-3x0t8e):disabled{opacity:.35;cursor:default}.empty.svelte-3x0t8e{text-align:center;color:var(--color-text-dim);font-size:.9rem}.modal-backdrop.svelte-3x0t8e{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#05060ac7;justify-content:center;align-items:center;padding:24px;animation:.18s both fade-up;display:flex;position:fixed;inset:0}.modal.svelte-3x0t8e{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);flex-direction:column;gap:16px;max-width:min(720px,92vw);max-height:88vh;padding:20px;display:flex;position:relative}.modal-close.svelte-3x0t8e{border:1px solid var(--color-border-strong);background:var(--color-surface-2);width:30px;height:30px;color:var(--color-text-muted);cursor:pointer;border-radius:50%;font-size:.85rem;position:absolute;top:12px;right:12px}.modal-close.svelte-3x0t8e:hover{color:var(--color-text)}.modal-image.svelte-3x0t8e{background:var(--color-surface-2);border-radius:var(--radius-md);justify-content:center;align-items:center;min-height:200px;max-height:64vh;display:flex;overflow:hidden}.modal-image.svelte-3x0t8e img:where(.svelte-3x0t8e){-o-object-fit:contain;object-fit:contain;max-width:100%;max-height:64vh}.svg-icon.big.svelte-3x0t8e{width:clamp(120px,36vh,320px);height:clamp(120px,36vh,320px)}.modal-bar.svelte-3x0t8e{justify-content:space-between;align-items:center;gap:16px;display:flex}.modal-name.svelte-3x0t8e{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.modal-actions.svelte-3x0t8e{flex-shrink:0;gap:8px;display:flex}.modal-actions.svelte-3x0t8e button:where(.svelte-3x0t8e){border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface-2);color:var(--color-text);cursor:pointer;transition:border-color var(--ease-fast);padding:8px 16px;font-size:.85rem;font-weight:600}.modal-actions.svelte-3x0t8e button:where(.svelte-3x0t8e):hover{border-color:var(--color-accent-line)}
