.search-box[data-v-948e9d95]{width:240px;position:relative}.search-input[data-v-948e9d95]{color:#0f172a;background:#f8fafc;border:1px solid #e5eaf2;border-radius:20px;outline:none;width:100%;padding:8px 14px;font-size:13px;transition:all .2s}.search-input[data-v-948e9d95]:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.dropdown[data-v-948e9d95]{z-index:100;background:#fff;border:1px solid #e5eaf2;border-radius:10px;width:260px;position:absolute;top:40px;right:0;overflow:hidden;box-shadow:0 8px 30px #0f172a1f}.item[data-v-948e9d95]{cursor:pointer;align-items:center;gap:8px;padding:10px 14px;font-size:13px;display:flex}.item[data-v-948e9d95]:hover{background:#eff6ff}.mod[data-v-948e9d95]{color:#2563eb;background:#eff6ff;border-radius:10px;padding:2px 8px;font-size:12px;font-weight:600}.name[data-v-948e9d95]{color:#0f172a;flex:1}.dev-tag[data-v-948e9d95]{color:#64748b;border:1px solid #e5eaf2;border-radius:8px;padding:1px 6px;font-size:11px}.empty[data-v-948e9d95]{text-align:center;color:#94a3b8;padding:14px;font-size:13px}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{color:#0f172a;background:#f8fafc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,微软雅黑,sans-serif;font-size:14px}.portal{flex-direction:column;height:100vh;display:flex;overflow:hidden}.portal-bar{background:#fff;border-bottom:1px solid #e5eaf2;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;position:relative}.portal-tabs{align-items:center;gap:10px;display:flex}.mode-btn{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e5eaf2;border-radius:22px;align-items:center;gap:7px;padding:9px 20px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.mode-btn:hover{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.mode-btn.active{color:#fff;background:linear-gradient(135deg,#2563eb,#3b82f6);border-color:#0000;box-shadow:0 2px 10px #2563eb4d}.mode-icon{font-size:15px}.portal-user{position:relative}.user-btn{color:#334155;cursor:pointer;background:#f1f5f9;border:1px solid #e5eaf2;border-radius:20px;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.user-btn:hover{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.user-caret{color:#94a3b8;font-size:10px}.user-dropdown{z-index:70;background:#fff;border:1px solid #e5eaf2;border-radius:10px;width:150px;position:absolute;top:46px;right:0;overflow:hidden;box-shadow:0 8px 30px #0f172a24}.drop-item{text-align:left;color:#334155;cursor:pointer;background:#fff;border:none;width:100%;padding:11px 16px;font-size:13px;transition:all .12s;display:block}.drop-item:hover{color:#2563eb;background:#eff6ff}.menu-overlay{z-index:60;position:fixed;inset:0}.tools-header{background:#fff;border-bottom:1px solid #e5eaf2;flex-shrink:0;align-items:center;gap:4px;height:56px;padding:0 24px;display:flex}.nav-item{color:#64748b;white-space:nowrap;border-radius:8px;padding:9px 18px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s}.nav-item:hover{color:#0f172a;background:#f1f5f9}.nav-item.active{color:#2563eb;background:#eff6ff;font-weight:600}.tools-header-right{align-items:center;gap:12px;margin-left:auto;display:flex}.admin-link{color:#475569;white-space:nowrap;background:#f8fafc;border:1px solid #e5eaf2;border-radius:8px;padding:6px 12px;font-size:13px;text-decoration:none;transition:all .15s}.admin-link:hover{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.tools-body{flex:1;min-height:0;display:flex;overflow:auto}.app-sidebar{background:#fff;border-right:1px solid #e5eaf2;flex-shrink:0;width:220px;padding:20px 12px}.sidebar-title{color:#0f172a;padding:4px 12px 16px;font-size:14px;font-weight:700}.sidebar-item{color:#475569;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:2px;padding:10px 12px;font-size:14px;text-decoration:none;transition:all .15s;display:flex}.sidebar-item:hover{color:#0f172a;background:#f1f5f9}.sidebar-item.active{color:#2563eb;background:#eff6ff;font-weight:600}.dev-tag{color:#94a3b8;border:1px solid #e5eaf2;border-radius:8px;padding:1px 6px;font-size:11px}.app-main{flex:1;min-width:0;max-width:1240px;padding:28px}.with-sidebar .app-main{max-width:1100px}.chat-body-wrap{flex:1;min-height:0;display:flex;overflow:hidden}.modal-overlay{z-index:100;background:#0f172a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:14px;width:360px;padding:26px 24px;box-shadow:0 12px 40px #0f172a29}.modal-title{color:#0f172a;margin-bottom:16px;font-size:16px;font-weight:700}.modal-error{color:#dc2626;margin-bottom:10px;font-size:13px}.modal-input{box-sizing:border-box;background:#f8fafc;border:1px solid #e5eaf2;border-radius:10px;outline:none;width:100%;margin-bottom:12px;padding:11px 14px;font-size:14px}.modal-input:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.modal-btns{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.modal-btn{cursor:pointer;border:1px solid #0000;border-radius:9px;padding:9px 22px;font-size:13px;font-weight:600}.modal-btn.cancel{color:#475569;background:#f1f5f9;border-color:#e5eaf2}.modal-btn.cancel:hover{background:#e2e8f0}.modal-btn.ok{color:#fff;background:#2563eb}.modal-btn.ok:hover{background:#1d4ed8}.modal-btn.ok:disabled{opacity:.5;cursor:not-allowed}.guide-card{text-align:center;background:#fff;border:1px solid #e5eaf2;border-radius:16px;max-width:720px;margin:40px auto 0;padding:48px 40px;box-shadow:0 4px 24px #0f172a0a}.guide-icon{margin-bottom:16px;font-size:44px}.guide-card h1{color:#0f172a;margin-bottom:12px;font-size:24px;font-weight:700}.guide-card p{color:#64748b;margin-bottom:24px;line-height:1.7}.btn-primary{color:#fff;background:#2563eb;border-radius:10px;padding:11px 26px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block;box-shadow:0 2px 10px #2563eb40}.btn-primary:hover{background:#1d4ed8;transform:translateY(-1px)}.blank-area{color:#94a3b8;border:1px dashed #dbe2ee;border-radius:16px;justify-content:center;align-items:center;gap:8px;max-width:720px;min-height:200px;margin:20px auto 0;font-size:13px;display:flex}.dev-tag-inline{color:#2563eb;background:#eff6ff;border-radius:12px;padding:3px 10px;font-size:12px}.agent-screen[data-v-25939364]{background:#fff;flex-direction:column;flex:1;height:auto;min-height:0;display:flex}.agent-body[data-v-25939364]{flex:1;display:flex;overflow:hidden}.conv-sidebar[data-v-25939364]{background:#fff;border-right:1px solid #e5eaf2;flex-direction:column;flex-shrink:0;width:240px;padding:14px 12px;transition:width .2s;display:flex;overflow:hidden}.conv-sidebar.collapsed[data-v-25939364]{width:48px;padding:14px 8px}.collapse-btn[data-v-25939364]{cursor:pointer;color:#64748b;background:#f8fafc;border:1px solid #e5eaf2;border-radius:8px;width:100%;margin-bottom:8px;padding:5px 0;font-size:13px}.collapse-btn[data-v-25939364]:hover{color:#2563eb;border-color:#bfdbfe}.new-btn[data-v-25939364]{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:9px;margin-bottom:8px;padding:9px 0;font-size:13px;font-weight:600}.new-btn[data-v-25939364]:hover{background:#1d4ed8}.conv-list[data-v-25939364]{flex:1;overflow-y:auto}.conv-item[data-v-25939364]{cursor:pointer;border-radius:8px;align-items:center;gap:6px;margin-bottom:2px;padding:9px 10px;display:flex}.conv-item[data-v-25939364]:hover{background:#f1f5f9}.conv-item.active[data-v-25939364]{background:#eff6ff}.conv-title[data-v-25939364]{color:#334155;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.conv-item.active .conv-title[data-v-25939364]{color:#2563eb;font-weight:600}.conv-del[data-v-25939364]{opacity:0;font-size:12px}.conv-item:hover .conv-del[data-v-25939364]{opacity:1}.agent-chat[data-v-25939364]{background:#f8fafc;flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-body[data-v-25939364]{flex:1;padding:32px 28px;overflow-y:auto}.chat-empty[data-v-25939364]{text-align:center;color:#94a3b8;padding:60px 20px}.empty-icon[data-v-25939364]{margin-bottom:12px;font-size:48px}.empty-title[data-v-25939364]{color:#0f172a;margin-bottom:6px;font-size:22px;font-weight:700}.empty-desc[data-v-25939364]{margin-bottom:20px;font-size:13px}.empty-hints[data-v-25939364]{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.hint-chip[data-v-25939364]{color:#2563eb;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:20px;padding:7px 14px;font-size:12px}.hint-chip[data-v-25939364]:hover{background:#dbeafe}.msg[data-v-25939364]{margin-bottom:14px;display:flex}.msg.user[data-v-25939364]{justify-content:flex-end}.msg.assistant[data-v-25939364]{justify-content:flex-start}.msg-bubble[data-v-25939364]{white-space:pre-wrap;word-break:break-word;border-radius:14px;max-width:80%;padding:11px 15px;font-size:14px;line-height:1.65}.msg.user .msg-bubble[data-v-25939364]{color:#fff;background:#2563eb;border-bottom-right-radius:4px}.msg.assistant .msg-bubble[data-v-25939364]{color:#334155;background:#fff;border:1px solid #e8ecf1;border-bottom-left-radius:4px}.msg-bubble.thinking[data-v-25939364]{padding:14px 18px}.steps[data-v-25939364]{flex-direction:column;gap:4px;margin-bottom:8px;font-size:12.5px;display:flex}.step[data-v-25939364]{color:#64748b;align-items:baseline;gap:6px;display:flex}.step-icon[data-v-25939364]{text-align:center;flex-shrink:0;width:13px;font-size:11px}.step-run .step-icon[data-v-25939364]{color:#2563eb;animation:1.1s ease-in-out infinite pulse-25939364}.step-ok .step-icon[data-v-25939364]{color:#059669}.step-fail .step-icon[data-v-25939364]{color:#dc2626}.step-wait .step-icon[data-v-25939364]{color:#c2410c}.step-text[data-v-25939364]{color:#334155}.step-detail[data-v-25939364]{color:#94a3b8;font-size:11.5px}@keyframes pulse-25939364{0%,to{opacity:.25}50%{opacity:1}}.msg-imgs[data-v-25939364]{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.msg-thumb[data-v-25939364]{object-fit:cover;border-radius:10px;width:84px;height:84px;display:block}.msg.user .msg-thumb[data-v-25939364]{border:2px solid #ffffff59}.dot[data-v-25939364]{background:#94a3b8;border-radius:50%;width:6px;height:6px;margin-right:3px;animation:1.4s infinite blink-25939364;display:inline-block}.dot[data-v-25939364]:nth-child(2){animation-delay:.2s}.dot[data-v-25939364]:nth-child(3){animation-delay:.4s}@keyframes blink-25939364{0%,80%,to{opacity:.2}40%{opacity:1}}.chat-input[data-v-25939364]{background:#fff;border-top:1px solid #e8ecf1;flex-shrink:0;padding:12px 28px 18px}.attach-preview[data-v-25939364]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.thumb-wrap[data-v-25939364]{position:relative}.thumb[data-v-25939364]{object-fit:cover;background:#f1f5f9;border:1px solid #e5eaf2;border-radius:8px;width:56px;height:56px;display:block}.thumb-del[data-v-25939364]{color:#fff;cursor:pointer;background:#334155;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;padding:0;font-size:12px;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.thumb-del[data-v-25939364]:hover{background:#ef4444}.report-chip[data-v-25939364]{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:inline-flex}.report-del[data-v-25939364]{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:50%;width:16px;height:16px;padding:0;font-size:11px;line-height:1}.report-del[data-v-25939364]:hover{background:#ef4444}.file-chip[data-v-25939364]{color:#475569;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:inline-flex}.chip-x[data-v-25939364]{cursor:pointer;color:#94a3b8;background:0 0;border:0}.msg-files[data-v-25939364]{flex-wrap:wrap;margin-top:6px;display:flex}.dl-chip[data-v-25939364]{color:#3730a3;cursor:pointer;background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;align-items:center;gap:6px;margin:6px 6px 0 0;padding:6px 10px;font-size:13px;display:inline-flex}.input-row[data-v-25939364]{align-items:flex-end;gap:10px;display:flex}.attach-btn[data-v-25939364]{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5eaf2;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:all .15s;display:inline-flex}.attach-btn[data-v-25939364]:hover{color:#2563eb;background:#eff6ff;border-color:#2563eb}.confirm-bar[data-v-25939364]{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;padding:8px 14px;display:flex}.confirm-text[data-v-25939364]{color:#c2410c;font-size:13px;font-weight:600}.confirm-keys[data-v-25939364]{color:#9a3412;font-size:12px}.confirm-btn[data-v-25939364],.refuse-btn[data-v-25939364]{cursor:pointer;border:none;border-radius:8px;padding:5px 14px;font-size:13px;font-weight:600}.confirm-btn[data-v-25939364]{color:#fff;background:#2563eb}.confirm-btn[data-v-25939364]:hover{background:#1d4ed8}.confirm-btn[data-v-25939364]:disabled,.refuse-btn[data-v-25939364]:disabled{opacity:.5;cursor:not-allowed}.refuse-btn[data-v-25939364]{color:#64748b;background:#fff;border:1px solid #e5eaf2}.refuse-btn[data-v-25939364]:hover{color:#334155;border-color:#cbd5e1}.input-box[data-v-25939364]{resize:none;background:#fff;border:1px solid #e5eaf2;border-radius:12px;outline:none;flex:1;max-height:120px;padding:11px 16px;font-family:inherit;font-size:14px}.input-box[data-v-25939364]:focus{border-color:#2563eb}.send-btn[data-v-25939364]{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:12px;padding:10px 26px;font-size:14px;font-weight:600}.send-btn[data-v-25939364]:hover{background:#1d4ed8}.send-btn[data-v-25939364]:disabled{opacity:.5;cursor:not-allowed}.page-title[data-v-0de04644]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-0de04644]{color:#888;margin-bottom:24px}.head[data-v-0de04644]{justify-content:space-between;align-items:flex-start;display:flex}.panel[data-v-0de04644]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;overflow:hidden}.ptable[data-v-0de04644]{border-collapse:collapse;width:100%;font-size:13px}.ptable th[data-v-0de04644]{text-align:left;color:#64748b;white-space:nowrap;background:#fafbfc;border-bottom:1px solid #eef0f3;padding:12px 14px;font-weight:600}.ptable td[data-v-0de04644]{vertical-align:top;border-bottom:1px solid #f5f6f8;padding:12px 14px}.code[data-v-0de04644]{color:#2563eb;white-space:nowrap;font-weight:700}.features[data-v-0de04644]{white-space:pre-line;color:#475569;max-width:280px}.ops[data-v-0de04644]{white-space:nowrap}.empty[data-v-0de04644]{text-align:center;color:#94a3b8;padding:32px}.btn[data-v-0de04644]{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 22px;font-size:14px;font-weight:600}.btn[data-v-0de04644]:hover{background:#1d4ed8}.btn-small[data-v-0de04644]{cursor:pointer;background:#f0f2f5;border:1px solid #ddd;border-radius:6px;margin-right:4px;padding:5px 10px;font-size:12px}.btn-small.danger[data-v-0de04644]:hover{color:#dc2626;background:#fef2f2;border-color:#fecaca}.btn-ghost[data-v-0de04644]{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;padding:10px 22px;font-size:14px}.modal-mask[data-v-0de04644]{z-index:200;background:#0f172a66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-0de04644]{background:#fff;border-radius:16px;width:640px;max-height:90vh;padding:28px;overflow-y:auto;box-shadow:0 20px 60px #0003}.modal h3[data-v-0de04644]{margin-bottom:20px;font-size:18px}.form-grid[data-v-0de04644]{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-group.full[data-v-0de04644]{grid-column:1/-1}.form-group label[data-v-0de04644]{color:#555;margin-bottom:5px;font-size:13px;font-weight:600;display:block}.input[data-v-0de04644],.textarea[data-v-0de04644]{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:9px 12px;font-size:14px}.textarea[data-v-0de04644]{resize:vertical;font-family:inherit}.input[data-v-0de04644]:focus,.textarea[data-v-0de04644]:focus{border-color:#2563eb}.error[data-v-0de04644]{color:#dc2626;margin-top:12px;font-size:13px}.modal-actions[data-v-0de04644]{gap:10px;margin-top:20px;display:flex}.page-title[data-v-d529d9f1]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-d529d9f1]{color:#888;margin-bottom:20px}.search-bar[data-v-d529d9f1]{max-width:420px;margin-bottom:16px}.input[data-v-d529d9f1]{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:14px}.input[data-v-d529d9f1]:focus{border-color:#2563eb}.split[data-v-d529d9f1]{align-items:flex-start;gap:20px;display:flex}.product-list[data-v-d529d9f1]{background:#fff;border:1px solid #e5eaf2;border-radius:12px;flex-shrink:0;width:260px;max-height:70vh;padding:10px;overflow-y:auto}.p-item[data-v-d529d9f1]{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}.p-item[data-v-d529d9f1]:hover{background:#f1f5f9}.p-item.active[data-v-d529d9f1]{background:#eff6ff}.p-code[data-v-d529d9f1]{color:#2563eb;white-space:nowrap;font-weight:700}.p-name[data-v-d529d9f1]{color:#475569;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.empty[data-v-d529d9f1]{text-align:center;color:#94a3b8;padding:24px;font-size:13px}.detail[data-v-d529d9f1]{flex:1}.detail-head[data-v-d529d9f1]{align-items:center;gap:12px;margin-bottom:16px;display:flex}.dh-code[data-v-d529d9f1]{color:#2563eb;font-size:16px;font-weight:700}.dh-name[data-v-d529d9f1]{font-size:15px;font-weight:600}.dh-count[data-v-d529d9f1]{color:#94a3b8;background:#f1f5f9;border-radius:12px;padding:3px 10px;font-size:12px}.empty2[data-v-d529d9f1]{text-align:center;color:#94a3b8;background:#fff;border:1px dashed #dbe2ee;border-radius:12px;padding:40px}.l-card[data-v-d529d9f1]{background:#fff;border:1px solid #e5eaf2;border-radius:12px;margin-bottom:12px;padding:16px}.l-time[data-v-d529d9f1]{color:#94a3b8;margin-bottom:6px;font-size:12px}.l-head[data-v-d529d9f1]{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.l-del[data-v-d529d9f1]{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:3px 10px;font-size:12px}.l-del[data-v-d529d9f1]:hover{background:#fee2e2}.l-field[data-v-d529d9f1]{margin-bottom:10px}.l-label[data-v-d529d9f1]{color:#2563eb;margin-bottom:3px;font-size:12px;font-weight:600}.l-content[data-v-d529d9f1]{color:#475569;white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.6}.l-title[data-v-d529d9f1]{color:#0f172a;margin-bottom:8px;font-size:14px;font-weight:700}.l-kw[data-v-d529d9f1]{color:#2563eb;margin-bottom:8px;font-size:12px}.l-desc[data-v-d529d9f1]{color:#475569;white-space:pre-wrap;max-height:120px;font-size:13px;line-height:1.6;overflow-y:auto}.page-title[data-v-1f3a9538]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-1f3a9538]{color:#888;margin-bottom:20px}.search-bar[data-v-1f3a9538]{max-width:420px;margin-bottom:16px}.input[data-v-1f3a9538]{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:14px}.input[data-v-1f3a9538]:focus{border-color:#2563eb}.split[data-v-1f3a9538]{align-items:flex-start;gap:20px;display:flex}.product-list[data-v-1f3a9538]{background:#fff;border:1px solid #e5eaf2;border-radius:12px;flex-shrink:0;width:260px;max-height:70vh;padding:10px;overflow-y:auto}.p-item[data-v-1f3a9538]{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}.p-item[data-v-1f3a9538]:hover{background:#f1f5f9}.p-item.active[data-v-1f3a9538]{background:#eff6ff}.p-code[data-v-1f3a9538]{color:#2563eb;white-space:nowrap;font-weight:700}.p-name[data-v-1f3a9538]{color:#475569;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.p-count[data-v-1f3a9538]{color:#2563eb;background:#eff6ff;border-radius:10px;padding:1px 7px;font-size:11px}.empty[data-v-1f3a9538]{text-align:center;color:#94a3b8;padding:24px;font-size:13px}.detail[data-v-1f3a9538]{flex:1}.detail-head[data-v-1f3a9538]{align-items:center;gap:12px;margin-bottom:16px;display:flex}.dh-code[data-v-1f3a9538]{color:#2563eb;font-size:16px;font-weight:700}.dh-name[data-v-1f3a9538]{font-size:15px;font-weight:600}.dh-count[data-v-1f3a9538]{color:#94a3b8;background:#f1f5f9;border-radius:12px;padding:3px 10px;font-size:12px}.empty2[data-v-1f3a9538]{text-align:center;color:#94a3b8;background:#fff;border:1px dashed #dbe2ee;border-radius:12px;padding:40px}.upload-box[data-v-1f3a9538]{text-align:center;background:#eff6ff;border:1px dashed #bfdbfe;border-radius:12px;margin-bottom:16px;padding:18px}.upload-btn[data-v-1f3a9538]{color:#fff;cursor:pointer;background:#2563eb;border-radius:8px;padding:10px 22px;font-size:14px;font-weight:600;display:inline-block}.upload-btn[data-v-1f3a9538]:hover{background:#1d4ed8}.save-all-btn[data-v-1f3a9538]{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #2563eb;border-radius:8px;margin-left:10px;padding:10px 18px;font-size:14px;font-weight:600}.save-all-btn[data-v-1f3a9538]:hover{background:#eff6ff}.save-all-btn[data-v-1f3a9538]:disabled{opacity:.5;cursor:not-allowed}.up-tip[data-v-1f3a9538]{color:#2563eb;margin-top:8px;font-size:13px}.img-wall[data-v-1f3a9538]{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.img-card[data-v-1f3a9538]{background:#fff;border:1px solid #e5eaf2;border-radius:10px;overflow:hidden}.thumb[data-v-1f3a9538]{object-fit:cover;cursor:zoom-in;width:100%;height:200px;display:block}.img-info[data-v-1f3a9538]{padding:8px 10px}.img-name[data-v-1f3a9538]{color:#475569;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.img-time[data-v-1f3a9538]{color:#94a3b8;font-size:11px}.img-ops[data-v-1f3a9538]{gap:6px;padding:0 10px 10px;display:flex}.op-btn[data-v-1f3a9538]{cursor:pointer;background:#fff;border:1px solid #e5eaf2;border-radius:6px;flex:1;padding:6px 0;font-size:12px}.op-btn.save[data-v-1f3a9538]:hover{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.op-btn.del[data-v-1f3a9538]:hover{color:#dc2626;background:#fef2f2;border-color:#fecaca}.viewer-mask[data-v-1f3a9538]{z-index:300;background:#0f172ad9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.viewer-box[data-v-1f3a9538]{background:#fff;border-radius:12px;flex-direction:column;max-width:90vw;max-height:90vh;padding:16px;display:flex}.viewer-img[data-v-1f3a9538]{object-fit:contain;border-radius:8px;max-width:80vw;max-height:75vh}.viewer-info[data-v-1f3a9538]{color:#475569;align-items:center;gap:10px;margin-top:12px;font-size:13px;display:flex}.viewer-info span[data-v-1f3a9538]{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.close-btn[data-v-1f3a9538]{cursor:pointer;background:#f1f5f9;border:1px solid #e5eaf2;border-radius:8px;padding:8px 14px;font-size:13px}.close-btn[data-v-1f3a9538]:hover{background:#e2e8f0}.product-select[data-v-01d853dd]{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-bottom:20px;padding:14px 16px}.product-select label[data-v-01d853dd]{color:#1e40af;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.input[data-v-01d853dd]{box-sizing:border-box;border:1px solid #bfdbfe;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:14px}.input[data-v-01d853dd]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.hint[data-v-01d853dd]{color:#64748b;margin-top:6px;font-size:12px}.page-title[data-v-25b3670d]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-25b3670d]{color:#888;margin-bottom:24px}.panel[data-v-25b3670d]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;margin-bottom:20px}.panel-header[data-v-25b3670d]{border-bottom:1px solid #e8ecf1;justify-content:space-between;align-items:center;padding:16px 20px;font-weight:600;display:flex}.panel-header .btn-small[data-v-25b3670d]{margin-left:8px}.panel-body[data-v-25b3670d]{padding:20px}.row[data-v-25b3670d]{gap:16px;display:flex}.row .form-group[data-v-25b3670d]{flex:1}.form-group.small[data-v-25b3670d]{flex:0 0 120px}.form-group.grow[data-v-25b3670d]{flex:2}.form-group[data-v-25b3670d]{margin-bottom:16px}.form-group label[data-v-25b3670d]{color:#555;margin-bottom:6px;font-size:14px;font-weight:600;display:block}.input[data-v-25b3670d],.textarea[data-v-25b3670d]{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:14px}.input[data-v-25b3670d]:focus,.textarea[data-v-25b3670d]:focus{border-color:#1a1a2e}.textarea[data-v-25b3670d]{resize:vertical;font-family:inherit}.btn[data-v-25b3670d]{color:#fff;cursor:pointer;background:#1a1a2e;border:none;border-radius:8px;padding:12px 32px;font-size:15px}.btn[data-v-25b3670d]:hover{background:#2a2a4e}.btn[data-v-25b3670d]:disabled{opacity:.5;cursor:not-allowed}.btn-small[data-v-25b3670d]{cursor:pointer;background:#f0f2f5;border:1px solid #ddd;border-radius:6px;padding:6px 14px;font-size:13px}.btn-small[data-v-25b3670d]:hover{background:#e4e6ea}.result-panel[data-v-25b3670d]{border-color:#1a1a2e}.result-section[data-v-25b3670d]{border-bottom:1px solid #f0f2f5;margin-bottom:16px;padding-bottom:16px}.result-label[data-v-25b3670d]{color:#1a1a2e;margin-bottom:6px;font-size:13px;font-weight:600}.result-content[data-v-25b3670d]{white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.6}.tags-wrap[data-v-25b3670d]{flex-wrap:wrap;gap:6px;display:flex}.tag-chip[data-v-25b3670d]{color:#1e40af;word-break:break-all;background:#eff6ff;border-radius:12px;padding:4px 10px;font-size:12px}.img-block[data-v-25b3670d]{background:#fafbfc;border:1px solid #eef0f3;border-radius:8px;margin-bottom:10px;padding:12px}.img-block-title[data-v-25b3670d]{color:#1a1a2e;margin-bottom:6px;font-size:13px;font-weight:600}.tab-bar[data-v-25b3670d]{background:#f0f2f5;border-radius:8px;gap:4px;width:fit-content;margin:16px 20px 0;padding:4px;display:flex}.tab[data-v-25b3670d]{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 20px;font-size:14px}.tab.active[data-v-25b3670d]{background:#fff;font-weight:600;box-shadow:0 1px 3px #0000001a}.page-title[data-v-7f07d74f]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-7f07d74f]{color:#888;margin-bottom:24px}.panel[data-v-7f07d74f]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;margin-bottom:20px}.panel-header[data-v-7f07d74f]{border-bottom:1px solid #e8ecf1;justify-content:space-between;align-items:center;padding:16px 20px;font-weight:600;display:flex}.panel-header .btn-small[data-v-7f07d74f]{margin-left:8px}.panel-body[data-v-7f07d74f]{padding:20px}.row[data-v-7f07d74f]{gap:16px;display:flex}.row .form-group[data-v-7f07d74f]{flex:1}.form-group.small[data-v-7f07d74f]{flex:0 0 120px}.form-group.grow[data-v-7f07d74f]{flex:2}.form-group[data-v-7f07d74f]{margin-bottom:16px}.form-group label[data-v-7f07d74f]{color:#555;margin-bottom:6px;font-size:14px;font-weight:600;display:block}.input[data-v-7f07d74f],.textarea[data-v-7f07d74f]{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:14px}.input[data-v-7f07d74f]:focus,.textarea[data-v-7f07d74f]:focus{border-color:#2563eb}.textarea[data-v-7f07d74f]{resize:vertical;font-family:inherit}.btn[data-v-7f07d74f]{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:12px 32px;font-size:15px;font-weight:600}.btn[data-v-7f07d74f]:hover{background:#1d4ed8}.btn[data-v-7f07d74f]:disabled{opacity:.5;cursor:not-allowed}.btn-small[data-v-7f07d74f]{cursor:pointer;background:#f0f2f5;border:1px solid #ddd;border-radius:6px;padding:6px 14px;font-size:13px}.btn-small[data-v-7f07d74f]:hover{background:#e4e6ea}.result-panel[data-v-7f07d74f]{border-color:#2563eb}.tab-bar[data-v-7f07d74f]{background:#f0f2f5;border-radius:8px;gap:4px;width:fit-content;margin:16px 20px 0;padding:4px;display:flex}.tab[data-v-7f07d74f]{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 20px;font-size:14px}.tab.active[data-v-7f07d74f]{background:#fff;font-weight:600;box-shadow:0 1px 3px #0000001a}.img-block[data-v-7f07d74f]{background:#fafbfc;border:1px solid #eef0f3;border-radius:8px;margin-bottom:10px;padding:12px}.img-block-title[data-v-7f07d74f]{color:#2563eb;margin-bottom:6px;font-size:13px;font-weight:600}.result-content[data-v-7f07d74f]{white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.6}.page-title[data-v-f0cf8f8f]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-f0cf8f8f]{color:#888;margin-bottom:24px}.panel[data-v-f0cf8f8f]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;margin-bottom:20px}.panel-header[data-v-f0cf8f8f]{border-bottom:1px solid #e8ecf1;justify-content:space-between;align-items:center;padding:16px 20px;font-weight:600;display:flex}.panel-body[data-v-f0cf8f8f]{padding:20px}.row[data-v-f0cf8f8f]{gap:16px;display:flex}.row .form-group[data-v-f0cf8f8f]{flex:1}.form-group.small[data-v-f0cf8f8f]{flex:0 0 120px}.form-group.grow[data-v-f0cf8f8f]{flex:2}.form-group[data-v-f0cf8f8f]{margin-bottom:16px}.form-group label[data-v-f0cf8f8f]{color:#555;margin-bottom:6px;font-size:14px;font-weight:600;display:block}.input[data-v-f0cf8f8f],.textarea[data-v-f0cf8f8f]{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:14px}.input[data-v-f0cf8f8f]:focus,.textarea[data-v-f0cf8f8f]:focus{border-color:#1a1a2e}.textarea[data-v-f0cf8f8f]{resize:vertical;font-family:inherit}.translate-hint[data-v-f0cf8f8f]{color:#888;margin-top:4px;font-size:12px}.btn[data-v-f0cf8f8f]{color:#fff;cursor:pointer;background:#1a1a2e;border:none;border-radius:8px;padding:12px 32px;font-size:15px}.btn[data-v-f0cf8f8f]:hover{background:#2a2a4e}.btn[data-v-f0cf8f8f]:disabled{opacity:.5;cursor:not-allowed}.btn-small[data-v-f0cf8f8f]{cursor:pointer;background:#f0f2f5;border:1px solid #ddd;border-radius:6px;padding:6px 14px;font-size:13px}.btn-small[data-v-f0cf8f8f]:hover{background:#e4e6ea}.result-panel[data-v-f0cf8f8f]{border-color:#1a1a2e}.result-section[data-v-f0cf8f8f]{border-bottom:1px solid #f0f2f5;margin-bottom:16px;padding-bottom:16px}.result-label[data-v-f0cf8f8f]{color:#1a1a2e;margin-bottom:8px;font-size:13px;font-weight:600}.copy-table[data-v-f0cf8f8f]{border-collapse:collapse;width:100%;font-size:14px}.copy-table td[data-v-f0cf8f8f]{border:1px solid #eef0f3;padding:8px 12px}.copy-table td[data-v-f0cf8f8f]:first-child{color:#555;background:#fafbfc;width:110px;font-weight:600}.prompt-box[data-v-f0cf8f8f]{color:#e8e8e8;white-space:pre-wrap;background:#1a1a2e;border-radius:10px;max-height:480px;padding:16px;font-family:Consolas,monospace;font-size:13px;line-height:1.7;overflow-y:auto}.page-title[data-v-3a9e50ff]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-3a9e50ff]{color:#888;margin-bottom:24px}.panel[data-v-3a9e50ff]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;margin-bottom:20px}.panel-header[data-v-3a9e50ff]{border-bottom:1px solid #e8ecf1;justify-content:space-between;align-items:center;padding:16px 20px;font-weight:600;display:flex}.panel-body[data-v-3a9e50ff]{padding:20px}.form-group[data-v-3a9e50ff]{margin-bottom:16px}.form-group label[data-v-3a9e50ff]{color:#555;margin-bottom:6px;font-size:14px;font-weight:600;display:block}.input[data-v-3a9e50ff],.textarea[data-v-3a9e50ff]{border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:14px}.input[data-v-3a9e50ff]:focus,.textarea[data-v-3a9e50ff]:focus{border-color:#1a1a2e}.textarea[data-v-3a9e50ff]{resize:vertical;font-family:inherit}.btn[data-v-3a9e50ff]{color:#fff;cursor:pointer;background:#1a1a2e;border:none;border-radius:8px;padding:12px 32px;font-size:15px}.btn[data-v-3a9e50ff]:hover{background:#2a2a4e}.btn[data-v-3a9e50ff]:disabled{opacity:.5;cursor:not-allowed}.btn-small[data-v-3a9e50ff]{cursor:pointer;background:#f0f2f5;border:1px solid #ddd;border-radius:6px;padding:6px 14px;font-size:13px}.btn-small[data-v-3a9e50ff]:hover{background:#e4e6ea}.result-panel[data-v-3a9e50ff]{border-color:#1a1a2e}.result-section[data-v-3a9e50ff]{border-bottom:1px solid #f0f2f5;margin-bottom:16px;padding-bottom:16px}.result-label[data-v-3a9e50ff]{color:#1a1a2e;margin-bottom:6px;font-size:13px;font-weight:600}.result-content[data-v-3a9e50ff]{white-space:pre-wrap;font-size:14px;line-height:1.6}.result-actions[data-v-3a9e50ff]{margin-top:12px}.page-title[data-v-ea9184e7]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-ea9184e7]{color:#888;margin-bottom:24px}.tab-bar[data-v-ea9184e7]{background:#f0f2f5;border-radius:8px;gap:4px;width:fit-content;margin-bottom:20px;padding:4px;display:flex}.tab[data-v-ea9184e7]{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 20px;font-size:14px}.tab.active[data-v-ea9184e7]{background:#fff;font-weight:600;box-shadow:0 1px 3px #0000001a}.empty[data-v-ea9184e7]{text-align:center;color:#888;padding:40px;font-size:14px}.link[data-v-ea9184e7]{color:#1a1a2e;font-weight:600}.history-card[data-v-ea9184e7]{background:#fff;border:1px solid #e8ecf1;border-radius:10px;margin-bottom:12px;overflow:hidden}.history-header[data-v-ea9184e7]{background:#fafbfc;border-bottom:1px solid #f0f2f5;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.history-product[data-v-ea9184e7]{font-size:14px;font-weight:600}.history-time[data-v-ea9184e7]{color:#aaa;font-size:12px}.history-body[data-v-ea9184e7]{padding:12px 16px}.history-field[data-v-ea9184e7]{margin-bottom:4px;font-size:13px;line-height:1.6}.login-page[data-v-799cd28d]{background:linear-gradient(160deg,#f8fafc 0%,#eff6ff 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card[data-v-799cd28d]{background:#fff;border:1px solid #e5eaf2;border-radius:16px;width:380px;padding:40px 36px;box-shadow:0 12px 40px #0f172a14}.brand[data-v-799cd28d]{justify-content:center;align-items:center;gap:10px;margin-bottom:28px;display:flex}.brand-icon[data-v-799cd28d]{color:#fff;background:linear-gradient(135deg,#2563eb,#3b82f6);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex;box-shadow:0 2px 10px #2563eb4d}.brand-name[data-v-799cd28d]{color:#0f172a;font-size:19px;font-weight:700}.tabs[data-v-799cd28d]{background:#f1f5f9;border-radius:10px;gap:4px;margin-bottom:24px;padding:4px;display:flex}.tab[data-v-799cd28d]{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:8px;flex:1;padding:9px 0;font-size:14px}.tab.active[data-v-799cd28d]{color:#2563eb;background:#fff;font-weight:600;box-shadow:0 1px 3px #0000000f}.form[data-v-799cd28d]{flex-direction:column;gap:14px;display:flex}.input[data-v-799cd28d]{box-sizing:border-box;background:#f8fafc;border:1px solid #e5eaf2;border-radius:10px;outline:none;width:100%;padding:12px 14px;font-size:14px}.input[data-v-799cd28d]:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.btn[data-v-799cd28d]{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;margin-top:6px;padding:12px 0;font-size:15px;font-weight:600;transition:all .2s}.btn[data-v-799cd28d]:hover{background:#1d4ed8}.btn[data-v-799cd28d]:disabled{opacity:.5;cursor:not-allowed}.error[data-v-799cd28d]{color:#dc2626;text-align:center;margin-top:14px;font-size:13px}.page-title[data-v-f83b18d9]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-f83b18d9]{color:#888;margin-bottom:24px}.stat-card[data-v-f83b18d9]{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-bottom:20px;padding:20px 24px;display:inline-block}.stat-num[data-v-f83b18d9]{color:#2563eb;font-size:36px;font-weight:700}.stat-label[data-v-f83b18d9]{color:#64748b;margin-top:4px;font-size:13px}.panel[data-v-f83b18d9]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;overflow:hidden}.user-table[data-v-f83b18d9]{border-collapse:collapse;width:100%;font-size:14px}.user-table th[data-v-f83b18d9]{text-align:left;color:#64748b;background:#fafbfc;border-bottom:1px solid #eef0f3;padding:12px 16px;font-weight:600}.user-table td[data-v-f83b18d9]{border-bottom:1px solid #f5f6f8;padding:12px 16px}.role-tag[data-v-f83b18d9]{border-radius:10px;padding:2px 10px;font-size:12px}.role-tag.internal[data-v-f83b18d9]{color:#2563eb;background:#eff6ff}.role-tag.customer[data-v-f83b18d9]{color:#64748b;background:#f1f5f9}.empty[data-v-f83b18d9]{text-align:center;color:#94a3b8;padding:24px}.page-title[data-v-f9a35d88]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-f9a35d88]{color:#888;margin-bottom:20px}.toolbar[data-v-f9a35d88]{align-items:center;gap:12px;margin-bottom:16px;display:flex}.filter[data-v-f9a35d88]{color:#0f172a;background:#fff;border:1px solid #e5eaf2;border-radius:8px;outline:none;padding:8px 12px;font-size:13px}.btn-refresh[data-v-f9a35d88]{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600}.btn-refresh[data-v-f9a35d88]:hover{background:#1d4ed8}.error[data-v-f9a35d88]{color:#dc2626;margin-bottom:12px}.panel[data-v-f9a35d88]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;overflow:hidden}.ops-table[data-v-f9a35d88]{border-collapse:collapse;width:100%;font-size:13px}.ops-table th[data-v-f9a35d88]{text-align:left;color:#64748b;white-space:nowrap;background:#fafbfc;border-bottom:1px solid #eef0f3;padding:12px 14px;font-weight:600}.ops-table td[data-v-f9a35d88]{vertical-align:top;border-bottom:1px solid #f5f6f8;padding:12px 14px}.mono[data-v-f9a35d88]{color:#475569;font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.summary[data-v-f9a35d88]{word-break:break-all;max-width:260px}.op-id[data-v-f9a35d88]{color:#2563eb;white-space:nowrap;font-weight:600}.time[data-v-f9a35d88]{color:#94a3b8;white-space:nowrap;font-size:12px}.muted[data-v-f9a35d88]{color:#cbd5e1}.st[data-v-f9a35d88]{white-space:nowrap;border-radius:10px;padding:2px 10px;font-size:12px}.st.pending[data-v-f9a35d88]{color:#2563eb;background:#eff6ff}.st.confirmed[data-v-f9a35d88]{color:#6366f1;background:#eef2ff}.st.executing[data-v-f9a35d88]{color:#ea580c;background:#fff7ed}.st.done[data-v-f9a35d88]{color:#059669;background:#ecfdf5}.st.failed[data-v-f9a35d88]{color:#dc2626;background:#fef2f2}.st.rolled_back[data-v-f9a35d88]{color:#64748b;background:#f1f5f9}.st.expired[data-v-f9a35d88]{color:#b45309;background:#fff7ed}.btn-undo[data-v-f9a35d88]{color:#dc2626;cursor:pointer;background:#fff;border:1px solid #fca5a5;border-radius:8px;padding:5px 12px;font-size:12px;font-weight:600}.btn-undo[data-v-f9a35d88]:hover{background:#fef2f2}.empty[data-v-f9a35d88]{text-align:center;color:#94a3b8;padding:28px}.page-hint[data-v-f9a35d88]{color:#94a3b8;padding:10px 14px;font-size:12px}.page-title[data-v-05a8bef3]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-05a8bef3]{color:#888;margin-bottom:20px}.rate-bar[data-v-05a8bef3]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 16px;font-size:14px;display:flex}.rate-bar b[data-v-05a8bef3]{color:#2563eb}.rate-input[data-v-05a8bef3]{width:110px}.save-tpl[data-v-05a8bef3]{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.save-tpl[data-v-05a8bef3]:hover{background:#dbeafe}.tpl-tip[data-v-05a8bef3]{color:#059669;font-size:12px;font-weight:600}.split[data-v-05a8bef3]{align-items:flex-start;gap:20px;display:flex}.input-panel[data-v-05a8bef3]{flex:1.1}.result-panel[data-v-05a8bef3]{flex:1;position:sticky;top:88px}.panel[data-v-05a8bef3]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;overflow:hidden}.panel-header[data-v-05a8bef3]{border-bottom:1px solid #eef0f3;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;font-size:15px;font-weight:700;display:flex}.panel-body[data-v-05a8bef3]{padding:16px 18px}.rate-tag[data-v-05a8bef3]{color:#2563eb;background:#eff6ff;border-radius:12px;padding:3px 10px;font-size:12px;font-weight:600}.form-group[data-v-05a8bef3]{margin-bottom:14px}.form-group label[data-v-05a8bef3]{color:#555;margin-bottom:5px;font-size:13px;font-weight:600;display:block}.form-group.small label[data-v-05a8bef3]{font-size:12px}.row[data-v-05a8bef3]{gap:10px;display:flex}.row .form-group[data-v-05a8bef3]{flex:1;min-width:0;margin-bottom:10px}.input[data-v-05a8bef3]{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:9px 12px;font-size:14px}.input[data-v-05a8bef3]:focus{border-color:#2563eb}.input.gray[data-v-05a8bef3]{color:#94a3b8;cursor:not-allowed;background:#f5f6f8}select.input[data-v-05a8bef3]{background-color:#fff}.btn-small[data-v-05a8bef3]{color:#2563eb;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .15s}.btn-small[data-v-05a8bef3]:hover{background:#dbeafe}.result-card[data-v-05a8bef3]{background:#fafbfc;border:1px solid #eef0f3;border-radius:12px;margin-bottom:12px;padding:16px}.result-card.highlight[data-v-05a8bef3]{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #bfdbfe;box-shadow:0 2px 10px #2563eb14}.rc-label[data-v-05a8bef3]{color:#475569;margin-bottom:6px;font-size:13px;font-weight:600}.result-card.highlight .rc-label[data-v-05a8bef3]{color:#1d4ed8}.rc-value[data-v-05a8bef3]{color:#0f172a;font-size:26px;font-weight:800}.result-card.highlight .rc-value[data-v-05a8bef3]{color:#2563eb}.rc-sub[data-v-05a8bef3]{color:#64748b;margin-top:6px;font-size:12px;line-height:1.5}.health-green[data-v-05a8bef3]{color:#16a34a;font-weight:700}.health-blue[data-v-05a8bef3]{color:#2563eb;font-weight:700}.health-orange[data-v-05a8bef3]{color:#ea580c;font-weight:700}.health-red[data-v-05a8bef3]{color:#dc2626;font-weight:700}.result-warn[data-v-05a8bef3]{color:#dc2626;text-align:center;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;padding:22px 16px;font-size:14px;font-weight:600;line-height:1.6}.row.quick[data-v-05a8bef3]{flex-wrap:wrap;margin-top:6px}.chip[data-v-05a8bef3]{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}@media (width<=960px){.split[data-v-05a8bef3]{flex-direction:column}.result-panel[data-v-05a8bef3]{position:static}}.page-title[data-v-6e96fef2]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-6e96fef2]{color:#888;margin-bottom:20px}.rate-bar[data-v-6e96fef2]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 16px;font-size:14px;display:flex}.rate-bar b[data-v-6e96fef2]{color:#2563eb}.rate-input[data-v-6e96fef2]{width:110px}.rate-bar .hint[data-v-6e96fef2]{color:#94a3b8;font-size:12px}.panel[data-v-6e96fef2]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;overflow:hidden}.panel-header[data-v-6e96fef2]{border-bottom:1px solid #eef0f3;padding:14px 18px;font-size:15px;font-weight:700}.panel-body[data-v-6e96fef2]{padding:16px 18px}.input[data-v-6e96fef2]{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:9px 12px;font-size:14px}.input[data-v-6e96fef2]:focus{border-color:#2563eb}select.input[data-v-6e96fef2]{background-color:#fff}.b-table[data-v-6e96fef2]{border-collapse:collapse;width:100%;font-size:13px}.b-table th[data-v-6e96fef2],.b-table td[data-v-6e96fef2]{text-align:center;white-space:nowrap;border:1px solid #e8ecf1;padding:6px 8px}.b-table th[data-v-6e96fef2]{color:#475569;background:#f8fafc;font-weight:700}.b-table td[data-v-6e96fef2]:first-child{color:#94a3b8;font-weight:600}.b-input[data-v-6e96fef2]{width:90px;padding:6px 8px}.name-input[data-v-6e96fef2]{width:120px}.cat-input[data-v-6e96fef2]{width:150px;font-size:12px}.health-green[data-v-6e96fef2]{color:#16a34a;font-weight:700}.health-blue[data-v-6e96fef2]{color:#2563eb;font-weight:700}.health-orange[data-v-6e96fef2]{color:#ea580c;font-weight:700}.health-red[data-v-6e96fef2]{color:#dc2626;font-weight:700}@media (width<=960px){.b-table[data-v-6e96fef2]{font-size:12px}.b-table th[data-v-6e96fef2],.b-table td[data-v-6e96fef2]{padding:4px 6px}}.page-title[data-v-0736b21b]{margin-bottom:8px;font-size:24px;font-weight:700}.page-desc[data-v-0736b21b]{color:#888;margin-bottom:24px}.panel[data-v-0736b21b]{background:#fff;border:1px solid #e8ecf1;border-radius:12px;max-width:720px}.panel-body[data-v-0736b21b]{padding:24px}.form-group[data-v-0736b21b]{margin-bottom:16px}.form-group label[data-v-0736b21b]{color:#555;margin-bottom:6px;font-size:14px;font-weight:600;display:block}.input[data-v-0736b21b]{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:14px}.input[data-v-0736b21b]:focus{border-color:#2563eb}.product-name[data-v-0736b21b]{color:#059669;margin-top:6px;font-size:13px;font-weight:600}.upload-box[data-v-0736b21b]{text-align:center;background:#eff6ff;border:1px dashed #bfdbfe;border-radius:12px;margin-bottom:20px;padding:24px}.upload-btn[data-v-0736b21b]{color:#fff;cursor:pointer;background:#2563eb;border-radius:8px;padding:12px 26px;font-size:14px;font-weight:600;display:inline-block}.upload-btn[data-v-0736b21b]:hover{background:#1d4ed8}.file-count[data-v-0736b21b]{color:#2563eb;margin-top:10px;font-size:13px;font-weight:600;display:block}.btn[data-v-0736b21b]{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:12px 32px;font-size:15px;font-weight:600}.btn[data-v-0736b21b]:hover{background:#1d4ed8}.btn[data-v-0736b21b]:disabled{opacity:.5;cursor:not-allowed}.result-msg[data-v-0736b21b]{color:#dc2626;margin-top:16px;font-size:14px;font-weight:600}.result-msg.ok[data-v-0736b21b]{color:#059669}.view-link[data-v-0736b21b]{margin-top:10px}.link[data-v-0736b21b]{color:#2563eb;font-weight:600;text-decoration:none}.oz-calendar[data-v-2bc6e11e]{background:#fff;border:1px solid #e8ecf1;border-radius:14px;padding:20px}.cal-header[data-v-2bc6e11e]{align-items:center;gap:16px;margin-bottom:16px;display:flex}.cal-title[data-v-2bc6e11e]{color:#0f172a;font-size:17px;font-weight:700}.cal-nav[data-v-2bc6e11e]{align-items:center;gap:8px;display:flex}.nav-btn[data-v-2bc6e11e]{cursor:pointer;color:#475569;background:#fff;border:1px solid #e5eaf2;border-radius:8px;width:30px;height:30px;font-size:16px;line-height:1}.nav-btn[data-v-2bc6e11e]:hover{color:#2563eb;border-color:#2563eb}.cal-month[data-v-2bc6e11e]{color:#2563eb;text-align:center;min-width:110px;font-size:16px;font-weight:700}.cal-total[data-v-2bc6e11e]{color:#94a3b8;font-size:12px}.cal-grid[data-v-2bc6e11e]{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.cal-weekhead[data-v-2bc6e11e]{text-align:center;color:#64748b;padding:6px 0;font-size:12px;font-weight:600}.cal-cell[data-v-2bc6e11e]{aspect-ratio:1;color:#334155;cursor:default;border-radius:8px;justify-content:center;align-items:center;font-size:13px;transition:transform .1s;display:flex;position:relative}.cal-cell.empty[data-v-2bc6e11e]{background:0 0}.cal-cell.weekend[data-v-2bc6e11e]{color:#94a3b8;background:#f5f5f5}.cal-cell.festival[data-v-2bc6e11e]{color:#fff;cursor:pointer;font-weight:700}.cal-cell.festival[data-v-2bc6e11e]:hover{transform:scale(1.08)}.cal-legend[data-v-2bc6e11e]{border-top:1px solid #f0f2f5;flex-wrap:wrap;gap:14px;margin-top:14px;padding-top:14px;display:flex}.legend-item[data-v-2bc6e11e]{color:#64748b;align-items:center;gap:5px;font-size:12px;display:flex}.legend-color[data-v-2bc6e11e]{border-radius:4px;width:14px;height:14px;display:inline-block}.cal-modal-mask[data-v-2bc6e11e]{z-index:300;background:#0f172a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cal-modal[data-v-2bc6e11e]{background:#fff;border-radius:14px;width:380px;max-width:90vw;padding:22px;box-shadow:0 20px 60px #0003}.modal-head[data-v-2bc6e11e]{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.modal-level[data-v-2bc6e11e]{color:#fff;border-radius:10px;padding:3px 10px;font-size:12px;font-weight:600}.modal-close[data-v-2bc6e11e]{cursor:pointer;color:#64748b;background:#f1f5f9;border:none;border-radius:6px;width:26px;height:26px}.modal-name[data-v-2bc6e11e]{color:#0f172a;font-size:19px;font-weight:700}.modal-ru[data-v-2bc6e11e]{color:#2563eb;margin:3px 0 6px;font-size:14px}.modal-date[data-v-2bc6e11e]{color:#94a3b8;margin-bottom:10px;font-size:12px}.modal-desc[data-v-2bc6e11e]{color:#475569;font-size:13px;line-height:1.7}.modal-tips[data-v-2bc6e11e]{color:#1e40af;background:#eff6ff;border-radius:10px;margin-top:12px;padding:12px;font-size:13px;line-height:1.7}.tips-label[data-v-2bc6e11e]{margin-bottom:4px;font-weight:700}.calendar-page[data-v-bd4446eb]{max-width:760px}.tools[data-v-9ba161c8]{max-width:900px;padding:24px}.tool-card[data-v-9ba161c8]{border:1px solid #e5e7eb;border-radius:10px;margin-bottom:12px;padding:14px 16px}.tool-head[data-v-9ba161c8]{justify-content:space-between;align-items:center;display:flex}.tool-name[data-v-9ba161c8]{font-size:16px;font-weight:600}.tool-ver[data-v-9ba161c8]{color:#6b7280;font-size:13px}.tool-desc[data-v-9ba161c8]{color:#374151;margin:6px 0}.tool-caps[data-v-9ba161c8]{flex-wrap:wrap;gap:6px;display:flex}.cap[data-v-9ba161c8]{color:#4338ca;background:#eef2ff;border-radius:999px;padding:2px 10px;font-size:12px}.tool-foot[data-v-9ba161c8]{justify-content:space-between;margin-top:10px;display:flex}.tool-time[data-v-9ba161c8]{color:#9ca3af;font-size:12px}.open[data-v-9ba161c8]{color:#2563eb;text-decoration:none}.empty[data-v-9ba161c8]{color:#6b7280;padding:24px 0}.error[data-v-9ba161c8]{color:#b91c1c;margin-bottom:12px}.tool-run[data-v-b71831c4]{flex-direction:column;height:calc(100vh - 64px);display:flex}.bar[data-v-b71831c4]{border-bottom:1px solid #e5e7eb;align-items:center;gap:10px;padding:10px 16px;display:flex}.title[data-v-b71831c4]{margin-left:8px;font-weight:600}.btn[data-v-b71831c4]{cursor:pointer;color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 12px;text-decoration:none}.btn.primary[data-v-b71831c4]{color:#fff;background:#2563eb;border-color:#2563eb}.notice[data-v-b71831c4]{color:#92400e;background:#fef3c7;padding:8px 16px}.error[data-v-b71831c4]{color:#991b1b;background:#fee2e2;padding:8px 16px}.confirm-bar[data-v-b71831c4]{background:#eff6ff;border-bottom:1px solid #bfdbfe;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.confirm-text[data-v-b71831c4]{color:#1e3a8a}.confirm-actions[data-v-b71831c4]{flex-shrink:0;gap:8px;display:flex}.frame[data-v-b71831c4]{background:#fff;border:0;flex:1;width:100%}
