.tool-stage{padding:24px}.tool-stage .stage-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.tool-stage .stage-head h2{font-size:18px;font-weight:600}.tool-stage .stage-hint{color:var(--ink-2);font-size:15px}.opt-group{gap:8px;display:grid}.opt{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:15.5px;display:flex}.opt:has(input:checked){border-color:var(--blue);background:var(--blue-tint)}.opt input{accent-color:var(--blue);flex-shrink:0;width:18px;height:18px;margin-top:5px}.opt small{color:var(--ink-2);font-size:14px;display:block}.file-list{gap:8px;display:grid}.file-row{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:12px;padding:10px 10px 10px 12px;display:flex}.file-row.dragging{opacity:.5}.file-row.drop-before{box-shadow:0 -3px 0 var(--blue)}.file-row .thumb{border:1px solid var(--line);background:var(--ground);width:52px;height:68px;font-family:var(--font-mono);color:var(--ink-2);border-radius:4px;flex-shrink:0;place-items:center;font-size:12px;display:grid;overflow:hidden}.file-row .thumb img,.file-row .thumb canvas{object-fit:contain;background:#fff;width:100%;height:100%}.file-row .info{flex:1;min-width:0}.file-row .fname{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.file-row .fmeta{font-family:var(--font-mono);color:var(--ink-2);font-size:13px}.file-row .fmeta.err{font-family:var(--font-sans);color:var(--err-ink)}.file-row .acts{flex-shrink:0;gap:2px;display:flex}.icon-btn{width:44px;height:44px;color:var(--ink-2);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.icon-btn:hover:not(:disabled){background:var(--ground);color:var(--ink)}.icon-btn:disabled{opacity:.3;cursor:default}.icon-btn svg{width:20px;height:20px}.add-more{margin-top:12px}.result-card{border:1px solid var(--line);border-radius:var(--r-card);text-align:center;background:#fff;max-width:520px;margin:8vh auto 0;padding:28px}.result-card .big{font-family:var(--font-mono);letter-spacing:-.02em;margin-top:6px;font-size:30px;font-weight:500}.result-card p{color:var(--ink-2);margin-top:8px}@media (width<=900px){.tool-stage{padding:16px}.file-row .acts .icon-btn{width:40px}}
