.result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-content:start;min-height:540px}.result-empty{display:grid;place-items:center;grid-column:1/-1;min-height:420px;color:#868a94;text-align:center;font-size:13px}.result-empty b{display:block;margin-bottom:7px;color:#5b5f69}.result-card{position:relative;aspect-ratio:3/4;overflow:hidden;border:0;border-radius:12px;background:#edf0f3;cursor:default}.result-card img{width:100%;height:100%;object-fit:cover}.result-card.done{cursor:pointer}.result-card .task-state{position:absolute;inset:auto 8px 8px 8px;padding:6px 7px;border-radius:7px;background:#202126c9;color:#fff;font-size:11px;text-align:center}.result-card.pending:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,#e7e9ed,#f8f9fb,#e7e9ed);background-size:200% 100%;animation:loading 1.2s linear infinite}.result-card.failed .task-state{background:#9a4c4ccf}@keyframes loading{to{background-position:-200% 0}}.image-preview-dialog{max-width:min(760px,90vw);max-height:90vh;padding:12px;border:0;border-radius:15px;background:#23242a}.image-preview-dialog::backdrop{background:#111216b5}.image-preview-dialog img{display:block;max-width:calc(90vw - 24px);max-height:calc(90vh - 24px);object-fit:contain}.image-preview-dialog button{position:absolute;top:10px;right:10px;width:34px;height:34px;border:0;border-radius:50%;background:#ffffffd9;color:#333;font-size:20px;cursor:pointer}.result-context-menu{position:fixed;z-index:1200;min-width:132px;padding:6px;border:1px solid #e0e2e7;border-radius:10px;background:#fff;box-shadow:0 12px 32px #191b2430}.result-context-menu[hidden]{display:none}.result-context-menu button{display:block;width:100%;padding:9px 12px;border:0;border-radius:7px;background:transparent;color:#272932;font:inherit;text-align:left;cursor:pointer}.result-context-menu button:hover{background:#f1f2f5}.result-context-menu button.danger{color:#c33f48}.result-context-menu button.danger:hover{background:#fff0f1}body.dark .result-card{background:#383943}.dark .result-empty{color:#b4b6bf}.dark .result-empty b{color:#e4e5e9}.dark .result-context-menu{border-color:#4b4d57;background:#30313a;box-shadow:0 12px 32px #0007}.dark .result-context-menu button{color:#f2f2f5}.dark .result-context-menu button:hover{background:#41434e}.dark .result-context-menu button.danger{color:#ff9299}.dark .result-context-menu button.danger:hover{background:#522f34}
