:root{--bg-app: #faf9f7;--bg-panel: #ffffff;--bg-cell: #f0ebe3;--bg-input: #faf9f7;--bg-soft: #f8f4ef;--border-strong: #ebe3d9;--border-soft: #e8e0d8;--border-faint: #f0ebe3;--border-input: #d4c8bc;--text-primary: #3a2c20;--text-secondary: #5a4d3e;--text-muted: #9a8878;--text-faint: #b0a090;--accent: #5c1e1e;--accent-strong: #3d1010;--error-bg: #fdecea;--error-text: #7a1c1c;--error-border: #f5c6cb;--warning-bg: #fff8e1;--warning-text: #7a5c00;--warning-border: #f0c040;--shadow-card: 0 1px 4px rgba(60, 40, 20, .06);--shadow-floating: 0 2px 16px rgba(50, 30, 10, .1);--radius-sm: 4px;--radius-md: 7px;--radius-lg: 10px;--space-1: 4px;--space-2: 6px;--space-3: 8px;--space-4: 12px;--space-5: 16px;--space-6: 20px;--space-7: 24px;--serif: "Lora", Georgia, serif;--sans: "Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}button{font:inherit;cursor:pointer}input,textarea{font:inherit}a{color:inherit;text-decoration:none}.serif{font-family:var(--serif)}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.imp-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.imp-box{background:#fff;border-radius:12px;padding:22px 24px 18px;width:min(560px,100%);max-height:86vh;overflow:hidden;box-shadow:0 8px 40px #321e0a2e;display:flex;flex-direction:column;gap:14px}.imp-head{display:flex;align-items:center;gap:10px}.imp-head .dialog-title{flex:1;margin:0;font-size:17px;color:#2c2c2c;font-family:var(--serif);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.close-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:none;border:1px solid #e0d8d0;border-radius:5px;color:var(--text-secondary);cursor:pointer}.close-btn:hover{color:var(--accent);border-color:var(--accent)}.imp-tabs{display:flex;gap:2px;background:color-mix(in srgb,var(--accent) 6%,transparent);border:1.5px solid color-mix(in srgb,var(--accent) 15%,transparent);border-radius:9px;padding:3px}.imp-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:7px 10px;border:1.5px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary);font-size:13px;cursor:pointer}.imp-tab:hover{color:var(--accent)}.imp-tab.on{background:#fff;border-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent);font-weight:600;box-shadow:0 1px 3px #3c1e1414}.imp-folder{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border-input);border-radius:10px;background:var(--bg-soft);font-size:13px;color:var(--text-primary)}.imp-folder .f1{flex:1;min-width:0}.imp-folder .folder-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.imp-sub{font-size:12px;color:var(--text-muted)}.imp-sub .mono{font-family:ui-monospace,monospace;font-size:11px}.imp-sub .err{color:var(--error-text)}[dialogFocus]:focus{outline:none}.imp-patterns{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border-input);border-radius:10px;font-size:13px;color:var(--text-primary);cursor:pointer}.imp-patterns input{width:16px;height:16px;margin:0;accent-color:var(--accent);flex-shrink:0}.imp-patterns .f1{flex:1}.imp-scan{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-muted);padding:14px 2px}.imp-spin{width:14px;height:14px;border:2px solid var(--border-input);border-top-color:var(--accent);border-radius:50%;animation:imp-spin .8s linear infinite;flex-shrink:0}@keyframes imp-spin{to{transform:rotate(360deg)}}.imp-empty{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:26px 16px;border:1px dashed var(--border-input);border-radius:10px;color:var(--text-muted)}.imp-empty p{margin:0;font-size:13px;color:var(--text-secondary);max-width:300px}.dropzone{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:26px 16px;border:1.5px dashed var(--border-input);border-radius:10px;color:var(--text-muted);cursor:pointer;font-size:13px;transition:background .12s,border-color .12s}.dropzone strong{color:var(--text-primary);font-weight:600}.dropzone u{color:var(--accent)}.dropzone:hover,.dropzone.over{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 5%,#fff)}.dropzone.compact{flex-direction:row;justify-content:center;padding:10px 14px}.dropzone:focus-within{outline:2px solid var(--accent);outline-offset:2px}.imp-list{border:1px solid var(--border-input);border-radius:10px;display:flex;flex-direction:column;min-height:0;overflow:hidden}.imp-list ul{list-style:none;margin:0;padding:0;overflow-y:auto;max-height:40vh}.imp-all{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border-soft);font-size:12px;font-weight:600;color:var(--text-secondary);background:var(--bg-soft);cursor:pointer}.imp-all .f1{flex:1}.imp-all .imp-sum{font-weight:400;color:var(--text-muted)}.imp-all .imp-link{font-weight:400;color:var(--accent);background:none;border:none;padding:0;font-size:12px;cursor:pointer;text-decoration:underline}.imp-all input,.imp-row input{width:16px;height:16px;margin:0;accent-color:var(--accent);flex-shrink:0}.imp-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border-soft)}.imp-row:last-child{border-bottom:none}.imp-row.off .imp-thumb,.imp-row.off .imp-title{opacity:.55}.imp-thumb{width:46px;height:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-faint)}.imp-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.imp-title{font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;border:1px solid var(--border-input);white-space:nowrap;color:var(--text-muted);flex-shrink:0}.tag.new{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 6%,#fff)}.tag.copy{color:var(--warning-text);border-color:var(--warning-border);background:var(--warning-bg)}.tag.error{color:var(--error-text);border-color:var(--error-border);background:var(--error-bg)}.tag.ok{color:#2f5d3a;background:#eef5ef;border-color:#b9d3bf}.tag.wait{font-weight:400}.imp-prog{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--text-primary)}.imp-prog .line{display:flex;align-items:center;gap:6px}.imp-prog .f1{flex:1}.imp-prog .track{height:6px;border-radius:3px;background:#e8ddd0;overflow:hidden}.imp-prog .bar{height:100%;border-radius:3px;background:var(--accent);transition:width .2s ease}.imp-done{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.45}.imp-foot{display:flex;align-items:center;gap:14px}.imp-foot .f1{flex:1}.imp-primary{white-space:nowrap;font-size:13px;padding:8px 14px;border-radius:8px;border:none;cursor:pointer;font-weight:600;background:var(--accent);color:#fff}.imp-primary:hover:not(:disabled){background:var(--accent-strong)}.imp-primary:disabled{opacity:.4;cursor:default}.imp-ghost{white-space:nowrap;background:none;border:1px solid var(--border-input);border-radius:8px;padding:6px 12px;cursor:pointer;font-size:13px;color:var(--text-secondary)}.imp-ghost:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.imp-ghost:disabled{opacity:.6}.imp-link-btn{background:none;border:none;padding:0;font-size:13px;color:#8b5a3c;font-weight:500;cursor:pointer;white-space:nowrap}.imp-link-btn:hover{color:var(--accent)}.exp-format{display:grid;grid-template-columns:auto 1fr 1fr;gap:8px;align-items:center}@media(max-width:520px){.exp-format{grid-template-columns:1fr}}.exp-flabel{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.exp-opt{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1.5px solid var(--border-input);border-radius:9px;cursor:pointer;font-size:13px;color:var(--text-primary)}.exp-opt input{accent-color:var(--accent);margin:0}.exp-opt strong{display:block;font-weight:600}.exp-opt.on{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 5%,#fff)}.imp-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}html,body{background:var(--bg-app);color:var(--text-primary);font-family:var(--sans);font-size:13px}
