.tool-header{text-align:center;margin-bottom:40px}.header-badge{display:flex;justify-content:center;gap:12px;margin-bottom:24px;flex-wrap:wrap}.badge{background:linear-gradient(135deg, #8b5cf6, #6d28d9);color:white;padding:6px 18px;border-radius:40px;font-size:0.75rem;font-weight:500;box-shadow:0 2px 8px rgba(0,0,0,0.1)}.tool-header h1{font-size:2.2rem;font-weight:800;background:linear-gradient(135deg, #1e293b, #8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:12px}.tool-header p{color:var(--gray-500);font-size:1rem}.core-stats{display:flex;justify-content:center;gap:24px;margin-bottom:32px;flex-wrap:wrap}.core-stat{background:white;border-radius:60px;padding:16px 28px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 15px rgba(0,0,0,0.05);border:1px solid var(--gray-200)}.core-stat-icon{width:48px;height:48px;background:linear-gradient(135deg, #ede9fe, #f3e8ff);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#8b5cf6;font-size:1.3rem}.core-stat-info{text-align:left}.core-stat-value{display:block;font-size:1.5rem;font-weight:700;color:var(--gray-800)}.core-stat-label{font-size:0.7rem;color:var(--gray-500)}.workflow-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding:12px 20px;background:var(--gray-50);border-radius:20px;margin-bottom:24px}.toolbar-group{display:flex;gap:8px;flex-wrap:wrap}.tool-btn{background:white;border:1px solid var(--gray-200);padding:8px 16px;border-radius:40px;cursor:pointer;transition:all 0.2s;font-size:0.8rem;display:inline-flex;align-items:center;gap:6px}.tool-btn:hover{background:var(--gray-100);border-color:#8b5cf6;color:#8b5cf6}.tool-btn-primary{background:linear-gradient(135deg, #8b5cf6, #6d28d9);border:none;padding:8px 20px;border-radius:40px;color:white;cursor:pointer;transition:all 0.2s;font-size:0.8rem;display:inline-flex;align-items:center;gap:6px}.tool-btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(139,92,246,0.4)}.zoom-level{font-size:0.8rem;min-width:50px;text-align:center;background:white;padding:6px 12px;border-radius:30px;border:1px solid var(--gray-200)}.workflow-layout{display:grid;grid-template-columns:280px 1fr 320px;gap:20px;min-height:550px;margin-bottom:24px}.node-library{background:var(--gray-50);border-radius:20px;padding:16px;overflow-y:auto;max-height:600px}.node-library h3{font-size:1rem;margin-bottom:16px;display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--gray-200)}.node-categories{display:flex;flex-direction:column;gap:16px}.category{border-bottom:1px solid var(--gray-200);padding-bottom:12px}.category-header{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 0;font-weight:500;font-size:0.85rem}.category-header i:last-child{margin-left:auto;transition:transform 0.2s}.category-header.collapsed+.category-items{display:none}.category-header.collapsed i:last-child{transform:rotate(-90deg)}.category-items{display:flex;flex-direction:column;gap:8px;margin-top:8px}.node-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:white;border-radius:12px;cursor:grab;transition:all 0.2s;border:1px solid var(--gray-200)}.node-item:hover{border-color:#8b5cf6;transform:translateX(4px);box-shadow:0 4px 12px rgba(0,0,0,0.05)}.node-item i{font-size:1.1rem;color:#8b5cf6}.node-item span{flex:1;font-size:0.85rem;font-weight:500}.node-item small{font-size:0.65rem;color:var(--gray-400)}.canvas-area{position:relative;background:#f8fafc;border-radius:20px;overflow:hidden;border:1px solid var(--gray-200)}.workflow-canvas{position:relative;width:100%;height:550px;overflow:auto;background:#fafcff;background-image:linear-gradient(#e2e8f0 1px, transparent 1px),linear-gradient(90deg, #e2e8f0 1px, transparent 1px);background-size:30px 30px}.canvas-svg{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.canvas-svg line{stroke:#cbd5e1;stroke-width:2;pointer-events:none}.canvas-nodes{position:relative;z-index:20}.canvas-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);text-align:center;color:var(--gray-400);pointer-events:none}.canvas-placeholder i{font-size:48px;margin-bottom:16px}.canvas-node{position:absolute;background:white;border-radius:16px;min-width:160px;box-shadow:0 4px 15px rgba(0,0,0,0.08);border:1px solid var(--gray-200);cursor:pointer;transition:all 0.2s;user-select:none}.canvas-node:hover{box-shadow:0 8px 25px rgba(0,0,0,0.12);border-color:#8b5cf6}.canvas-node.selected{border-color:#8b5cf6;box-shadow:0 0 0 2px rgba(139,92,246,0.3)}.node-header{display:flex;align-items:center;gap:8px;padding:12px 12px 8px;border-bottom:1px solid var(--gray-100)}.node-header i{font-size:1rem;color:#8b5cf6}.node-header span{font-weight:600;font-size:0.85rem}.node-body{padding:12px;font-size:0.7rem;color:var(--gray-500)}.node-ports{display:flex;justify-content:space-between;padding:8px 12px;border-top:1px solid var(--gray-100)}.node-port{width:12px;height:12px;border-radius:50%;background:#cbd5e1;cursor:crosshair;transition:all 0.2s}.node-port.input{background:#3b82f6}.node-port.output{background:#10b981}.node-port:hover{transform:scale(1.3)}.property-panel{background:var(--gray-50);border-radius:20px;padding:16px;overflow-y:auto;max-height:600px}.property-panel h3{font-size:1rem;margin-bottom:16px;display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--gray-200)}.property-content{display:flex;flex-direction:column;gap:16px}.property-placeholder{text-align:center;padding:40px 20px;color:var(--gray-400)}.property-placeholder i{font-size:32px;margin-bottom:12px}.property-group{display:flex;flex-direction:column;gap:8px}.property-group label{font-size:0.75rem;font-weight:500;color:var(--gray-600)}.property-group input,.property-group select,.property-group textarea{padding:8px 12px;border:1px solid var(--gray-200);border-radius:12px;font-size:0.8rem;width:100%}.property-group textarea{min-height:60px;resize:vertical}.execution-log{background:#1a1a2e;border-radius:20px;overflow:hidden;margin-top:24px}.log-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#2d2d44;color:#e0e0e0;font-size:0.85rem}.clear-log-btn{background:transparent;border:none;color:#a0a0c0;cursor:pointer;font-size:0.7rem}.log-content{padding:16px;font-family:monospace;font-size:0.75rem;max-height:200px;overflow-y:auto;color:#a0a0c0}.log-entry{padding:4px 0;border-bottom:1px solid #2d2d44;display:flex;gap:12px}.log-time{color:#4ade80}.log-level-info{color:#3b82f6}.log-level-success{color:#10b981}.log-level-error{color:#ef4444}.log-empty{text-align:center;color:#5a5a7a;padding:20px}.info-section{margin-top:24px}.info-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:16px;margin-top:16px}.info-item{display:flex;align-items:center;gap:10px;padding:12px;background:var(--gray-50);border-radius:16px;font-size:0.8rem;color:var(--gray-600)}.info-item i{color:#8b5cf6;font-size:1rem}@media (max-width:1200px){.workflow-layout{grid-template-columns:260px 1fr 280px}}@media (max-width:900px){.workflow-layout{grid-template-columns:1fr;gap:16px}.node-library,.property-panel{max-height:300px}.info-grid{grid-template-columns:repeat(2, 1fr)}}@media (max-width:768px){.workflow-toolbar{flex-direction:column;align-items:stretch}.toolbar-group{justify-content:center}.info-grid{grid-template-columns:1fr}}.node-drag-clone{position:fixed;z-index:9999;background:white;border-radius:12px;padding:8px 12px;box-shadow:0 4px 15px rgba(0,0,0,0.15);border-left:3px solid #8b5cf6;pointer-events:none;font-size:0.8rem;opacity:0.8}