.unzip-page[data-v-d2e55c23]{min-height:calc(var(--vh) * 100);background:var(--bg-main)}.content[data-v-d2e55c23]{padding:16px;max-width:640px;margin:0 auto}.first-tip-bar[data-v-d2e55c23]{display:flex;align-items:center;gap:8px;padding:10px 14px;margin-bottom:16px;border-radius:10px;background:var(--primary-100);border:1px solid var(--primary-300);font-size:13px;color:var(--text-secondary)}@media (min-width: 768px){.content[data-v-d2e55c23]{padding:24px 32px;max-width:720px}}.first-tip-bar a[data-v-d2e55c23]{color:var(--primary);font-weight:600;text-decoration:none}.first-tip-bar a[data-v-d2e55c23]:hover{text-decoration:underline}.upload-section[data-v-d2e55c23]{margin-bottom:20px}.upload-card[data-v-d2e55c23]{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 20px;border:2px dashed var(--border-color);border-radius:16px;cursor:pointer;transition:all .25s;background:var(--bg-message-ai)}.upload-card[data-v-d2e55c23]:hover{border-color:var(--primary);background:var(--primary-50)}.upload-card.has-file[data-v-d2e55c23]{border-style:solid;border-color:var(--primary)}.upload-icon[data-v-d2e55c23]{width:64px;height:64px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);border-radius:12px;background:var(--bg-message-ai)}.upload-icon.has-file[data-v-d2e55c23]{color:var(--primary)}.upload-text[data-v-d2e55c23]{font-size:15px;font-weight:600;color:var(--text-primary)}.upload-hint[data-v-d2e55c23]{font-size:12px;color:var(--text-secondary)}.unzip-btn[data-v-d2e55c23]{width:100%;padding:14px;border:none;border-radius:12px;background:var(--primary);color:#fff;font-size:15px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;margin-bottom:16px}.unzip-btn[data-v-d2e55c23]:disabled{opacity:.5;cursor:not-allowed}.unzip-btn[data-v-d2e55c23]:not(:disabled):hover{filter:brightness(1.08)}.unzip-btn[data-v-d2e55c23]:not(:disabled):active{transform:scale(.98)}.spin-icon[data-v-d2e55c23]{animation:spin-d2e55c23 1s linear infinite}@keyframes spin-d2e55c23{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.progress-section[data-v-d2e55c23]{margin-bottom:16px}.progress-bar[data-v-d2e55c23]{height:6px;background:var(--border-color);border-radius:3px;overflow:hidden;margin-bottom:6px}.progress-fill[data-v-d2e55c23]{height:100%;background:var(--primary);border-radius:3px;transition:width .4s ease}.progress-text[data-v-d2e55c23]{font-size:12px;color:var(--text-secondary)}.result-section[data-v-d2e55c23]{background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:16px;overflow:hidden}.result-header[data-v-d2e55c23]{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border-color)}.result-title[data-v-d2e55c23]{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--primary)}.result-meta[data-v-d2e55c23]{font-size:12px;color:var(--text-secondary)}.file-list[data-v-d2e55c23]{max-height:400px;overflow-y:auto}.file-item[data-v-d2e55c23]{display:flex;align-items:center;justify-content:space-between;padding:10px 18px;border-bottom:1px solid var(--border-color);transition:background .15s}.file-item[data-v-d2e55c23]:hover{background:color-mix(in srgb,var(--primary) 3%,transparent)}.file-item.skipped[data-v-d2e55c23]{opacity:.5}.file-info[data-v-d2e55c23]{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.file-detail[data-v-d2e55c23]{display:flex;flex-direction:column;min-width:0}.file-name[data-v-d2e55c23]{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-path[data-v-d2e55c23]{font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-actions[data-v-d2e55c23]{display:flex;align-items:center;gap:8px;flex-shrink:0}.file-size[data-v-d2e55c23]{font-size:12px;color:var(--text-secondary);white-space:nowrap}.download-btn[data-v-d2e55c23]{display:flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--primary-500);border-radius:6px;background:color-mix(in srgb,var(--primary) 6%,transparent);font-size:12px;font-weight:600;color:var(--primary);cursor:pointer;text-decoration:none;transition:all .2s}.download-btn[data-v-d2e55c23]:hover{background:var(--primary-200)}.skip-tag[data-v-d2e55c23]{font-size:11px;color:var(--warning);background:var(--warning-100);padding:2px 8px;border-radius:4px}.error-section[data-v-d2e55c23]{display:flex;align-items:flex-start;gap:8px;padding:14px;background:var(--danger-50);border-radius:12px;font-size:13px;color:var(--danger)}.action-row[data-v-d2e55c23]{display:flex;gap:12px;margin-bottom:16px}.action-row .unzip-btn[data-v-d2e55c23]{flex:2;margin-bottom:0}.preview-btn[data-v-d2e55c23]{flex:1;padding:14px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-sidebar);color:var(--text-primary);font-size:15px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.preview-btn[data-v-d2e55c23]:disabled{opacity:.5;cursor:not-allowed}.preview-btn[data-v-d2e55c23]:not(:disabled):hover{border-color:var(--primary);color:var(--primary);background:var(--primary-50)}.preview-btn[data-v-d2e55c23]:not(:disabled):active{transform:scale(.98)}.preview-section[data-v-d2e55c23]{background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:16px;overflow:hidden;margin-bottom:16px}.history-section[data-v-d2e55c23]{margin-top:24px}.history-header[data-v-d2e55c23]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;margin-bottom:8px}.history-header svg[data-v-d2e55c23]:last-child{margin-left:auto}.history-item[data-v-d2e55c23]{padding:12px;border-radius:10px;background:var(--bg-sidebar);border:1px solid var(--border-color);margin-bottom:10px}.history-meta[data-v-d2e55c23]{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.history-time[data-v-d2e55c23]{font-size:12px;color:var(--text-secondary)}.history-status[data-v-d2e55c23]{font-size:11px;padding:2px 6px;border-radius:4px;background:var(--primary-300);color:var(--primary)}.history-status.fail[data-v-d2e55c23]{background:var(--danger-200);color:var(--danger)}.history-remark[data-v-d2e55c23]{font-size:12px;color:var(--text-muted);margin-bottom:8px}.history-actions[data-v-d2e55c23]{display:flex;gap:8px}.history-view-btn[data-v-d2e55c23]{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:6px;border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all .2s}.history-view-btn[data-v-d2e55c23]:hover{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,transparent)}.history-empty[data-v-d2e55c23]{font-size:12px;color:var(--text-muted)}.modal-enter-active[data-v-d2e55c23],.modal-leave-active[data-v-d2e55c23]{transition:opacity .25s ease}.modal-enter-from[data-v-d2e55c23],.modal-leave-to[data-v-d2e55c23]{opacity:0}.modal-enter-active .modal-panel[data-v-d2e55c23],.modal-leave-active .modal-panel[data-v-d2e55c23]{transition:transform .25s ease,opacity .25s ease}.modal-enter-from .modal-panel[data-v-d2e55c23],.modal-leave-to .modal-panel[data-v-d2e55c23]{transform:scale(.92);opacity:0}.modal-overlay[data-v-d2e55c23]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px}.modal-panel[data-v-d2e55c23]{background:var(--bg-sidebar);border-radius:16px;border:1px solid var(--border-color);width:100%;max-width:560px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.modal-header[data-v-d2e55c23]{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border-color);font-size:15px;font-weight:700}.modal-close[data-v-d2e55c23]{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.modal-close[data-v-d2e55c23]:hover{background:var(--hover-bg);color:var(--text-primary)}.modal-body[data-v-d2e55c23]{padding:12px;overflow-y:auto;flex:1}.modal-empty[data-v-d2e55c23]{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 20px;color:var(--text-muted);font-size:13px}.modal-file-list[data-v-d2e55c23]{display:flex;flex-direction:column;gap:6px}.modal-file-item[data-v-d2e55c23]{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:var(--bg-main);border:1px solid var(--border-color);transition:background .15s,border-color .15s}.modal-file-item[data-v-d2e55c23]:hover{background:var(--primary-50);border-color:var(--primary-500)}.modal-file-index[data-v-d2e55c23]{width:22px;height:22px;border-radius:6px;background:var(--primary-100);color:var(--primary);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-file-detail[data-v-d2e55c23]{flex:1;min-width:0;display:flex;flex-direction:column}.modal-file-name[data-v-d2e55c23]{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-file-size[data-v-d2e55c23]{font-size:11px;color:var(--text-secondary)}.modal-download-btn[data-v-d2e55c23]{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:6px;border:1px solid var(--primary-500);background:color-mix(in srgb,var(--primary) 6%,transparent);color:var(--primary);font-size:12px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .2s;flex-shrink:0}.modal-download-btn[data-v-d2e55c23]:hover{background:color-mix(in srgb,var(--primary) 14%,transparent)}.modal-no-url[data-v-d2e55c23]{font-size:11px;color:var(--text-muted);padding:5px 8px;flex-shrink:0}.modal-footer[data-v-d2e55c23]{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-top:1px solid var(--border-color)}.modal-footer-tip[data-v-d2e55c23]{font-size:12px;color:var(--text-secondary)}.modal-download-all[data-v-d2e55c23]{display:inline-flex;align-items:center;gap:4px;padding:7px 14px;border-radius:8px;border:none;background:var(--primary);color:#fff;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s}.modal-download-all[data-v-d2e55c23]:hover{filter:brightness(1.08)}.modal-download-all[data-v-d2e55c23]:active{transform:scale(.97)}
