.demo-wrapper[data-v-c7a71002]{display:flex;flex-direction:column;gap:24px}.card[data-v-c7a71002]{background:#fff;border-radius:12px;padding:28px;box-shadow:0 1px 3px #00000014}.card-header[data-v-c7a71002]{display:flex;align-items:center;gap:12px;margin-bottom:8px}.card-header h2[data-v-c7a71002]{font-size:18px;font-weight:600}.card-desc[data-v-c7a71002]{color:#888;font-size:13px;margin-bottom:20px;line-height:1.6}.badge[data-v-c7a71002]{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;color:#fff;white-space:nowrap}.badge-purple[data-v-c7a71002]{background:linear-gradient(135deg,#667eea,#764ba2)}.badge-blue[data-v-c7a71002]{background:linear-gradient(135deg,#4facfe,#00f2fe)}.badge-green[data-v-c7a71002]{background:linear-gradient(135deg,#43e97b,#38f9d7)}.badge-orange[data-v-c7a71002]{background:linear-gradient(135deg,#fa709a,#fee140)}.demo-row[data-v-c7a71002]{display:flex;align-items:center;gap:16px;margin-bottom:14px;flex-wrap:wrap}.config-row[data-v-c7a71002]{display:flex;align-items:center;gap:10px;margin-bottom:14px;font-size:14px;color:#666}.config-row select[data-v-c7a71002]{padding:6px 12px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px}.count-input[data-v-c7a71002]{width:60px;padding:6px 8px;border:1px solid #d9d9d9;border-radius:6px;font-size:14px;text-align:center}.row-label[data-v-c7a71002]{font-size:14px;color:#666;white-space:nowrap}.tip[data-v-c7a71002]{font-size:12px;color:#aaa}.tip.ms[data-v-c7a71002]{color:#999}.btn[data-v-c7a71002]{padding:10px 22px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;color:#fff}.btn[data-v-c7a71002]:active{transform:scale(.97)}.btn[data-v-c7a71002]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-c7a71002]{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-warning[data-v-c7a71002]{background:linear-gradient(135deg,#f093fb,#f5576c)}.btn-danger[data-v-c7a71002]{background:linear-gradient(135deg,#fa709a,#fee140);color:#333}.btn-success[data-v-c7a71002]{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#333}.btn-outline[data-v-c7a71002]{background:transparent;border:2px solid #d9d9d9;color:#666}.btn-sm[data-v-c7a71002]{padding:6px 14px;font-size:12px;margin-bottom:12px}.order-actions[data-v-c7a71002]{display:flex;gap:10px;margin-bottom:12px}.log-box[data-v-c7a71002]{background:#1e1e2e;border-radius:8px;padding:14px 16px;max-height:260px;overflow-y:auto;margin-top:6px}.log-title[data-v-c7a71002]{color:#a6adc8;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.log-header[data-v-c7a71002]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.log-clear-btn[data-v-c7a71002]{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#9399b2;padding:3px 10px;border-radius:4px;font-size:11px;cursor:pointer;transition:all .15s}.log-clear-btn[data-v-c7a71002]:hover{background:#f38ba826;border-color:#f38ba84d;color:#f38ba8}.log-item[data-v-c7a71002]{color:#cdd6f4;font-size:13px;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.04);font-family:SF Mono,Monaco,Consolas,monospace}.log-item.log-dup[data-v-c7a71002]{color:#f38ba8}.log-item.log-idempotent[data-v-c7a71002]{color:#f9e2af}.log-badge[data-v-c7a71002]{display:inline-block;width:28px;text-align:center}.log-empty[data-v-c7a71002]{color:#585b70;font-size:13px;font-style:italic}.arch-diagram[data-v-c7a71002]{background:#f8f9fc;border-radius:10px;padding:20px;margin-bottom:20px}.arch-flow[data-v-c7a71002]{display:flex;align-items:center;flex-wrap:wrap;gap:6px;justify-content:center}.arch-node[data-v-c7a71002]{background:#e8ecf1;padding:10px 16px;border-radius:8px;font-size:13px;font-weight:500;text-align:center;min-width:80px}.arch-node.highlight[data-v-c7a71002]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.arch-node small[data-v-c7a71002]{display:block;font-size:10px;opacity:.75;margin-top:2px}.arch-arrow[data-v-c7a71002]{color:#667eea;font-weight:700;font-size:18px}.feature-list[data-v-c7a71002]{list-style:none;padding:0}.feature-list li[data-v-c7a71002]{padding:10px 14px;margin-bottom:6px;background:#f8f9fc;border-radius:8px;font-size:13px;line-height:1.6}.feature-list code[data-v-c7a71002]{background:#fff;padding:2px 6px;border-radius:4px;font-size:12px;color:#667eea;border:1px solid #e8ecf1}.order-item[data-v-c7a71002]{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#f8f9fc;border-radius:8px;margin-bottom:8px;font-size:13px;flex-wrap:wrap}.order-id[data-v-c7a71002]{font-family:monospace;font-weight:600;color:#667eea;min-width:140px}.order-name[data-v-c7a71002]{flex:1}.order-amount[data-v-c7a71002]{font-weight:600;min-width:80px}.order-time[data-v-c7a71002]{color:#999;font-size:12px}.order-dup[data-v-c7a71002]{background:#fff5f5!important;border-left:3px solid #e53e3e;animation:dupPulse-c7a71002 .6s ease-in-out}@keyframes dupPulse-c7a71002{0%{background:#fed7d7}to{background:#fff5f5}}.dup-icon[data-v-c7a71002]{font-size:14px;flex-shrink:0}.dup-alert-badge[data-v-c7a71002]{background:#fff5f5;color:#c53030;border:1px solid #feb2b2;padding:3px 12px;border-radius:20px;font-size:12px;font-weight:600;animation:badgeShake-c7a71002 .4s ease-in-out}@keyframes badgeShake-c7a71002{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}.dup-ok-badge[data-v-c7a71002]{background:#f0fff4;color:#276749;border:1px solid #9ae6b4;padding:3px 12px;border-radius:20px;font-size:12px;font-weight:600}.tutorial-container[data-v-d885ddc7]{display:flex;gap:0;min-height:500px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:hidden}.tutorial-nav[data-v-d885ddc7]{width:180px;background:#f8f9fc;padding:24px 12px;display:flex;flex-direction:column;gap:4px;flex-shrink:0}.nav-step[data-v-d885ddc7]{display:flex;align-items:center;gap:10px;padding:10px 14px;border:none;background:transparent;border-radius:8px;cursor:pointer;font-size:14px;color:#666;transition:all .2s;text-align:left}.nav-step[data-v-d885ddc7]:hover{background:#eef0f7}.nav-step.active[data-v-d885ddc7]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.nav-step.active .step-num[data-v-d885ddc7]{background:#ffffff40;color:#fff}.nav-step.done[data-v-d885ddc7]{color:#43e97b}.nav-step.done .step-num[data-v-d885ddc7]{background:#43e97b;color:#fff}.step-num[data-v-d885ddc7]{width:24px;height:24px;border-radius:50%;background:#e0e4f0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#888;flex-shrink:0}.tutorial-body[data-v-d885ddc7]{flex:1;padding:32px;overflow-y:auto;max-height:80vh}.step-content h2[data-v-d885ddc7]{font-size:22px;color:#333;margin-bottom:6px}.step-content h3[data-v-d885ddc7]{font-size:17px;color:#444;margin:28px 0 14px;padding-bottom:8px;border-bottom:1px solid #eee}.step-content h4[data-v-d885ddc7]{font-size:15px;color:#555;margin:18px 0 10px}.step-intro[data-v-d885ddc7]{color:#888;font-size:14px;margin-bottom:24px;line-height:1.6}.arch-diagram[data-v-d885ddc7]{display:flex;flex-direction:column;gap:0;margin:24px 0}.arch-layer[data-v-d885ddc7]{padding:18px 20px;border-radius:8px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;position:relative}.layer-1[data-v-d885ddc7]{background:#e3f2fd;border-left:4px solid #2196f3}.layer-2[data-v-d885ddc7]{background:#e8f5e9;border-left:4px solid #4caf50}.layer-3[data-v-d885ddc7]{background:#fff3e0;border-left:4px solid #ff9800}.layer-4[data-v-d885ddc7]{background:#fce4ec;border-left:4px solid #e91e63}.layer-num[data-v-d885ddc7]{font-size:20px;font-weight:800;width:36px}.layer-1 .layer-num[data-v-d885ddc7]{color:#2196f3}.layer-2 .layer-num[data-v-d885ddc7]{color:#4caf50}.layer-3 .layer-num[data-v-d885ddc7]{color:#ff9800}.layer-4 .layer-num[data-v-d885ddc7]{color:#e91e63}.layer-title[data-v-d885ddc7]{font-weight:700;font-size:15px;color:#333;min-width:200px}.layer-desc[data-v-d885ddc7]{font-size:13px;color:#666;flex:1}.layer-cost[data-v-d885ddc7]{font-size:12px;color:#fff;background:#333;padding:4px 10px;border-radius:12px;white-space:nowrap}.arch-arrow-v[data-v-d885ddc7]{text-align:center;color:#aaa;font-size:12px;padding:4px 0 4px 40px}.principles-box[data-v-d885ddc7]{margin-top:24px;padding:18px 20px;background:#f8f9fc;border-radius:8px}.principles-box ul[data-v-d885ddc7]{margin-left:20px;margin-top:8px}.principles-box li[data-v-d885ddc7]{margin-bottom:6px;font-size:14px;color:#555;line-height:1.6}.code-block[data-v-d885ddc7]{margin:12px 0 20px;background:#1e1e2e;border-radius:8px;overflow:hidden}.code-block.mini[data-v-d885ddc7]{margin:8px 0}.code-header[data-v-d885ddc7]{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:#181825;color:#aaa;font-size:12px}.copy-btn[data-v-d885ddc7]{padding:4px 12px;border:1px solid #555;background:transparent;color:#aaa;border-radius:4px;cursor:pointer;font-size:12px;transition:all .2s}.copy-btn[data-v-d885ddc7]:hover{border-color:#667eea;color:#667eea}.code-block pre[data-v-d885ddc7]{padding:16px 20px;margin:0;overflow-x:auto}.code-block code[data-v-d885ddc7]{font-family:Fira Code,Consolas,monospace;font-size:13px;color:#cdd6f4;line-height:1.7;white-space:pre}.mode-card[data-v-d885ddc7]{margin:14px 0;padding:16px;background:#f8f9fc;border-radius:8px}.mode-card h4[data-v-d885ddc7]{margin-top:0}.file-box[data-v-d885ddc7]{margin-top:20px;padding:12px 16px;background:#fff8e1;border-radius:8px;border-left:4px solid #ffc107}.file-box code[data-v-d885ddc7]{background:transparent;color:#e65100;font-size:14px}.file-list[data-v-d885ddc7]{display:flex;flex-direction:column;gap:8px;margin:14px 0}.file-item[data-v-d885ddc7]{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f8f9fc;border-radius:8px}.file-icon[data-v-d885ddc7]{font-size:24px}.file-item strong[data-v-d885ddc7]{color:#333;font-size:14px}.file-item p[data-v-d885ddc7]{color:#888;font-size:12px;margin-top:2px}.file-item-download[data-v-d885ddc7]{display:flex;align-items:center;gap:10px;padding:10px 16px;background:#fff;border:1px solid #e0e4f0;border-radius:8px}.file-item-download.standalone[data-v-d885ddc7]{margin:14px 0}.download-btn[data-v-d885ddc7]{margin-left:auto;padding:6px 14px;background:linear-gradient(135deg,#43e97b,#38f9d7);color:#333;border-radius:6px;text-decoration:none;font-size:13px;font-weight:600;white-space:nowrap;transition:all .2s;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.download-btn[data-v-d885ddc7]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #43e97b4d}.download-hint[data-v-d885ddc7]{font-size:12px;color:#999;margin-left:auto}.auto-guard-flow[data-v-d885ddc7]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:16px;background:linear-gradient(135deg,#667eea11,#764ba211);border-radius:8px;margin:16px 0;font-size:13px}.flow-step[data-v-d885ddc7]{display:flex;align-items:center;gap:6px;background:#fff;padding:8px 12px;border-radius:6px;box-shadow:0 1px 2px #0000000f}.flow-step span[data-v-d885ddc7]{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.flow-arrow[data-v-d885ddc7]{color:#667eea;font-weight:700}.tip-box[data-v-d885ddc7]{padding:14px 18px;background:#e3f2fd;border-radius:8px;border-left:4px solid #2196f3;font-size:13px;color:#555;line-height:1.8;margin-top:20px}.tip-box code[data-v-d885ddc7]{background:#bbdefb;padding:2px 6px;border-radius:4px;font-size:12px;color:#1565c0}.verify-card[data-v-d885ddc7]{margin:16px 0;padding:18px;background:#f8f9fc;border-radius:8px}.verify-card h4[data-v-d885ddc7]{margin-top:0}.verify-card ul[data-v-d885ddc7]{margin-left:20px;margin-top:8px}.verify-card li[data-v-d885ddc7]{margin-bottom:6px;font-size:14px;color:#555}.verify-log[data-v-d885ddc7]{margin-top:10px;padding:12px 16px;background:#1e1e2e;border-radius:6px;font-family:Fira Code,monospace;font-size:13px}.log-line[data-v-d885ddc7]{margin-bottom:6px}.log-line.warn[data-v-d885ddc7]{color:#fab387}.log-line.info[data-v-d885ddc7]{color:#89b4fa}.faq-item[data-v-d885ddc7]{margin:16px 0;padding:18px;background:#f8f9fc;border-radius:8px}.faq-item h4[data-v-d885ddc7]{margin-top:0;color:#333}.faq-answer[data-v-d885ddc7]{margin-top:10px;font-size:14px;color:#555;line-height:1.7}.faq-answer ol[data-v-d885ddc7]{margin-left:20px}.faq-answer li[data-v-d885ddc7]{margin-bottom:4px}.faq-item>p[data-v-d885ddc7]{font-size:14px;color:#555;line-height:1.7}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f0f2f5;color:#333;min-height:100vh}.app-container{max-width:1000px;margin:0 auto;padding:40px 20px}.app-header{text-align:center;margin-bottom:40px}.app-header h1{font-size:32px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-header .subtitle{color:#666;margin-top:8px;font-size:14px}.view-nav{display:flex;justify-content:center;gap:8px;margin-top:18px}.nav-tab{padding:8px 24px;border:2px solid #e0e4f0;background:#fff;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s;color:#666}.nav-tab:hover{border-color:#667eea;color:#667eea}.nav-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent}.version-badge{display:inline-block;background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;margin-bottom:10px}.app-footer{margin-top:40px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014}.changelog-toggle{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s}.changelog-toggle:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.changelog-section{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #eee}.changelog-section h3{color:#333;margin-bottom:15px;font-size:16px}.changelog-content{font-size:14px;line-height:1.8;color:#555}.changelog-content h3{margin:20px 0 12px;font-size:15px;color:#333}.changelog-content h4{margin:16px 0 8px;font-size:14px;color:#667eea;font-weight:600}.changelog-content ul{margin-left:20px;margin-bottom:12px}.changelog-content li{margin-bottom:6px;list-style:disc}.changelog-content code{background:#f4f4f4;padding:2px 6px;border-radius:4px;font-size:13px;color:#667eea}.changelog-content hr{border:none;border-top:1px dashed #ddd;margin:20px 0}.version-tag{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#333;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600;margin-right:10px}.date-tag{color:#999;font-size:13px}
