@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&display=swap";.app-layout[data-v-6fadd04b]{display:flex;flex-direction:column;width:100%;height:100vh;overflow:hidden;background:var(--color-bg-page)}.app-topbar[data-v-6fadd04b]{width:100%;height:var(--topbar-height);background:var(--color-bg-topbar);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-xl);flex-shrink:0;z-index:var(--z-topbar)}.topbar-left[data-v-6fadd04b]{display:flex;align-items:center;position:relative}.logo-wrapper[data-v-6fadd04b]{display:flex;align-items:center;gap:8px;cursor:pointer;padding:6px 10px;border-radius:var(--radius-md);transition:background .15s ease;-webkit-user-select:none;user-select:none}.logo-wrapper[data-v-6fadd04b]:hover{background:var(--color-bg-hover)}.topbar-logo[data-v-6fadd04b]{height:28px;width:auto;object-fit:contain}.topbar-brand[data-v-6fadd04b]{font-size:15px;font-weight:600;color:var(--color-text-primary);letter-spacing:-.3px}.logo-arrow[data-v-6fadd04b]{width:16px;height:16px;color:var(--color-text-secondary);transition:transform .2s ease;flex-shrink:0}.logo-arrow-open[data-v-6fadd04b]{transform:rotate(180deg)}.logo-dropdown[data-v-6fadd04b]{position:absolute;top:calc(100% + 6px);left:0;z-index:9999;animation:dropdown-in-6fadd04b .15s ease}@keyframes dropdown-in-6fadd04b{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.logo-dropdown-arrow[data-v-6fadd04b]{position:absolute;top:-5px;left:22px;width:10px;height:10px;background:var(--color-bg-card);border-left:1px solid var(--color-border);border-top:1px solid var(--color-border);transform:rotate(45deg);z-index:1}.logo-dropdown-inner[data-v-6fadd04b]{position:relative;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 8px 30px #0000001f;padding:6px;min-width:168px}.logo-dropdown-item[data-v-6fadd04b]{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:none;background:transparent;color:var(--color-text-primary);font-size:13px;cursor:pointer;transition:background .12s ease;text-align:left;border-radius:8px}.logo-dropdown-item[data-v-6fadd04b]:hover{background:var(--color-bg-hover)}.logo-dropdown-active[data-v-6fadd04b]{background:var(--color-bg-hover);font-weight:600}.logo-dropdown-icon[data-v-6fadd04b]{width:18px;height:18px;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-dropdown-active .logo-dropdown-icon[data-v-6fadd04b]{color:var(--color-text-primary)}.logo-dropdown-icon[data-v-6fadd04b] svg{width:100%;height:100%}.logo-dropdown-label[data-v-6fadd04b]{white-space:nowrap}.logo-dropdown-divider[data-v-6fadd04b]{height:1px;background:var(--color-border);margin:4px 8px}.logo-dropdown-danger[data-v-6fadd04b],.logo-dropdown-danger .logo-dropdown-icon[data-v-6fadd04b]{color:var(--color-danger)}.logo-dropdown-danger[data-v-6fadd04b]:hover{background:var(--color-danger-light)}.topbar-center[data-v-6fadd04b]{flex:1;display:flex;align-items:center;justify-content:center;min-width:0}.topbar-project-name[data-v-6fadd04b]{border:none;border-bottom:1.5px solid transparent;background:transparent;text-align:center;font-size:14px;font-weight:500;color:var(--color-text-primary);padding:4px 12px;border-radius:0;outline:none;transition:border-color .15s ease;max-width:300px;width:100%}.topbar-project-name[data-v-6fadd04b]:hover{border-bottom-color:var(--color-border)}.topbar-project-name[data-v-6fadd04b]:focus{border-bottom-color:var(--color-text-primary)}.topbar-right[data-v-6fadd04b]{display:flex;align-items:center;gap:var(--space-sm)}.topbar-icon-btn[data-v-6fadd04b]{position:relative;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .15s ease}.topbar-icon-btn[data-v-6fadd04b]:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.topbar-icon-btn svg[data-v-6fadd04b]{width:20px;height:20px}.topbar-icon-badge[data-v-6fadd04b]{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--color-text-secondary);color:var(--color-text-inverse);font-size:10px;font-weight:600;line-height:16px;text-align:center}.topbar-badge[data-v-6fadd04b]{position:absolute;top:4px;right:4px;min-width:14px;height:14px;padding:0 4px;background:var(--color-danger);color:var(--color-text-inverse);font-size:10px;font-weight:600;line-height:14px;text-align:center;border-radius:7px}.user-wrapper[data-v-6fadd04b]{position:relative}.topbar-user-btn[data-v-6fadd04b]{width:32px;height:32px;padding:0;border:none;border-radius:50%;background:var(--color-bg-hover);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s}.topbar-user-btn[data-v-6fadd04b]:hover{opacity:.8}.topbar-user-avatar[data-v-6fadd04b]{width:32px;height:32px;border-radius:50%;background:var(--color-accent);color:var(--color-accent-text);font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center}.user-dropdown[data-v-6fadd04b]{position:absolute;top:calc(100% + 8px);right:0;z-index:1000}.user-dropdown-arrow[data-v-6fadd04b]{position:absolute;top:-6px;right:10px;width:12px;height:12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-right:none;border-bottom:none;transform:rotate(45deg)}.user-dropdown-inner[data-v-6fadd04b]{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg, 12px);box-shadow:0 4px 16px #00000014;padding:8px;min-width:180px}.user-dropdown-info[data-v-6fadd04b]{display:flex;align-items:center;gap:10px;padding:8px}.user-dropdown-avatar[data-v-6fadd04b]{width:36px;height:36px;border-radius:50%;background:var(--color-accent);color:var(--color-accent-text);font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-dropdown-meta[data-v-6fadd04b]{flex:1;min-width:0}.user-dropdown-name[data-v-6fadd04b]{font-size:14px;font-weight:500;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown-divider[data-v-6fadd04b]{height:1px;background:var(--color-border);margin:4px 0}.user-dropdown-item[data-v-6fadd04b]{width:100%;display:flex;align-items:center;gap:8px;padding:8px;border:none;border-radius:var(--radius-md, 8px);background:transparent;color:var(--color-text-primary);font-size:13px;cursor:pointer;transition:background .15s}.user-dropdown-item[data-v-6fadd04b]:hover{background:var(--color-bg-hover)}.user-dropdown-logout[data-v-6fadd04b]{color:var(--color-danger)}.user-dropdown-logout[data-v-6fadd04b]:hover{background:var(--color-danger-light)}.changelog-wrapper[data-v-6fadd04b]{position:relative}.changelog-dropdown[data-v-6fadd04b]{position:absolute;top:calc(100% + 8px);right:0;z-index:1000}.changelog-dropdown-arrow[data-v-6fadd04b]{position:absolute;top:-6px;right:12px;width:12px;height:12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-right:none;border-bottom:none;transform:rotate(45deg)}.changelog-dropdown-inner[data-v-6fadd04b]{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg, 12px);box-shadow:0 8px 32px #0000001f;width:340px;max-height:480px;overflow-y:auto}.changelog-header[data-v-6fadd04b]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--color-border)}.changelog-title[data-v-6fadd04b]{font-size:15px;font-weight:700;color:var(--color-text-primary)}.changelog-date[data-v-6fadd04b]{font-size:12px;color:var(--color-text-secondary);background:var(--color-bg-hover);padding:2px 8px;border-radius:var(--radius-sm, 4px)}.changelog-body[data-v-6fadd04b]{padding:8px 0}.changelog-section[data-v-6fadd04b]{padding:8px 20px}.changelog-section+.changelog-section[data-v-6fadd04b]{border-top:1px solid var(--color-border-light, rgba(0,0,0,.04))}.changelog-section-title[data-v-6fadd04b]{font-size:13px;font-weight:600;color:var(--color-text-primary);margin-bottom:6px;display:flex;align-items:center;gap:6px}.changelog-section-title svg[data-v-6fadd04b]{color:var(--color-accent);flex-shrink:0}.changelog-list[data-v-6fadd04b]{margin:0;padding:0 0 0 16px;list-style:none}.changelog-list li[data-v-6fadd04b]{position:relative;font-size:12px;line-height:1.6;color:var(--color-text-secondary);padding:2px 0}.changelog-list li[data-v-6fadd04b]:before{content:"";position:absolute;left:-12px;top:9px;width:4px;height:4px;border-radius:50%;background:var(--color-accent)}.topbar-member-btn[data-v-6fadd04b]{padding:7px 16px;font-size:13px;font-weight:500;color:var(--color-text-primary);background:var(--color-bg-hover);border:none;border-radius:20px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.topbar-member-btn[data-v-6fadd04b]:hover{background:var(--color-border-dark)}.app-body[data-v-6fadd04b]{flex:1;min-height:0;display:flex}.app-sidebar[data-v-6fadd04b]{width:var(--sidebar-width);flex-shrink:0;background:var(--color-bg-sidebar);border-right:1px solid var(--color-border);display:flex;flex-direction:column;align-items:center;padding:var(--space-lg) 0;z-index:var(--z-sidebar);overflow:visible}.sidebar-nav-top[data-v-6fadd04b]{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}.sidebar-nav-spacer[data-v-6fadd04b]{flex:1}.sidebar-nav-bottom[data-v-6fadd04b]{display:flex;flex-direction:column;align-items:center;gap:4px;padding-top:var(--space-md);border-top:1px solid var(--color-border);width:56px}.settings-fab-wrapper[data-v-6fadd04b]{position:fixed;bottom:24px;right:24px;z-index:900}.settings-fab[data-v-6fadd04b]{width:44px;height:44px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000001a;transition:background .15s,box-shadow .15s}.settings-fab[data-v-6fadd04b]:hover{background:var(--color-bg-hover);box-shadow:0 4px 12px #00000026}.settings-fab svg[data-v-6fadd04b]{width:22px;height:22px}.settings-fab-dropdown[data-v-6fadd04b]{position:absolute;bottom:calc(100% + 8px);right:0;z-index:1000;filter:drop-shadow(0 4px 12px rgba(0,0,0,.12))}.settings-fab-arrow[data-v-6fadd04b]{position:absolute;bottom:-6px;right:16px;width:12px;height:12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-top:none;border-left:none;transform:rotate(45deg)}.settings-fab-inner[data-v-6fadd04b]{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:4px;min-width:160px}.settings-fab-item[data-v-6fadd04b]{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:none;background:none;border-radius:6px;cursor:pointer;font-size:14px;color:var(--color-text-primary);transition:background .15s}.settings-fab-item[data-v-6fadd04b]:hover{background:var(--color-bg-hover)}.settings-fab-icon[data-v-6fadd04b]{width:18px;height:18px;flex-shrink:0;color:var(--color-text-secondary)}.settings-fab-icon[data-v-6fadd04b] svg{width:100%;height:100%}.settings-fab-label[data-v-6fadd04b]{white-space:nowrap}.sidebar-nav-item[data-v-6fadd04b]{display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:56px;border:none;border-radius:10px;background:transparent;cursor:pointer;transition:all .15s ease;gap:3px}.sidebar-nav-item[data-v-6fadd04b]:hover,.sidebar-nav-active[data-v-6fadd04b]{background:var(--color-bg-hover)}.sidebar-nav-active .sidebar-nav-icon[data-v-6fadd04b]{color:var(--color-text-primary)}.sidebar-nav-active .sidebar-nav-label[data-v-6fadd04b]{color:var(--color-text-primary);font-weight:600}.sidebar-nav-icon[data-v-6fadd04b]{width:22px;height:22px;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center}.sidebar-nav-icon[data-v-6fadd04b] svg{width:100%;height:100%}.sidebar-nav-label[data-v-6fadd04b]{font-size:10px;color:var(--color-text-secondary);line-height:1;white-space:nowrap}.sidebar-miniapp-wrapper[data-v-6fadd04b]{position:relative;display:flex;flex-direction:column;align-items:center}.miniapp-bubble[data-v-6fadd04b]{position:absolute;left:calc(100% + 10px);bottom:-8px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 8px 30px #0000001f;padding:var(--space-md);display:flex;flex-direction:column;align-items:center;z-index:9999;width:180px;animation:dropdown-in-6fadd04b .15s ease}.miniapp-bubble-arrow[data-v-6fadd04b]{position:absolute;left:-5px;bottom:24px;width:10px;height:10px;background:var(--color-bg-card);border-left:1px solid var(--color-border);border-bottom:1px solid var(--color-border);transform:rotate(45deg)}.miniapp-bubble-img[data-v-6fadd04b]{width:140px;height:140px;object-fit:contain;border-radius:8px;border:1px solid var(--color-border)}.miniapp-bubble-tip[data-v-6fadd04b]{margin-top:8px;margin-bottom:0;font-size:12px;color:var(--color-text-secondary);text-align:center}.app-content[data-v-6fadd04b]{flex:1;min-width:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;background:var(--color-bg-page)}.app-content-craft[data-v-6fadd04b]{overflow:hidden}.topbar-user-avatar-img[data-v-6fadd04b]{width:32px;height:32px;border-radius:50%;object-fit:cover}.user-dropdown-avatar-img[data-v-6fadd04b]{width:40px;height:40px;border-radius:50%;object-fit:cover}.help-panel[data-v-6fadd04b]{max-width:640px}.help-search[data-v-6fadd04b]{position:relative;margin:0 0 20px}.help-search-icon[data-v-6fadd04b]{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--color-text-tertiary)}.help-search-input[data-v-6fadd04b]{width:100%;padding:10px 12px 10px 38px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;outline:none;background:var(--color-bg-page);color:var(--color-text-primary);transition:border-color .15s}.help-search-input[data-v-6fadd04b]:focus{border-color:var(--color-text-primary)}.help-section[data-v-6fadd04b]{margin-bottom:24px}.help-section[data-v-6fadd04b]:last-child{margin-bottom:0}.help-section-title[data-v-6fadd04b]{font-size:14px;font-weight:600;color:var(--color-text-secondary);margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.help-cards[data-v-6fadd04b]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.help-card[data-v-6fadd04b]{padding:14px;border:1px solid var(--color-border);border-radius:8px;cursor:default;transition:border-color .15s,box-shadow .15s}.help-card[data-v-6fadd04b]:hover{border-color:var(--color-text-secondary);box-shadow:0 2px 8px #0000000f}.help-card-title[data-v-6fadd04b]{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:6px}.help-card-desc[data-v-6fadd04b]{font-size:12px;color:var(--color-text-secondary);line-height:1.5}.help-faq-list[data-v-6fadd04b]{display:flex;flex-direction:column;gap:10px}.help-faq-item[data-v-6fadd04b]{padding:14px;border:1px solid var(--color-border);border-radius:8px}.help-faq-q[data-v-6fadd04b]{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:6px}.help-faq-a[data-v-6fadd04b]{font-size:13px;color:var(--color-text-secondary);line-height:1.6}.help-empty[data-v-6fadd04b]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 0;color:var(--color-text-tertiary);gap:12px}.help-empty p[data-v-6fadd04b]{margin:0;font-size:14px}.fb-modal[data-v-6fadd04b]{max-width:440px}.fb-field[data-v-6fadd04b]{margin-bottom:16px}.fb-label[data-v-6fadd04b]{display:block;font-size:13px;font-weight:500;color:var(--color-text-primary);margin-bottom:8px}.fb-chips[data-v-6fadd04b]{display:flex;gap:8px}.fb-chip[data-v-6fadd04b]{padding:6px 14px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-bg-card);font-size:13px;color:var(--color-text-secondary);cursor:pointer}.fb-chip-active[data-v-6fadd04b]{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-light)}.fb-textarea[data-v-6fadd04b]{width:100%;min-height:96px;resize:vertical;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:13px;color:var(--color-text-primary);box-sizing:border-box;font-family:inherit}.fb-input[data-v-6fadd04b]{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:13px;color:var(--color-text-primary);box-sizing:border-box}.fb-textarea[data-v-6fadd04b]:focus,.fb-input[data-v-6fadd04b]:focus{outline:none;border-color:var(--color-accent)}.fb-counter[data-v-6fadd04b]{margin-top:6px;text-align:right;font-size:12px;color:var(--color-text-tertiary)}.modal-mask[data-v-74a427bb]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#11182773;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:maskIn-74a427bb .2s ease-out}@keyframes maskIn-74a427bb{0%{opacity:0}to{opacity:1}}.modal-dialog[data-v-74a427bb]{width:100%;max-width:540px;max-height:86vh;background:var(--color-bg-card);border-radius:20px;box-shadow:0 24px 64px #1118273d,0 2px 8px #11182714;display:flex;flex-direction:column;overflow:hidden;animation:dialogIn-74a427bb .28s cubic-bezier(.16,1,.3,1)}@keyframes dialogIn-74a427bb{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header[data-v-74a427bb]{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px 24px;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%)}.modal-header-text[data-v-74a427bb]{display:flex;flex-direction:column;gap:4px;min-width:0}.modal-title[data-v-74a427bb]{font-size:19px;font-weight:800;color:var(--color-accent-text);letter-spacing:.01em}.modal-subtitle[data-v-74a427bb]{font-size:12px;font-weight:500;color:var(--color-accent-text);opacity:.72}.modal-close-btn[data-v-74a427bb]{flex-shrink:0;width:30px;height:30px;border:none;border-radius:50%;background:#ffffff38;color:var(--color-accent-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.modal-close-btn[data-v-74a427bb]:hover{background:#ffffff61}.modal-body[data-v-74a427bb]{flex:1;overflow-y:auto;padding:20px 24px;background:var(--color-bg-sidebar)}.modal-section[data-v-74a427bb]{margin-bottom:22px}.modal-section[data-v-74a427bb]:last-child{margin-bottom:0}.section-label[data-v-74a427bb]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.section-label-text[data-v-74a427bb]{font-size:13px;font-weight:700;color:var(--color-text-primary)}.section-count[data-v-74a427bb]{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 7px;border-radius:980px;background:var(--color-accent-light);color:var(--color-accent-active);font-size:11px;font-weight:700}.source-list[data-v-74a427bb],.strategy-list[data-v-74a427bb]{display:flex;flex-direction:column;gap:10px}.source-item[data-v-74a427bb]{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-bg-card);cursor:pointer;transition:all .18s ease}.source-item[data-v-74a427bb]:hover{border-color:var(--color-accent);transform:translateY(-1px);box-shadow:0 6px 16px #1118270f}.source-item.active[data-v-74a427bb]{border-color:var(--color-accent);background:linear-gradient(135deg,var(--color-accent-light) 0%,var(--color-bg-card) 60%);box-shadow:0 0 0 1px var(--color-accent),0 6px 16px #1118270f}.source-thumb[data-v-74a427bb]{flex-shrink:0;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%);color:var(--color-accent-text);box-shadow:0 4px 10px #1118271f}.source-info[data-v-74a427bb]{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.source-title[data-v-74a427bb]{font-size:14px;font-weight:700;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.source-meta[data-v-74a427bb]{font-size:12px;color:var(--color-text-placeholder)}.source-check[data-v-74a427bb]{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-accent-text);background:transparent;transition:background .15s}.source-item.active .source-check[data-v-74a427bb]{background:var(--color-accent)}.strategy-item[data-v-74a427bb]{display:flex;align-items:flex-start;gap:12px;padding:13px 14px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-card);cursor:pointer;transition:all .18s ease}.strategy-item[data-v-74a427bb]:hover{border-color:var(--color-accent)}.strategy-item.active[data-v-74a427bb]{border-color:var(--color-accent);background:var(--color-accent-light)}.strategy-radio[data-v-74a427bb]{flex:0 0 18px;width:18px;height:18px;margin-top:1px;border:2px solid var(--color-border-dark);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:border-color .15s}.strategy-item.active .strategy-radio[data-v-74a427bb]{border-color:var(--color-accent)}.strategy-radio-dot[data-v-74a427bb]{width:9px;height:9px;border-radius:50%;background:var(--color-accent)}.strategy-info[data-v-74a427bb]{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.strategy-title[data-v-74a427bb]{font-size:14px;font-weight:600;color:var(--color-text-primary)}.strategy-desc[data-v-74a427bb]{font-size:12px;color:var(--color-text-placeholder);line-height:1.5}.empty-hint[data-v-74a427bb]{display:flex;flex-direction:column;align-items:center;gap:10px;padding:36px 0;color:var(--color-border-dark);font-size:14px}.modal-footer[data-v-74a427bb]{display:flex;gap:10px;padding:16px 24px;background:var(--color-bg-card);border-top:1px solid var(--color-border-light)}.modal-btn[data-v-74a427bb]{flex:1;height:44px;border:none;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s}.modal-btn.cancel[data-v-74a427bb]{flex:0 0 30%;color:var(--color-text-primary);background:var(--color-bg-hover)}.modal-btn.cancel[data-v-74a427bb]:hover{background:var(--color-border-dark)}.modal-btn.confirm[data-v-74a427bb]{color:var(--color-accent-text);background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%);box-shadow:0 6px 16px var(--color-accent-light)}.modal-btn.confirm[data-v-74a427bb]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px var(--color-accent-light)}.modal-btn.confirm[data-v-74a427bb]:disabled{opacity:.55;cursor:not-allowed}.add-modal[data-v-bddc7600]{max-width:560px}.search-bar[data-v-bddc7600]{display:flex;align-items:center;gap:8px;margin:0 0 16px;padding:0 12px;height:40px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-card);transition:all .15s}.search-bar[data-v-bddc7600]:focus-within{border-color:var(--color-accent);background:var(--color-bg-card)}.search-icon[data-v-bddc7600]{color:var(--color-text-placeholder);flex-shrink:0}.search-input[data-v-bddc7600]{flex:1;border:none;background:transparent;font-size:14px;color:var(--color-text-primary);outline:none}.search-input[data-v-bddc7600]::placeholder{color:var(--color-text-placeholder)}.search-clear[data-v-bddc7600]{border:none;background:transparent;color:var(--color-text-placeholder);cursor:pointer;padding:2px;display:flex;align-items:center}.search-clear[data-v-bddc7600]:hover{color:var(--color-text-secondary)}.parts-group[data-v-bddc7600]{margin-bottom:20px}.parts-group[data-v-bddc7600]:last-child{margin-bottom:0}.group-label[data-v-bddc7600]{font-size:12px;font-weight:600;color:var(--color-text-placeholder);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.parts-grid[data-v-bddc7600]{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.part-card[data-v-bddc7600]{padding:12px 10px;border:1px solid var(--color-border-light);border-radius:10px;background:var(--color-bg-card);cursor:pointer;text-align:center;transition:all .15s}.part-card[data-v-bddc7600]:hover{border-color:var(--color-border-dark);background:var(--color-bg-sidebar)}.part-card-selected[data-v-bddc7600]{border-color:var(--color-accent);background:var(--color-bg-sidebar);box-shadow:0 0 0 1px var(--color-accent)}.part-card-name[data-v-bddc7600]{font-size:13px;font-weight:600;color:var(--color-text-primary);margin-bottom:2px}.part-card-colors[data-v-bddc7600]{font-size:11px;color:var(--color-text-placeholder)}.empty-hint[data-v-bddc7600]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:40px 0;color:var(--color-border);font-size:14px}.detail-panel[data-v-bddc7600]{border-top:1px solid var(--color-border-light);padding:16px 24px;background:var(--color-bg-sidebar)}.detail-header[data-v-bddc7600]{margin-bottom:12px}.detail-name[data-v-bddc7600]{font-size:14px;font-weight:600;color:var(--color-text-primary)}.color-grid[data-v-bddc7600]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.color-tile[data-v-bddc7600]{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-bg-card);cursor:pointer;transition:all .15s}.color-tile[data-v-bddc7600]:hover{border-color:var(--color-border-dark)}.color-tile-selected[data-v-bddc7600]{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.color-dot[data-v-bddc7600]{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.08);flex-shrink:0}.color-tile-label[data-v-bddc7600]{font-size:12px;font-weight:500;color:var(--color-text-primary)}.quantity-row[data-v-bddc7600]{display:flex;align-items:center;gap:12px}.quantity-label[data-v-bddc7600]{font-size:14px;font-weight:500;color:var(--color-text-primary)}.quantity-controls[data-v-bddc7600]{display:flex;align-items:center;gap:0;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;background:var(--color-bg-card)}.qty-btn[data-v-bddc7600]{width:36px;height:36px;border:none;background:transparent;color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.qty-btn[data-v-bddc7600]:hover{background:var(--color-bg-hover)}.qty-btn[data-v-bddc7600]:active{background:var(--color-border-dark)}.qty-input[data-v-bddc7600]{width:56px;height:36px;border:none;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);text-align:center;font-size:14px;font-weight:600;color:var(--color-text-primary);background:transparent;outline:none;-moz-appearance:textfield}.qty-input[data-v-bddc7600]::-webkit-outer-spin-button,.qty-input[data-v-bddc7600]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-unit[data-v-bddc7600]{font-size:14px;color:var(--color-text-placeholder)}.modal-mask[data-v-6eb1fb78]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#11182773;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:maskIn-6eb1fb78 .2s ease-out}@keyframes maskIn-6eb1fb78{0%{opacity:0}to{opacity:1}}.modal-dialog[data-v-6eb1fb78]{width:100%;max-width:440px;max-height:86vh;background:var(--color-bg-card);border-radius:20px;box-shadow:0 24px 64px #1118273d,0 2px 8px #11182714;display:flex;flex-direction:column;overflow:hidden;animation:dialogIn-6eb1fb78 .28s cubic-bezier(.16,1,.3,1)}@keyframes dialogIn-6eb1fb78{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header[data-v-6eb1fb78]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px 24px;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%)}.modal-header-text[data-v-6eb1fb78]{display:flex;flex-direction:column;gap:4px;min-width:0}.modal-title[data-v-6eb1fb78]{font-size:19px;font-weight:800;color:var(--color-accent-text);letter-spacing:.01em}.modal-subtitle[data-v-6eb1fb78]{font-size:12px;font-weight:500;color:var(--color-accent-text);opacity:.72}.modal-close-btn[data-v-6eb1fb78]{flex-shrink:0;width:30px;height:30px;border:none;border-radius:50%;background:#ffffff38;color:var(--color-accent-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.modal-close-btn[data-v-6eb1fb78]:hover{background:#ffffff61}.modal-body[data-v-6eb1fb78]{flex:1;overflow-y:auto;padding:20px 24px;background:var(--color-bg-sidebar)}.part-display[data-v-6eb1fb78]{padding:6px 16px;border-radius:14px;background:var(--color-bg-card);border:1px solid var(--color-border);margin-bottom:20px}.part-display-row[data-v-6eb1fb78]{display:flex;align-items:center;justify-content:space-between;padding:12px 0}.part-display-row[data-v-6eb1fb78]:not(:last-child){border-bottom:1px solid var(--color-border-light)}.part-display-label[data-v-6eb1fb78]{font-size:13px;font-weight:500;color:var(--color-text-secondary)}.part-display-value[data-v-6eb1fb78]{font-size:14px;font-weight:700;color:var(--color-text-primary)}.part-display-value.highlight[data-v-6eb1fb78]{color:var(--color-accent-active);font-size:16px}.part-display-color[data-v-6eb1fb78]{display:flex;align-items:center;gap:8px}.color-preview-small[data-v-6eb1fb78]{width:18px;height:18px;border-radius:50%;border:1px solid rgba(0,0,0,.1)}.modal-section[data-v-6eb1fb78]{margin-bottom:18px}.section-label[data-v-6eb1fb78]{font-size:13px;font-weight:700;color:var(--color-text-primary);margin-bottom:12px}.quantity-stepper[data-v-6eb1fb78]{display:flex;align-items:center;gap:0;border:1px solid var(--color-border);border-radius:12px;overflow:hidden;background:var(--color-bg-card)}.step-btn[data-v-6eb1fb78]{width:48px;height:48px;flex-shrink:0;border:none;background:var(--color-bg-card);color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.step-btn[data-v-6eb1fb78]:hover{background:var(--color-bg-hover)}.step-btn[data-v-6eb1fb78]:active{background:var(--color-accent-light);color:var(--color-accent-active)}.step-input[data-v-6eb1fb78]{flex:1;min-width:0;height:48px;border:none;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);text-align:center;font-size:18px;font-weight:700;color:var(--color-text-primary);background:transparent;outline:none;-moz-appearance:textfield}.step-input[data-v-6eb1fb78]::-webkit-outer-spin-button,.step-input[data-v-6eb1fb78]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-hint[data-v-6eb1fb78]{margin-top:8px;font-size:12px;color:var(--color-text-placeholder);text-align:center}.quantity-result[data-v-6eb1fb78]{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-radius:14px;background:linear-gradient(135deg,var(--color-accent-light) 0%,var(--color-bg-card) 80%);border:1px solid var(--color-accent)}.result-label[data-v-6eb1fb78]{font-size:14px;font-weight:600;color:var(--color-text-primary)}.result-value[data-v-6eb1fb78]{font-size:20px;font-weight:800;color:var(--color-accent-active)}.modal-footer[data-v-6eb1fb78]{display:flex;gap:10px;padding:16px 24px;background:var(--color-bg-card);border-top:1px solid var(--color-border-light)}.modal-btn[data-v-6eb1fb78]{height:44px;border:none;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.modal-btn.delete[data-v-6eb1fb78]{flex:0 0 48px;color:var(--color-danger);background:var(--color-danger-light)}.modal-btn.delete[data-v-6eb1fb78]:hover{color:var(--color-text-inverse);background:var(--color-danger)}.modal-btn.cancel[data-v-6eb1fb78]{flex:0 0 30%;color:var(--color-text-primary);background:var(--color-bg-hover)}.modal-btn.cancel[data-v-6eb1fb78]:hover{background:var(--color-border-dark)}.modal-btn.confirm[data-v-6eb1fb78]{flex:1;color:var(--color-accent-text);background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%);box-shadow:0 6px 16px var(--color-accent-light)}.modal-btn.confirm[data-v-6eb1fb78]:hover{transform:translateY(-1px);box-shadow:0 8px 20px var(--color-accent-light)}.inventory-modal[data-v-7a053dcb]{max-width:760px}.inventory-toolbar[data-v-7a053dcb]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-lg)}.title-input-group[data-v-7a053dcb]{display:flex;align-items:baseline;gap:var(--space-md);min-width:0}.title-input[data-v-7a053dcb]{flex:1;min-width:0;border:none;border-bottom:1px solid var(--color-border-dark);background:transparent;padding:4px 2px;font-size:16px;font-weight:700;color:var(--color-text-primary);outline:none;transition:border-color .15s}.title-input[data-v-7a053dcb]:focus{border-bottom-color:var(--color-accent)}.title-input[data-v-7a053dcb]::placeholder{color:var(--color-text-secondary);font-weight:500}.title-date[data-v-7a053dcb]{flex-shrink:0;font-size:12px;color:var(--color-text-secondary)}.color-toggle[data-v-7a053dcb]{flex-shrink:0;display:inline-flex;align-items:center;gap:var(--space-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.color-toggle input[data-v-7a053dcb]{position:absolute;opacity:0;width:0;height:0}.color-toggle-track[data-v-7a053dcb]{position:relative;width:38px;height:22px;border-radius:11px;background:var(--color-border-dark);transition:background .2s}.color-toggle-thumb[data-v-7a053dcb]{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--color-bg-card);box-shadow:0 1px 3px #11182740;transition:transform .2s}.color-toggle input:checked+.color-toggle-track[data-v-7a053dcb]{background:var(--color-accent)}.color-toggle input:checked+.color-toggle-track .color-toggle-thumb[data-v-7a053dcb]{transform:translate(16px)}.color-toggle-label[data-v-7a053dcb]{font-size:13px;font-weight:600;color:var(--color-text-primary)}.inventory-table[data-v-7a053dcb]{width:100%;border-collapse:collapse;font-size:13px}.inventory-table th[data-v-7a053dcb]{text-align:left;padding:8px 10px;font-weight:700;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-dark);background:var(--color-bg-card)}.inventory-table td[data-v-7a053dcb]{padding:8px 10px;color:var(--color-text-primary);border-bottom:1px solid var(--color-border-light)}.inventory-table .count-head[data-v-7a053dcb],.inventory-table .count-cell[data-v-7a053dcb]{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.inventory-table .divider-col[data-v-7a053dcb]{width:1px;padding:0;border-bottom:none;background:var(--color-border-light)}.footer-summary[data-v-7a053dcb]{flex:1;display:flex;align-items:center;gap:var(--space-xl)}.summary-item[data-v-7a053dcb]{display:flex;flex-direction:column;gap:2px}.summary-label[data-v-7a053dcb]{font-size:11px;color:var(--color-text-secondary)}.summary-value[data-v-7a053dcb]{font-size:16px;font-weight:800;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.download-btn[data-v-7a053dcb]{flex:0 0 auto;padding:0 18px}.my-parts-page[data-v-e61e6d8d]{min-height:100%;overflow-y:auto;background:var(--color-bg-sidebar);padding:var(--space-2xl) var(--space-3xl)}.my-parts-page[data-v-e61e6d8d]>*{margin-left:auto;margin-right:auto}.page-header[data-v-e61e6d8d]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2xl)}.page-title[data-v-e61e6d8d]{font-size:28px;font-weight:700;letter-spacing:-.01em;color:var(--color-text-primary);margin:0}.page-header-actions[data-v-e61e6d8d]{display:flex;align-items:center;gap:8px}.header-action-btn[data-v-e61e6d8d]{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;border:none;border-radius:980px;background:var(--color-accent);font-size:13px;font-weight:500;color:var(--color-accent-text);cursor:pointer;transition:all var(--transition-fast)}.header-action-btn[data-v-e61e6d8d]:hover{background:var(--color-accent-hover)}.header-action-btn.secondary[data-v-e61e6d8d]{background:var(--color-bg-hover);color:var(--color-text-primary)}.header-action-btn.secondary[data-v-e61e6d8d]:hover{background:var(--color-bg-active)}.header-action-btn.export-btn[data-v-e61e6d8d]{background:var(--color-text-primary);color:var(--color-accent)}.header-action-btn.export-btn[data-v-e61e6d8d]:hover{background:var(--color-text-secondary);color:var(--color-accent)}.summary-bar[data-v-e61e6d8d]{display:flex;align-items:center;gap:var(--space-xl);padding:var(--space-lg) var(--space-2xl);background:var(--color-bg-card);border-radius:14px;margin-bottom:var(--space-2xl);box-shadow:var(--shadow-xs)}.summary-bar .clear-btn[data-v-e61e6d8d]{margin-left:auto}.summary-item[data-v-e61e6d8d]{display:flex;align-items:baseline;gap:8px}.summary-value[data-v-e61e6d8d]{font-size:24px;font-weight:700;letter-spacing:-.01em;color:var(--color-text-primary)}.summary-label[data-v-e61e6d8d]{font-size:12px;color:var(--color-text-secondary)}.summary-divider[data-v-e61e6d8d]{width:1px;height:24px;background:var(--color-border)}.empty-area[data-v-e61e6d8d]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:120px 0}.empty-icon[data-v-e61e6d8d]{color:var(--color-text-placeholder);margin-bottom:var(--space-xl)}.empty-text[data-v-e61e6d8d]{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary);margin-bottom:6px}.empty-desc[data-v-e61e6d8d]{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-2xl)}.create-btn[data-v-e61e6d8d]{padding:11px 24px;border:none;border-radius:980px;background:var(--color-accent);color:var(--color-accent-text);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.create-btn[data-v-e61e6d8d]:hover{background:var(--color-accent-hover);transform:scale(1.02)}.parts-groups[data-v-e61e6d8d],.parts-layout-compact .parts-column[data-v-e61e6d8d]{display:flex;flex-direction:column;gap:var(--space-3xl)}.parts-layout-compact .parts-section[data-v-e61e6d8d]{background:var(--color-bg-card);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm)}.parts-layout-compact .section-header[data-v-e61e6d8d]{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-xl);background:var(--color-bg-sidebar);border-bottom:1px solid var(--color-border-light)}.parts-layout-compact .section-icon[data-v-e61e6d8d]{width:20px;height:20px;color:var(--color-text-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.parts-layout-compact .section-icon[data-v-e61e6d8d] svg{width:100%;height:100%}.parts-layout-compact .section-title[data-v-e61e6d8d]{font-size:20px;font-weight:700;color:var(--color-text-primary);margin:0}.parts-layout-compact .section-meta[data-v-e61e6d8d]{margin-left:auto;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.parts-layout-compact .section-list[data-v-e61e6d8d]{display:flex;flex-direction:column}.parts-layout-compact .part-row[data-v-e61e6d8d]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-xl);min-height:52px;border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:background var(--transition-fast)}.parts-layout-compact .part-row[data-v-e61e6d8d]:last-child{border-bottom:none}.parts-layout-compact .part-row[data-v-e61e6d8d]:hover{background:var(--color-bg-hover)}.parts-layout-compact .part-row-left[data-v-e61e6d8d]{display:flex;align-items:center;gap:var(--space-lg);flex:1;min-width:0}.parts-layout-compact .part-name[data-v-e61e6d8d]{font-size:var(--font-size-base);font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:88px;flex-shrink:0}.parts-layout-compact .part-colors-inline[data-v-e61e6d8d]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.parts-layout-compact .color-chip-dot[data-v-e61e6d8d]{width:25px;height:25px;border-radius:50%;border:1.5px dashed rgba(0,0,0,.35);box-shadow:inset 0 0 0 1px #fff6;display:flex;align-items:center;justify-content:center;flex-shrink:0}.parts-layout-compact .color-chip-count[data-v-e61e6d8d]{font-size:12px;font-weight:700;color:#000;text-shadow:0 0 2px rgba(255,255,255,.85);font-variant-numeric:tabular-nums;line-height:1}.parts-layout-compact .part-row-right[data-v-e61e6d8d]{display:flex;align-items:center;gap:var(--space-lg);flex-shrink:0}.parts-layout-compact .part-total[data-v-e61e6d8d]{font-size:20px;font-weight:700;color:var(--color-text-primary);min-width:48px;text-align:right;letter-spacing:-.01em}.parts-layout-compact .part-edit-btn[data-v-e61e6d8d]{padding:6px 16px;border:none;border-radius:980px;background:transparent;font-size:var(--font-size-xs);font-weight:600;color:var(--color-accent);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.parts-layout-compact .part-edit-btn[data-v-e61e6d8d]:hover{background:var(--color-accent-light)}.parts-layout-masonry[data-v-e61e6d8d]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);align-items:start}.parts-layout-masonry .parts-column[data-v-e61e6d8d]{display:flex;flex-direction:column;gap:var(--space-lg);min-width:0}.parts-layout-masonry .parts-section[data-v-e61e6d8d]{background:var(--color-bg-card);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-xs);transition:all var(--transition-fast)}.parts-layout-masonry .parts-section[data-v-e61e6d8d]:hover{box-shadow:var(--shadow-md)}.parts-layout-masonry .section-header[data-v-e61e6d8d]{padding:var(--space-md) var(--space-lg);background:var(--color-bg-sidebar);border-bottom:1px solid var(--color-border-light)}.parts-layout-masonry .section-title[data-v-e61e6d8d]{font-size:17px;font-weight:700;color:var(--color-text-primary);margin:0 0 2px}.parts-layout-masonry .section-meta[data-v-e61e6d8d]{font-size:11px;color:var(--color-text-secondary);display:block}.parts-layout-masonry .section-icon[data-v-e61e6d8d]{display:none}.parts-layout-masonry .section-list[data-v-e61e6d8d]{display:flex;flex-direction:column}.parts-layout-masonry .part-row[data-v-e61e6d8d]{display:flex;align-items:center;justify-content:space-between;padding:10px var(--space-lg);border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:background var(--transition-fast)}.parts-layout-masonry .part-row[data-v-e61e6d8d]:last-child{border-bottom:none}.parts-layout-masonry .part-row[data-v-e61e6d8d]:hover{background:var(--color-bg-hover)}.parts-layout-masonry .part-row-left[data-v-e61e6d8d]{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.parts-layout-masonry .part-name[data-v-e61e6d8d]{font-size:14px;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.parts-layout-masonry .part-colors-inline[data-v-e61e6d8d]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.parts-layout-masonry .color-chip-dot[data-v-e61e6d8d]{width:25px;height:25px;border-radius:50%;border:1.5px dashed rgba(0,0,0,.35);box-shadow:inset 0 0 0 1px #fff6;display:flex;align-items:center;justify-content:center;flex-shrink:0}.parts-layout-masonry .color-chip-count[data-v-e61e6d8d]{font-size:12px;font-weight:700;color:#000;text-shadow:0 0 2px rgba(255,255,255,.85);font-variant-numeric:tabular-nums;line-height:1}.parts-layout-masonry .part-row-right[data-v-e61e6d8d]{display:flex;align-items:center;gap:var(--space-sm)}.parts-layout-masonry .part-total[data-v-e61e6d8d]{font-size:17px;font-weight:700;color:var(--color-text-primary);min-width:32px;text-align:right}.parts-layout-masonry .part-edit-btn[data-v-e61e6d8d]{padding:6px 16px;border:none;border-radius:980px;background:transparent;font-size:var(--font-size-xs);font-weight:600;color:var(--color-accent);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.parts-layout-masonry .part-edit-btn[data-v-e61e6d8d]:hover{background:var(--color-accent-light)}.layout-toggle[data-v-e61e6d8d]{display:flex;gap:4px;padding:3px;background:var(--color-bg-hover);border-radius:8px}.layout-toggle-btn[data-v-e61e6d8d]{width:32px;height:32px;border:none;background:transparent;border-radius:6px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.layout-toggle-btn[data-v-e61e6d8d]:hover{color:var(--color-text-primary);background:var(--color-bg-card)}.layout-toggle-btn.active[data-v-e61e6d8d]{background:var(--color-bg-card);color:var(--color-text-primary);box-shadow:var(--shadow-xs)}.clear-btn[data-v-e61e6d8d]{padding:6px 16px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:transparent;font-size:var(--font-size-xs);font-weight:500;color:var(--color-danger);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.clear-btn[data-v-e61e6d8d]:hover{background:var(--color-danger-light);border-color:var(--color-danger)}.clear-confirm-text[data-v-e61e6d8d]{font-size:var(--font-size-base);color:var(--color-text-primary);line-height:1.6;margin:0}.ds-modal-sm[data-v-e61e6d8d]{max-width:400px;width:90%}.ds-modal-overlay[data-v-e61e6d8d]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ds-modal[data-v-e61e6d8d]{background:var(--color-bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);overflow:hidden}.ds-modal-header[data-v-e61e6d8d]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--color-border)}.ds-modal-title[data-v-e61e6d8d]{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0}.ds-modal-close[data-v-e61e6d8d]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.ds-modal-close[data-v-e61e6d8d]:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.ds-modal-body[data-v-e61e6d8d]{padding:var(--space-xl)}.ds-modal-footer[data-v-e61e6d8d]{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-xl) var(--space-lg)}.ds-btn[data-v-e61e6d8d]{padding:8px 20px;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);border:1px solid transparent}.ds-btn-secondary[data-v-e61e6d8d]{background:var(--color-bg-card);color:var(--color-text-primary);border-color:var(--color-border)}.ds-btn-secondary[data-v-e61e6d8d]:hover{background:var(--color-bg-hover);border-color:var(--color-border-dark)}.ds-btn-danger[data-v-e61e6d8d]{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.ds-btn-danger[data-v-e61e6d8d]:hover{background:var(--color-danger-hover);border-color:var(--color-danger-hover)}.ds-scale-enter-active[data-v-e61e6d8d],.ds-scale-leave-active[data-v-e61e6d8d]{transition:opacity .2s ease,transform .2s ease}.ds-scale-enter-from[data-v-e61e6d8d],.ds-scale-leave-to[data-v-e61e6d8d]{opacity:0;transform:scale(.95)}.community-page[data-v-b755e14f]{padding:0;background:var(--color-bg-sidebar)}.filters[data-v-b755e14f]{position:sticky;top:0;z-index:10;padding:.75rem 1.5rem;background:var(--color-bg-card);border-bottom:.0625rem solid var(--color-border);display:flex;align-items:center;gap:0}.source-filter[data-v-b755e14f],.category-filter[data-v-b755e14f]{display:flex;gap:0;align-items:center;background:var(--color-bg-hover);border-radius:1.25rem;padding:.25rem;margin-right:1rem}.category-filter[data-v-b755e14f]{margin-right:0}.filter-btn[data-v-b755e14f]{padding:.375rem 1rem;border:none;border-radius:1rem;background:transparent;color:var(--color-text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.filter-btn[data-v-b755e14f]:hover{color:var(--color-text-primary)}.filter-btn.active[data-v-b755e14f]{background:var(--color-accent);color:var(--color-accent-text);box-shadow:var(--shadow-sm)}.empty-state[data-v-b755e14f]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6rem 2rem;text-align:center}.empty-icon[data-v-b755e14f]{font-size:5rem;margin-bottom:1.5rem;opacity:.5}.empty-title[data-v-b755e14f]{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.75rem}.empty-desc[data-v-b755e14f]{font-size:1rem;color:var(--color-text-placeholder);line-height:1.6}.feed[data-v-b755e14f]{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:1.5rem}.card[data-v-b755e14f]{background:var(--color-bg-card);border-radius:1.25rem;overflow:hidden;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm);border:.0625rem solid var(--color-border-light)}.card[data-v-b755e14f]:hover{transform:translateY(-.5rem);box-shadow:var(--shadow-lg);border-color:var(--color-border)}.card-cover[data-v-b755e14f]{position:relative;width:100%;padding-top:75%;overflow:hidden;background:var(--color-bg-hover)}.cover-image[data-v-b755e14f]{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:scale-down}.cover-placeholder[data-v-b755e14f]{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:900;color:var(--color-text-inverse);background:var(--color-accent)}.cover-badge[data-v-b755e14f]{position:absolute;top:.75rem;left:.75rem;padding:.375rem .875rem;border-radius:2rem;font-size:.75rem;font-weight:700;color:var(--color-text-inverse);-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem)}.cover-badge.origin[data-v-b755e14f]{background:#10b981f2}.cover-badge.derived[data-v-b755e14f]{background:#fb923cf2}.cover-pill[data-v-b755e14f]{position:absolute;bottom:.75rem;right:.75rem;padding:.375rem .875rem;border-radius:2rem;background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);color:var(--color-text-inverse);font-size:.75rem;font-weight:600}.card-body[data-v-b755e14f]{padding:1.25rem}.card-title[data-v-b755e14f]{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .5rem;line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.card-desc[data-v-b755e14f]{font-size:.875rem;color:var(--color-text-secondary);margin:0 0 1rem;line-height:1.6;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.card-footer[data-v-b755e14f]{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:.0625rem solid var(--color-border-light)}.author[data-v-b755e14f]{display:flex;align-items:center;gap:.625rem}.author-avatar[data-v-b755e14f]{width:2rem;height:2rem;border-radius:50%;object-fit:cover;border:.125rem solid var(--color-border-light)}.author-avatar.placeholder[data-v-b755e14f]{background:var(--color-accent);color:var(--color-accent-text);display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700}.author-name[data-v-b755e14f]{font-size:.875rem;color:var(--color-text-secondary);font-weight:600}.stats[data-v-b755e14f]{display:flex;align-items:center;gap:1rem}.stat[data-v-b755e14f]{display:flex;align-items:center;gap:.25rem;font-size:.875rem;color:var(--color-text-placeholder);font-weight:600;transition:color .2s}.stat.liked[data-v-b755e14f]{color:var(--color-like)}.stat.collected[data-v-b755e14f]{color:var(--color-favorite)}.loading[data-v-b755e14f]{text-align:center;padding:2.5rem;color:var(--color-text-placeholder);font-size:.875rem;font-weight:600;display:flex;flex-direction:column;align-items:center;gap:12px}.loading-svg[data-v-b755e14f]{width:56px;height:56px}.detail-view[data-v-b755e14f]{height:100%;overflow-y:auto;background:var(--color-bg-card)}.detail-header[data-v-b755e14f]{position:sticky;top:0;z-index:10;padding:1rem 1.5rem;background:var(--color-bg-card);border-bottom:.0625rem solid var(--color-border)}.back-btn[data-v-b755e14f]{border:none;background:var(--color-bg-hover);color:var(--color-text-primary);padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.back-btn[data-v-b755e14f]:hover{background:var(--color-bg-active)}.detail-content[data-v-b755e14f]{padding:2rem;max-width:50rem;margin:0 auto}.detail-title[data-v-b755e14f]{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin:0 0 1.5rem}.detail-cover[data-v-b755e14f]{border-radius:1rem;overflow:hidden;margin-bottom:1.5rem}.detail-cover img[data-v-b755e14f]{width:100%;display:block}.detail-meta[data-v-b755e14f]{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.detail-badge[data-v-b755e14f]{padding:.375rem .875rem;border-radius:2rem;font-size:.875rem;font-weight:700;color:var(--color-text-inverse)}.detail-badge.origin[data-v-b755e14f]{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%)}.detail-badge.derived[data-v-b755e14f]{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-hover) 100%)}.detail-difficulty[data-v-b755e14f]{font-size:.875rem;color:var(--color-text-secondary);font-weight:600}.detail-desc[data-v-b755e14f]{font-size:1rem;color:var(--color-text-secondary);line-height:1.75;margin:0 0 2rem}.detail-author[data-v-b755e14f]{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:var(--color-bg-sidebar);border-radius:1rem;margin-bottom:2rem}.detail-author .author-avatar[data-v-b755e14f]{width:3rem;height:3rem;border-radius:50%;overflow:hidden}.detail-author .author-avatar img[data-v-b755e14f]{width:100%;height:100%;object-fit:cover}.detail-author .author-avatar.placeholder[data-v-b755e14f]{background:var(--color-accent);color:var(--color-accent-text);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700}.detail-author .author-name[data-v-b755e14f]{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.25rem}.detail-author .author-label[data-v-b755e14f]{font-size:.875rem;color:var(--color-text-secondary)}.detail-actions[data-v-b755e14f]{display:flex;gap:1rem}.action-btn[data-v-b755e14f]{flex:1;padding:.875rem 1.5rem;border:none;border-radius:.75rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;background:var(--color-bg-hover);color:var(--color-text-primary)}.action-btn[data-v-b755e14f]:hover{background:var(--color-bg-active);transform:translateY(-.125rem)}.action-btn.primary[data-v-b755e14f]{background:var(--color-accent);color:var(--color-accent-text);box-shadow:var(--shadow-md)}.action-btn.primary[data-v-b755e14f]:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-lg)}@media (max-width: 768px){.feed[data-v-b755e14f]{grid-template-columns:1fr;gap:1rem;padding:1rem}.filters[data-v-b755e14f]{padding:1rem}}.login-standalone[data-v-6c2514d6]{width:100%;height:100vh;display:flex;flex-direction:column}.app-view[data-v-6c2514d6]{flex:1;min-height:0;display:flex;flex-direction:column}.ds-modal-lg[data-v-6c2514d6]{max-width:75rem;max-height:90vh}.ds-modal-body[data-v-6c2514d6]{background:var(--color-bg-page)}:root{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;--g-brand-50: rgb(255 190 92 / .1);--g-brand-100: rgb(255 190 92 / .15);--g-brand-150: rgb(255 190 92 / .2);--g-brand-200: rgb(255 190 92 / .3);--g-brand-250: rgb(255 190 92 / .4);--g-brand-300: rgb(255 190 92 / .5);--g-brand-350: rgb(255 190 92 / .6);--g-brand-400: rgb(255 190 92 / .7);--g-brand-450: rgb(255 190 92 / .8);--g-brand-500: rgb(255 190 92 / .9);--g-brand-550: rgb(255 190 92);--g-brand-solid-50: rgb(255 249 239);--g-brand-solid-100: rgb(255 245 231);--g-brand-solid-150: rgb(255 242 222);--g-brand-solid-200: rgb(255 236 206);--g-brand-solid-250: rgb(255 229 190);--g-brand-solid-300: rgb(255 223 174);--g-brand-solid-350: rgb(255 216 157);--g-brand-solid-400: rgb(255 210 141);--g-brand-solid-450: rgb(255 203 125);--g-brand-solid-500: rgb(255 197 108);--g-brand-solid-550: rgb(255 190 92);--g-brand-solid-600: rgb(233 174 86);--g-brand-solid-650: rgb(211 158 80);--g-brand-solid-700: rgb(189 142 75);--g-brand-solid-750: rgb(167 126 69);--g-brand-solid-800: rgb(145 110 63);--g-brand-solid-850: rgb(122 93 57);--g-brand-solid-900: rgb(100 77 51);--g-brand-solid-950: rgb(78 61 46);--g-brand-solid-1000: rgb(67 53 43);--color-text-primary: #1A1A1A;--color-text-secondary: #888888;--color-text-placeholder: #BBBBBB;--color-text-inverse: #FFFFFF;--color-text-brand: var(--g-brand-solid-700);--color-text-link: var(--g-brand-solid-600);--color-text-link-hover: var(--g-brand-solid-800);--color-bg-page: #FFFFFF;--color-bg-card: #FFFFFF;--color-bg-sidebar: #FAFAFA;--color-bg-topbar: #FFFFFF;--color-bg-hover: #F5F5F5;--color-bg-active: #EEEEEE;--color-bg-overlay: rgba(0, 0, 0, .45);--color-bg-mask: rgba(0, 0, 0, .3);--color-bg-brand: var(--g-brand-solid-550);--color-bg-brand-hover: var(--g-brand-solid-600);--color-bg-brand-light: var(--g-brand-solid-100);--color-bg-selection: var(--g-brand-200);--color-bg-selection-hover: var(--g-brand-300);--color-border: #EEEEEE;--color-border-light: #F5F5F5;--color-border-dark: #DDDDDD;--color-divider: #EEEEEE;--color-line-brand: var(--g-brand-solid-600);--color-accent: var(--g-brand-solid-550);--color-accent-hover: var(--g-brand-solid-600);--color-accent-active: var(--g-brand-solid-650);--color-accent-light: var(--g-brand-solid-100);--color-accent-text: var(--g-brand-solid-1000);--color-danger: #E53935;--color-danger-hover: #C62828;--color-danger-light: #FFF0F0;--color-danger-border: #FECACA;--color-success: #43A047;--color-success-hover: #2E7D32;--color-success-light: #F0FFF0;--color-success-border: #BBF7D0;--color-warning: #FB8C00;--color-warning-hover: #E65100;--color-warning-light: #FFF8E1;--color-info: #1E88E5;--color-info-light: #E3F2FD;--color-shadow: rgba(0, 0, 0, .15);--color-like: #E53935;--color-favorite: #FB8C00;--color-tag-bg: var(--g-brand-solid-550);--color-tag-text: var(--g-brand-solid-1000);--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 20px;--space-2xl: 24px;--space-3xl: 32px;--space-4xl: 40px;--space-5xl: 48px;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;--font-family-monospace: "Roboto Mono", "Monaco", "Consolas", "Liberation Mono", monospace;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-md: 15px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 20px;--font-size-3xl: 24px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.65;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px rgba(0, 0, 0, .05), 0 2px 4px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .06), 0 4px 6px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .08), 0 8px 10px rgba(0, 0, 0, .04);--sidebar-width: 72px;--sidebar-width-collapsed: 72px;--sidebar-width-expanded: 200px;--topbar-height: 56px;--content-max-width: 1440px;--content-padding: 24px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--transition-spring: .3s cubic-bezier(.4, 0, .2, 1);--z-sidebar: 100;--z-topbar: 110;--z-dropdown: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--z-tooltip: 600}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background:var(--color-bg-page)}button,input,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}ul,ol{list-style:none}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-inverse{color:var(--color-text-inverse)}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-info{color:var(--color-info)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-md{font-size:var(--font-size-md)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.font-regular{font-weight:var(--font-weight-regular)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-y-auto{overflow-y:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.m-xs{margin:var(--space-xs)}.m-sm{margin:var(--space-sm)}.m-md{margin:var(--space-md)}.m-lg{margin:var(--space-lg)}.m-xl{margin:var(--space-xl)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mt-2xl{margin-top:var(--space-2xl)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.ml-sm{margin-left:var(--space-sm)}.ml-md{margin-left:var(--space-md)}.mr-sm{margin-right:var(--space-sm)}.mr-md{margin-right:var(--space-md)}.p-xs{padding:var(--space-xs)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.p-2xl{padding:var(--space-2xl)}.px-sm{padding-left:var(--space-sm);padding-right:var(--space-sm)}.px-md{padding-left:var(--space-md);padding-right:var(--space-md)}.px-lg{padding-left:var(--space-lg);padding-right:var(--space-lg)}.px-xl{padding-left:var(--space-xl);padding-right:var(--space-xl)}.py-sm{padding-top:var(--space-sm);padding-bottom:var(--space-sm)}.py-md{padding-top:var(--space-md);padding-bottom:var(--space-md)}.py-lg{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.ds-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.ds-card-hover{transition:box-shadow var(--transition-normal),transform var(--transition-normal);cursor:pointer}.ds-card-hover:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:8px 16px;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:1;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;outline:none}.ds-btn:active{transform:scale(.97)}.ds-btn-primary{background:var(--color-accent);color:var(--color-accent-text);border-color:var(--color-accent)}.ds-btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.ds-btn-secondary{background:var(--color-bg-card);color:var(--color-text-primary);border-color:var(--color-border)}.ds-btn-secondary:hover{background:var(--color-bg-hover);border-color:var(--color-border-dark)}.ds-btn-ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.ds-btn-ghost:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.ds-btn-danger{background:var(--color-danger);color:var(--color-text-inverse);border-color:var(--color-danger)}.ds-btn-danger:hover{background:#c62828}.ds-btn-sm{padding:5px 12px;font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.ds-btn-lg{padding:12px 24px;font-size:var(--font-size-md);border-radius:var(--radius-lg)}.ds-btn-icon{width:36px;height:36px;padding:0;border-radius:var(--radius-md)}.ds-btn-icon.ds-btn-sm{width:28px;height:28px}.ds-btn[disabled],.ds-btn.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.ds-tag{display:inline-flex;align-items:center;padding:2px 8px;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);line-height:1.5;white-space:nowrap}.ds-tag-dark{background:var(--color-tag-bg);color:var(--color-tag-text)}.ds-tag-light{background:var(--color-bg-active);color:var(--color-text-primary)}.ds-tag-outline{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary)}.ds-input{width:100%;padding:8px 12px;font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ds-input::placeholder{color:var(--color-text-placeholder)}.ds-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #ffbe5c26}.ds-input-sm{padding:5px 10px;font-size:var(--font-size-sm)}.ds-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);overflow:hidden;background:var(--color-bg-active);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);flex-shrink:0}.ds-avatar img{width:100%;height:100%;object-fit:cover}.ds-avatar-sm{width:24px;height:24px;font-size:10px}.ds-avatar-md{width:32px;height:32px;font-size:12px}.ds-avatar-lg{width:40px;height:40px;font-size:14px}.ds-avatar-xl{width:48px;height:48px;font-size:16px}.ds-divider{width:100%;height:1px;background:var(--color-divider);border:none}.ds-divider-vertical{width:1px;height:auto;align-self:stretch;background:var(--color-divider)}.ds-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-4xl) var(--space-2xl);text-align:center}.ds-empty-icon{font-size:40px;color:var(--color-text-placeholder);margin-bottom:var(--space-lg)}.ds-empty-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.ds-empty-desc{font-size:var(--font-size-sm);color:var(--color-text-placeholder);max-width:320px}.ds-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#11182773;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-2xl);animation:ds-modal-mask-in .2s ease-out}@keyframes ds-modal-mask-in{0%{opacity:0}to{opacity:1}}.ds-modal{width:100%;max-width:720px;max-height:85vh;background:var(--color-bg-card);border-radius:20px;box-shadow:0 24px 64px #1118273d,0 2px 8px #11182714;display:flex;flex-direction:column;overflow:hidden;animation:ds-modal-in .28s cubic-bezier(.16,1,.3,1)}@keyframes ds-modal-in{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.ds-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px 24px;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%)}.ds-modal-header-text{display:flex;flex-direction:column;gap:4px;min-width:0}.ds-modal-title{font-size:19px;font-weight:800;color:var(--color-accent-text);letter-spacing:.01em;margin:0}.ds-modal-subtitle{font-size:12px;font-weight:500;color:var(--color-accent-text);opacity:.72}.ds-modal-close{flex-shrink:0;width:30px;height:30px;border:none;border-radius:50%;background:#ffffff38;color:var(--color-accent-text);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;transition:background .15s}.ds-modal-close:hover{background:#ffffff61;color:var(--color-accent-text)}.ds-modal-body{flex:1;overflow-y:auto;padding:20px 24px;background:var(--color-bg-sidebar)}.ds-modal-footer{display:flex;align-items:center;gap:10px;padding:16px 24px;background:var(--color-bg-card);border-top:1px solid var(--color-border-light)}.ds-modal-btn{flex:1;height:44px;border:none;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:6px}.ds-modal-btn.cancel{color:var(--color-text-primary);background:var(--color-bg-hover)}.ds-modal-btn.cancel:hover{background:var(--color-border-dark)}.ds-modal-btn.confirm{color:var(--color-accent-text);background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%);box-shadow:0 6px 16px var(--color-accent-light)}.ds-modal-btn.confirm:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px var(--color-accent-light)}.ds-modal-btn.danger{color:var(--color-danger);background:var(--color-danger-light)}.ds-modal-btn.danger:hover{color:var(--color-text-inverse);background:var(--color-danger)}.ds-modal-btn:disabled{opacity:.55;cursor:not-allowed}.ds-toast{position:fixed;top:calc(var(--topbar-height) + var(--space-lg));left:50%;transform:translate(-50%);padding:10px 20px;background:var(--color-accent);color:var(--color-accent-text);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);box-shadow:var(--shadow-lg);z-index:var(--z-toast);pointer-events:none;animation:ds-toast-in .3s ease,ds-toast-out .3s ease 1.7s forwards}@keyframes ds-toast-in{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes ds-toast-out{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-8px)}}.ds-loading-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#ffffffd9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);z-index:var(--z-overlay)}.ds-loading-spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-bg-brand);border-radius:var(--radius-full);animation:ds-spin .8s linear infinite}@keyframes ds-spin{to{transform:rotate(360deg)}}.ds-loading-text{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ds-scrollbar::-webkit-scrollbar{width:6px;height:6px}.ds-scrollbar::-webkit-scrollbar-track{background:transparent}.ds-scrollbar::-webkit-scrollbar-thumb{background:var(--color-border-dark);border-radius:var(--radius-full)}.ds-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--color-text-placeholder)}.ds-tabs{display:flex;align-items:center;gap:var(--space-xl);border-bottom:1px solid var(--color-divider)}.ds-tab{position:relative;padding:var(--space-md) 0;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-text-secondary);cursor:pointer;background:none;border:none;transition:color var(--transition-fast)}.ds-tab:hover{color:var(--color-text-primary)}.ds-tab-active{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.ds-tab-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--color-line-brand);border-radius:1px}.ds-stepper{display:inline-flex;align-items:center;gap:var(--space-sm)}.ds-stepper-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text-primary);cursor:pointer;font-size:var(--font-size-lg);transition:all var(--transition-fast)}.ds-stepper-btn:hover{background:var(--color-bg-hover);border-color:var(--color-border-dark)}.ds-stepper-value{min-width:40px;text-align:center;font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.ds-fade-enter-active,.ds-fade-leave-active{transition:opacity var(--transition-normal)}.ds-fade-enter-from,.ds-fade-leave-to{opacity:0}.ds-slide-up-enter-active,.ds-slide-up-leave-active{transition:all var(--transition-spring)}.ds-slide-up-enter-from,.ds-slide-up-leave-to{opacity:0;transform:translateY(12px)}.ds-scale-enter-active,.ds-scale-leave-active{transition:all var(--transition-spring)}.ds-scale-enter-from,.ds-scale-leave-to{opacity:0;transform:scale(.95)}.ds-grid{display:grid;gap:var(--space-lg)}.ds-grid-2{grid-template-columns:repeat(2,1fr)}.ds-grid-3{grid-template-columns:repeat(3,1fr)}.ds-grid-4{grid-template-columns:repeat(4,1fr)}.ds-grid-5{grid-template-columns:repeat(5,1fr)}@media (max-width: 1200px){.ds-grid-4{grid-template-columns:repeat(3,1fr)}.ds-grid-5{grid-template-columns:repeat(4,1fr)}}@media (max-width: 900px){.ds-grid-3,.ds-grid-4{grid-template-columns:repeat(2,1fr)}.ds-grid-5{grid-template-columns:repeat(3,1fr)}}@media (max-width: 600px){.ds-grid-2,.ds-grid-3,.ds-grid-4,.ds-grid-5{grid-template-columns:1fr}}html,body,#app{margin:0;height:100%}body{font-family:var(--font-family);background:var(--color-bg-page);color:var(--color-text-primary)}button,input,textarea{font:inherit}*{box-sizing:border-box}.craft-sidebar[data-v-6daed548]{width:120px;background:var(--color-bg-card);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;overflow-x:hidden}.craft-tools[data-v-6daed548]{padding:8px;display:flex;flex-direction:column;gap:2px}.craft-tool-btn[data-v-6daed548]{display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;border-radius:8px;background:transparent;cursor:pointer;transition:all .12s ease;-webkit-user-select:none;user-select:none}.craft-tool-btn[data-v-6daed548]:hover,.craft-tool-active[data-v-6daed548]{background:var(--color-bg-hover)}.craft-tool-active .craft-tool-label[data-v-6daed548]{font-weight:600;color:var(--color-text-primary)}.craft-tool-icon[data-v-6daed548]{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);flex-shrink:0}.craft-tool-active .craft-tool-icon[data-v-6daed548]{color:var(--color-text-primary)}.craft-tool-icon[data-v-6daed548] svg{width:100%;height:100%}.icon-tube[data-v-6daed548]{width:18px;height:6px;border-radius:3px}.icon-panel[data-v-6daed548]{width:14px;height:14px;border-radius:2px}.craft-tool-label[data-v-6daed548]{font-size:13px;color:var(--color-text-primary);white-space:nowrap;line-height:1}.craft-divider[data-v-6daed548]{height:1px;background:var(--color-border);margin:4px 12px}.craft-sub-tools[data-v-6daed548]{padding:4px 8px 8px;display:flex;flex-direction:column;gap:2px;animation:subSlideIn-6daed548 .12s ease}@keyframes subSlideIn-6daed548{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.craft-sub-btn[data-v-6daed548]{padding:8px 12px;border:none;border-radius:6px;background:transparent;font-size:13px;color:var(--color-text-primary);cursor:pointer;transition:all .12s ease;text-align:left;white-space:nowrap;-webkit-user-select:none;user-select:none}.craft-sub-btn[data-v-6daed548]:hover{background:var(--color-bg-hover)}.craft-sub-active[data-v-6daed548]{background:var(--color-accent);color:var(--color-accent-text)}.craft-sub-active[data-v-6daed548]:hover{background:var(--color-accent-hover)}.craft-sub-color[data-v-6daed548]{display:flex;align-items:center;gap:6px}.craft-color-dot[data-v-6daed548]{width:12px;height:12px;border-radius:50%;border:1.5px solid var(--color-border);flex-shrink:0}.craft-sub-active .craft-color-dot[data-v-6daed548]{border-color:#fff6}.craft-sub-hint[data-v-6daed548]{padding:8px 12px 8px 42px;font-size:12px;color:var(--color-text-secondary);line-height:1.4}.craft-sub-section-title[data-v-6daed548]{padding:6px 12px 2px;font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;-webkit-user-select:none;user-select:none}.craft-sub-divider[data-v-6daed548]{height:1px;background:var(--color-border);margin:4px 8px}.craft-sub-btn-icon[data-v-6daed548]{display:flex;align-items:center;gap:6px}.craft-sub-icon[data-v-6daed548]{width:16px;height:16px;flex-shrink:0}.color-picker-panel[data-v-863489b6]{position:absolute;left:8px;right:8px;top:66px;padding:12px;border-radius:8px;background:#fffffff5;box-shadow:var(--shadow-lg);z-index:100;border:1px solid var(--color-border)}.color-picker-header[data-v-863489b6]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--color-border-light)}.color-picker-title[data-v-863489b6]{font-size:14px;font-weight:700;color:var(--color-text-primary)}.color-picker-close-btn[data-v-863489b6]{border:none;background:var(--color-accent);color:var(--color-text-inverse);padding:4px 12px;border-radius:4px;font-size:12px;cursor:pointer;font-weight:700;transition:background .15s}.color-picker-close-btn[data-v-863489b6]:hover{background:var(--color-accent-hover)}.color-picker-body[data-v-863489b6]{max-height:220px;overflow-y:auto;padding-right:4px}.color-picker-body[data-v-863489b6]::-webkit-scrollbar{width:4px}.color-picker-body[data-v-863489b6]::-webkit-scrollbar-thumb{background:var(--color-border-dark);border-radius:2px}.color-section-title[data-v-863489b6]{font-size:11px;font-weight:700;color:var(--color-text-placeholder);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;margin-top:8px}.color-section-title[data-v-863489b6]:first-child{margin-top:0}.color-row[data-v-863489b6]{display:flex;flex-wrap:wrap;gap:6px}.color-swatch[data-v-863489b6]{width:28px;height:28px;border-radius:50%;border:2px solid var(--color-text-inverse);box-shadow:0 0 0 1px #00000026;cursor:pointer;transition:transform .15s,box-shadow .15s}.color-swatch[data-v-863489b6]:hover{transform:scale(1.1)}.color-swatch-active[data-v-863489b6]{transform:scale(1.15);box-shadow:0 0 0 2px var(--color-accent)}.extra-color-group[data-v-863489b6]{margin-top:8px}.scheme-section[data-v-863489b6]{margin-top:10px}.scheme-row[data-v-863489b6]{display:flex;flex-wrap:wrap;gap:8px}.scheme-chip[data-v-863489b6]{display:flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;border:1.5px solid var(--color-border);border-radius:999px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s}.scheme-chip[data-v-863489b6]:hover{border-color:var(--color-border-dark)}.scheme-chip-active[data-v-863489b6]{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.scheme-dots[data-v-863489b6]{display:inline-flex}.scheme-dot[data-v-863489b6]{width:16px;height:16px;border-radius:50%;border:1.5px solid #fff;margin-left:-6px;box-shadow:0 0 0 1px #0000001f}.scheme-dot[data-v-863489b6]:first-child{margin-left:0}.scheme-name[data-v-863489b6]{font-size:12px;font-weight:600;color:var(--color-text-primary)}.tube-editor-menu[data-v-bf211662]{position:absolute;z-index:101;white-space:nowrap;display:flex;gap:6px;background:#0f172ab8;padding:6px;border-radius:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 10px 25px #00000040}.tube-editor-action[data-v-bf211662]{width:36px;height:36px;border:none;border-radius:50%;text-align:center;font-size:11px;font-weight:700;color:var(--color-text-inverse);background:var(--color-bg-selection);cursor:pointer;transition:transform .15s,background .15s;display:flex;align-items:center;justify-content:center}.tube-editor-action[data-v-bf211662]:hover{transform:scale(1.1);background:var(--color-border-dark)}.tube-editor-action-delete[data-v-bf211662]{background:var(--color-danger)}.tube-editor-action-delete[data-v-bf211662]:hover{background:var(--color-danger-hover)}.tube-editor-action-warning[data-v-bf211662]{background:var(--color-warning)}.tube-editor-action-warning[data-v-bf211662]:hover{background:var(--color-warning-hover)}.double-clamp-angle-panel[data-v-3771e56b]{position:absolute;right:8px;top:120px;z-index:118;width:130px;padding:12px;border-radius:12px;background:#0f172af0;box-shadow:0 10px 25px #0f172a4d;border:1px solid rgba(255,255,255,.1)}.double-clamp-angle-title[data-v-3771e56b]{text-align:center;font-size:13px;font-weight:700;color:var(--color-text-inverse)}.double-clamp-angle-tip[data-v-3771e56b]{margin-top:4px;text-align:center;font-size:10px;color:var(--color-info-light)}.double-clamp-angle-ring[data-v-3771e56b]{position:relative;width:80px;height:80px;margin:10px auto;border:6px solid var(--color-accent);border-radius:50%;box-sizing:border-box;cursor:pointer}.double-clamp-angle-thumb[data-v-3771e56b]{position:absolute;left:0;top:0;width:12px;height:12px;border-radius:50%;background:var(--color-bg-card);box-shadow:0 0 0 2px #2563eb73;will-change:transform}.double-clamp-angle-ring-text[data-v-3771e56b]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;font-size:15px;font-weight:800;color:var(--color-info-light);pointer-events:none}.double-clamp-angle-shortcuts[data-v-3771e56b]{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.double-clamp-angle-shortcut[data-v-3771e56b]{height:22px;border:none;border-radius:4px;text-align:center;font-size:10px;font-weight:800;color:var(--color-info-light);background:#60a5fa38;cursor:pointer}.double-clamp-angle-shortcut[data-v-3771e56b]:hover{background:#60a5fa59}.double-clamp-angle-switch[data-v-3771e56b]{width:100%;height:24px;border:none;margin-top:6px;border-radius:4px;text-align:center;font-size:11px;font-weight:800;color:var(--color-success-light);background:#22c55e38;cursor:pointer}.double-clamp-angle-switch[data-v-3771e56b]:hover{background:#22c55e59}.double-clamp-angle-field[data-v-3771e56b]{display:flex;align-items:center;height:26px;margin-top:6px}.double-clamp-angle-label[data-v-3771e56b]{width:32px;font-size:11px;font-weight:700;color:var(--color-info-light)}.double-clamp-angle-input[data-v-3771e56b]{flex:1;height:24px;border:1px solid rgba(255,255,255,.1);border-radius:4px;box-sizing:border-box;font-size:12px;color:var(--color-text-inverse);background:#ffffff24;padding:0 6px}.double-clamp-angle-calc-button[data-v-3771e56b]{width:100%;height:28px;border:none;margin-top:8px;border-radius:4px;text-align:center;font-size:12px;font-weight:800;color:var(--color-text-primary);background:var(--color-info);cursor:pointer}.double-clamp-angle-calc-button[data-v-3771e56b]:hover{background:var(--color-info-hover)}.double-clamp-angle-actions[data-v-3771e56b]{margin-top:10px;display:flex;gap:6px}.double-clamp-angle-delete[data-v-3771e56b],.double-clamp-angle-close[data-v-3771e56b]{flex:1;height:28px;border:none;border-radius:4px;text-align:center;font-size:12px;font-weight:700;color:var(--color-text-inverse);cursor:pointer}.double-clamp-angle-delete[data-v-3771e56b]{background:var(--color-danger)}.double-clamp-angle-delete[data-v-3771e56b]:hover{background:var(--color-danger-hover)}.double-clamp-angle-close[data-v-3771e56b]{background:var(--color-accent)}.double-clamp-angle-close[data-v-3771e56b]:hover{background:var(--color-accent-hover)}.move-pad[data-v-194fec50]{position:absolute;left:50%;bottom:80px;z-index:96;display:flex;align-items:center;gap:8px;transform:translate(-50%)}.move-pad-main[data-v-194fec50]{padding:8px;border-radius:8px;background:#111827e6;box-shadow:0 10px 25px #0000004d}.move-pad-row[data-v-194fec50]{display:flex;gap:6px;margin-bottom:6px}.move-pad-title[data-v-194fec50]{font-size:11px;font-weight:700;color:#ffffffb3;text-align:center;margin-bottom:6px}.move-pad-wide[data-v-194fec50]{width:auto;flex:1;padding:0 12px;white-space:nowrap}.move-pad-button[data-v-194fec50],.move-step-button[data-v-194fec50]{width:38px;height:38px;border:none;border-radius:6px;text-align:center;font-size:13px;font-weight:700;color:var(--color-text-inverse);background:#ffffff29;cursor:pointer;transition:background .15s}.move-pad-button[data-v-194fec50]:hover,.move-step-button[data-v-194fec50]:hover{background:#ffffff47}.move-step-row[data-v-194fec50]{display:flex;gap:6px}.move-step-value[data-v-194fec50]{width:38px;height:38px;background:var(--color-accent);border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center}.move-step-number[data-v-194fec50]{font-size:13px;font-weight:700;color:#fff;line-height:1.1}.move-step-unit[data-v-194fec50]{font-size:8px;font-weight:600;color:#fffc;line-height:1}.move-delete-button[data-v-194fec50]{width:100%;height:30px;border:none;margin-top:8px;border-radius:6px;text-align:center;font-size:11px;font-weight:700;color:var(--color-text-inverse);background:var(--color-danger);cursor:pointer;transition:background .15s}.move-delete-button[data-v-194fec50]:hover{background:var(--color-danger-hover)}.rainbow-bridge-panel[data-v-af54518c]{position:absolute;left:8px;right:8px;bottom:80px;z-index:117;padding:12px;border-radius:10px;background:#0f172af0;box-shadow:0 10px 25px #0f172a59;border:1px solid rgba(255,255,255,.1)}.rainbow-bridge-title[data-v-af54518c]{font-size:14px;font-weight:800;color:var(--color-text-inverse);line-height:1.2}.rainbow-bridge-tip[data-v-af54518c]{margin-top:4px;font-size:11px;color:#ffffffad}.rainbow-bridge-row[data-v-af54518c]{display:flex;align-items:center;justify-content:space-between;min-height:32px;margin-top:8px}.rainbow-bridge-label[data-v-af54518c]{width:64px;font-size:12px;font-weight:700;color:#ffffffe6}.rainbow-bridge-stepper[data-v-af54518c],.rainbow-bridge-segments[data-v-af54518c]{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:4px}.rainbow-bridge-step-button[data-v-af54518c],.rainbow-bridge-step-value[data-v-af54518c],.rainbow-bridge-segment[data-v-af54518c]{min-width:32px;height:26px;border:none;border-radius:4px;text-align:center;font-size:12px;font-weight:800;color:var(--color-text-inverse);background:#ffffff29;cursor:pointer;display:flex;align-items:center;justify-content:center}.rainbow-bridge-step-button[data-v-af54518c]:hover,.rainbow-bridge-segment[data-v-af54518c]:hover{background:#ffffff47}.rainbow-bridge-step-value[data-v-af54518c]{min-width:44px;color:var(--color-text-primary);background:var(--color-bg-card)}.rainbow-bridge-segment[data-v-af54518c]{min-width:42px;font-size:11px}.rainbow-bridge-segment-active[data-v-af54518c]{color:var(--color-text-inverse);background:var(--color-accent)}.rainbow-bridge-color-row[data-v-af54518c]{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.rainbow-bridge-color-swatch[data-v-af54518c]{width:24px;height:24px;border:none;border-radius:50%;box-shadow:inset 0 0 0 2px #ffffffb8;text-align:center;font-size:10px;font-weight:900;color:var(--color-text-primary);text-shadow:0 0 2px rgba(255,255,255,.8);cursor:pointer;transition:transform .15s;display:flex;align-items:center;justify-content:center}.rainbow-bridge-color-swatch[data-v-af54518c]:hover{transform:scale(1.1)}.rainbow-bridge-actions[data-v-af54518c]{margin-top:10px;text-align:right}.rainbow-bridge-cancel[data-v-af54518c]{min-width:64px;height:28px;border:none;border-radius:4px;text-align:center;font-size:12px;font-weight:800;color:var(--color-text-inverse);background:#ffffff29;cursor:pointer;transition:background .15s}.rainbow-bridge-cancel[data-v-af54518c]:hover{background:#ffffff47}.auto-connect-panel[data-v-976ce3db]{position:absolute;left:8px;right:8px;bottom:80px;z-index:116;padding:12px;border-radius:10px;background:#0f172af0;box-shadow:0 10px 25px #0f172a4d;border:1px solid rgba(255,255,255,.1)}.auto-connect-title[data-v-976ce3db]{font-size:13px;font-weight:800;color:var(--color-text-inverse)}.auto-connect-route[data-v-976ce3db]{margin-top:4px;font-size:11px;font-weight:700;color:var(--color-success)}.auto-connect-route-tabs[data-v-976ce3db]{display:flex;margin-top:8px;gap:6px}.auto-connect-route-tab[data-v-976ce3db]{flex:1;height:26px;border:none;border-radius:6px;text-align:center;font-size:11px;font-weight:800;color:var(--color-info-light);background:#94a3b847;cursor:pointer;transition:all .15s}.auto-connect-route-tab[data-v-976ce3db]:hover{background:#94a3b86b}.auto-connect-route-tab-active[data-v-976ce3db]{color:var(--color-text-primary);background:var(--color-success-light)}.auto-connect-route-tab-active[data-v-976ce3db]:hover{background:var(--color-success)}.auto-connect-plan-area[data-v-976ce3db]{min-height:48px;margin-top:10px}.auto-connect-options[data-v-976ce3db]{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.auto-connect-option[data-v-976ce3db]{position:relative;height:30px;border:none;border-radius:6px;text-align:center;color:var(--color-info-light);background:#94a3b847;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .15s}.auto-connect-option[data-v-976ce3db]:hover{background:#94a3b86b}.auto-connect-option-active[data-v-976ce3db]{color:var(--color-text-primary);background:var(--color-success-light)}.auto-connect-option-active[data-v-976ce3db]:hover{background:var(--color-success)}.auto-connect-option-text[data-v-976ce3db]{font-size:11px;font-weight:800}.auto-connect-option-tag[data-v-976ce3db]{padding:1px 4px;border-radius:999px;font-size:8px;font-weight:900;color:var(--color-text-primary);background:var(--color-success-light)}.auto-connect-empty[data-v-976ce3db]{height:40px;line-height:40px;text-align:center;font-size:12px;font-weight:700;color:var(--color-text-secondary)}.auto-connect-actions[data-v-976ce3db]{display:flex;gap:8px;margin-top:10px}.auto-connect-cancel[data-v-976ce3db],.auto-connect-confirm[data-v-976ce3db]{flex:1;height:28px;border:none;border-radius:6px;text-align:center;font-size:12px;font-weight:800;cursor:pointer;transition:background .15s}.auto-connect-cancel[data-v-976ce3db]{color:var(--color-text-inverse);background:var(--color-text-secondary)}.auto-connect-cancel[data-v-976ce3db]:hover{background:var(--color-border-dark)}.auto-connect-confirm[data-v-976ce3db]{color:var(--color-text-inverse);background:var(--color-success)}.auto-connect-confirm[data-v-976ce3db]:hover{background:var(--color-success-hover)}.auto-connect-confirm-disabled[data-v-976ce3db]{color:#fff9;background:var(--color-text-secondary)!important;cursor:not-allowed}.colorize-modal[data-v-4d196b9b]{max-width:320px}.colorize-tip[data-v-4d196b9b]{font-size:11px;line-height:1.5;color:var(--color-text-secondary)}.colorize-row[data-v-4d196b9b]{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px;max-height:180px;overflow-y:auto;padding-right:4px}.colorize-row[data-v-4d196b9b]::-webkit-scrollbar{width:4px}.colorize-row[data-v-4d196b9b]::-webkit-scrollbar-thumb{background:var(--color-border-dark);border-radius:2px}.colorize-swatch[data-v-4d196b9b]{width:28px;height:28px;border:2px solid var(--color-border);border-radius:6px;cursor:pointer;transition:transform .15s,border-color .15s}.colorize-swatch[data-v-4d196b9b]:hover{transform:scale(1.08)}.colorize-swatch-active[data-v-4d196b9b]{border-color:var(--color-text-primary);transform:scale(1.1);box-shadow:0 0 0 2px var(--color-shadow)}.assembly-guide-panel[data-v-a65799b0]{position:absolute;left:8px;right:8px;bottom:80px;z-index:126;padding:12px;border-radius:10px;background:#0f172af2;box-shadow:0 10px 25px #0f172a59;border:1px solid rgba(255,255,255,.1);color:var(--color-text-inverse)}.assembly-guide-header[data-v-a65799b0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.1)}.assembly-guide-title[data-v-a65799b0]{font-size:13px;font-weight:800}.assembly-guide-close[data-v-a65799b0]{border:none;background:transparent;color:#fff9;font-size:11px;cursor:pointer}.assembly-guide-close[data-v-a65799b0]:hover{color:var(--color-text-inverse)}.assembly-guide-prep-eyebrow[data-v-a65799b0]{font-size:10px;color:var(--color-success-light);font-weight:700;text-transform:uppercase}.assembly-guide-prep-title[data-v-a65799b0]{font-size:14px;font-weight:800;margin-top:2px}.assembly-guide-prep-desc[data-v-a65799b0]{font-size:10px;color:#fff9;margin-top:2px}.assembly-guide-prep-scroll-wrap[data-v-a65799b0]{position:relative;margin-top:10px;border-radius:6px;overflow:hidden;background:#0003}.assembly-guide-prep-scroll[data-v-a65799b0]{max-height:180px;overflow-y:auto;padding:6px}.assembly-guide-prep-scroll[data-v-a65799b0]::-webkit-scrollbar{width:4px}.assembly-guide-prep-scroll[data-v-a65799b0]::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.assembly-guide-prep-warning-list[data-v-a65799b0]{background:#f59e0b1f;border:1px solid rgba(251,191,36,.3);border-radius:6px;padding:8px;margin-bottom:10px}.assembly-guide-prep-warning-heading[data-v-a65799b0]{font-size:11px;font-weight:800;color:var(--color-warning-light);margin-bottom:4px}.assembly-guide-warning[data-v-a65799b0]{font-size:10px;line-height:1.4;margin-top:4px}.assembly-guide-warning[data-v-a65799b0]:first-child{margin-top:0}.assembly-guide-warning-title[data-v-a65799b0]{font-weight:700;color:var(--color-warning-light)}.assembly-guide-warning-message[data-v-a65799b0]{color:#fffffff2}.assembly-guide-prep-list[data-v-a65799b0]{display:flex;flex-direction:column;gap:6px}.assembly-guide-prep-item[data-v-a65799b0]{display:flex;align-items:center;gap:8px;padding:6px;border-radius:6px;background:#ffffff0f}.assembly-guide-prep-item-thumb[data-v-a65799b0]{width:32px;height:32px;border-radius:4px;background:#ffffff1a;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:#fffc}.assembly-guide-prep-item-info[data-v-a65799b0]{flex:1}.assembly-guide-prep-item-name[data-v-a65799b0]{font-size:11px;font-weight:700}.assembly-guide-prep-item-desc[data-v-a65799b0]{font-size:9px;color:#ffffff80;margin-top:1px}.assembly-guide-prep-item-count[data-v-a65799b0]{font-size:13px;font-weight:800;color:var(--color-success-light)}.assembly-guide-progress[data-v-a65799b0]{font-size:11px;color:var(--color-info);font-weight:700;margin-bottom:6px}.assembly-guide-card[data-v-a65799b0]{padding:10px;border-radius:6px;background:#ffffff0f;margin-bottom:10px}.assembly-guide-step-title[data-v-a65799b0]{font-size:13px;font-weight:700;line-height:1.5}.assembly-guide-warning-list[data-v-a65799b0]{margin-top:8px;background:#ef44441f;border:1px solid rgba(239,68,68,.3);border-radius:6px;padding:6px}.assembly-guide-warning-list .assembly-guide-warning-title[data-v-a65799b0]{color:var(--color-danger-light)}.assembly-guide-actions[data-v-a65799b0]{display:flex;gap:8px;margin-top:10px}.assembly-guide-button[data-v-a65799b0],.assembly-guide-button-primary[data-v-a65799b0]{flex:1;height:32px;border:none;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s;display:flex;align-items:center;justify-content:center}.assembly-guide-button[data-v-a65799b0]{background:#ffffff29;color:#fff}.assembly-guide-button[data-v-a65799b0]:hover:not(:disabled){background:#ffffff47}.assembly-guide-button-primary[data-v-a65799b0]{background:var(--color-success);color:#fff}.assembly-guide-button-primary[data-v-a65799b0]:hover{background:var(--color-success-hover)}.assembly-guide-button-disabled[data-v-a65799b0]{background:#ffffff0f!important;color:#ffffff4d!important;cursor:not-allowed}.assembly-layer-elevator[data-v-c0ce89b6]{position:absolute;right:8px;top:50%;transform:translateY(-50%);z-index:127;width:48px;pointer-events:all;-webkit-user-select:none;user-select:none}.assembly-layer-elevator-trigger[data-v-c0ce89b6]{padding:8px 4px;border-radius:8px;background:#0f172ae6;box-shadow:0 4px 12px #0f172a40;border:1px solid rgba(255,255,255,.15);text-align:center;cursor:pointer;color:var(--color-text-inverse)}.assembly-layer-elevator-trigger-label[data-v-c0ce89b6]{font-size:10px;font-weight:700;color:#ffffffb8}.assembly-layer-elevator-trigger-value[data-v-c0ce89b6]{font-size:15px;font-weight:900;color:var(--color-success);margin-top:2px;line-height:1}.assembly-layer-elevator-trigger-total[data-v-c0ce89b6]{font-size:9px;color:#ffffff8f;line-height:1;margin-top:1px}.assembly-layer-elevator-panel[data-v-c0ce89b6]{padding:8px 4px;border-radius:10px;background:#0f172af0;box-shadow:0 10px 25px #0f172a4d;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;align-items:center}.assembly-layer-elevator-header[data-v-c0ce89b6]{text-align:center;cursor:pointer;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.1);width:100%}.assembly-layer-elevator-header-title[data-v-c0ce89b6]{display:block;font-size:10px;font-weight:700;color:#ffffffb8}.assembly-layer-elevator-header-count[data-v-c0ce89b6]{display:block;font-size:11px;font-weight:800;color:var(--color-success);margin-top:1px}.assembly-layer-elevator-more[data-v-c0ce89b6]{border:none;background:transparent;width:100%;padding:2px 0;display:flex;flex-direction:column;align-items:center;cursor:pointer;line-height:1}.assembly-layer-elevator-more-mark[data-v-c0ce89b6]{font-size:10px;color:var(--color-success);line-height:1}.assembly-layer-elevator-more-text[data-v-c0ce89b6]{font-size:8px;font-weight:700;color:#ffffff8f;transform:scale(.85)}.assembly-layer-elevator-list[data-v-c0ce89b6]{display:flex;flex-direction:column;gap:4px;margin:6px 0;width:100%;align-items:center}.assembly-layer-elevator-item[data-v-c0ce89b6]{border:none;background:transparent;padding:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;cursor:pointer}.assembly-layer-elevator-dot[data-v-c0ce89b6]{width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:#0f172ab8;color:#ffffffe0;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;transition:all .15s}.assembly-layer-elevator-item:hover .assembly-layer-elevator-dot[data-v-c0ce89b6]{border-color:var(--color-text-inverse);color:var(--color-text-inverse)}.assembly-layer-elevator-item-active .assembly-layer-elevator-dot[data-v-c0ce89b6]{background:var(--color-success);color:var(--color-text-primary);border-color:var(--color-success-light);box-shadow:0 0 6px #22c55e66}.perf-monitor-panel[data-v-c251ffe0]{position:absolute;right:8px;width:220px;z-index:97;padding:8px 10px;border-radius:8px;background:#090d14e6;box-shadow:0 4px 12px #0f172a40;border:1px solid rgba(255,255,255,.1);color:var(--color-text-inverse);pointer-events:all;transition:top .2s,width .2s}.perf-monitor-panel-expanded[data-v-c251ffe0]{width:calc(100% - 16px);max-height:72vh;overflow-y:auto;left:8px;right:8px}.perf-pos-top[data-v-c251ffe0]{top:10px}.perf-pos-default[data-v-c251ffe0]{top:60px}.perf-pos-active-group[data-v-c251ffe0]{top:100px}.perf-monitor-header[data-v-c251ffe0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.1)}.perf-monitor-title[data-v-c251ffe0]{font-size:11px;font-weight:700;text-transform:uppercase;color:#ffffff80;letter-spacing:.05em}.perf-monitor-header-actions[data-v-c251ffe0]{display:flex;gap:4px}.perf-monitor-detail-toggle[data-v-c251ffe0],.perf-monitor-close[data-v-c251ffe0]{border:none;background:#ffffff1a;color:var(--color-text-inverse);font-size:10px;padding:2px 6px;border-radius:3px;cursor:pointer}.perf-monitor-detail-toggle[data-v-c251ffe0]:hover,.perf-monitor-close[data-v-c251ffe0]:hover{background:#fff3}.perf-monitor-close[data-v-c251ffe0]{padding:2px 4px}.perf-monitor-metrics[data-v-c251ffe0]{display:flex;gap:6px;justify-content:space-between}.perf-monitor-metric[data-v-c251ffe0]{flex:1;display:flex;flex-direction:column;align-items:center;background:#ffffff0f;padding:4px;border-radius:4px}.perf-monitor-metric-label[data-v-c251ffe0]{font-size:8px;color:#ffffff80;text-transform:uppercase;line-height:1}.perf-monitor-metric-value[data-v-c251ffe0]{font-size:13px;font-weight:800;margin-top:2px;line-height:1.1}.level-green[data-v-c251ffe0]{color:var(--color-success)}.level-orange[data-v-c251ffe0]{color:var(--color-warning)}.level-red[data-v-c251ffe0]{color:var(--color-danger)}.perf-monitor-body[data-v-c251ffe0]{margin-top:10px;display:flex;flex-direction:column;gap:10px}.perf-monitor-section[data-v-c251ffe0]{background:#00000026;padding:6px;border-radius:6px}.perf-monitor-section-title[data-v-c251ffe0]{font-size:10px;font-weight:800;color:var(--color-text-secondary);margin-bottom:4px;border-bottom:1px dashed rgba(255,255,255,.08);padding-bottom:2px}.perf-monitor-inline-list[data-v-c251ffe0]{display:flex;flex-wrap:wrap;gap:4px}.perf-monitor-inline-item[data-v-c251ffe0]{font-size:9px;background:#ffffff0a;padding:2px 4px;border-radius:3px;color:#ffffffb8}.perf-monitor-breakdown-grid[data-v-c251ffe0]{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.perf-monitor-breakdown-card[data-v-c251ffe0]{display:flex;flex-direction:column;align-items:center;background:#ffffff0a;padding:4px 2px;border-radius:4px;text-align:center}.breakdown-card-label[data-v-c251ffe0]{font-size:7px;color:#fff6;transform:scale(.9);line-height:1.1}.breakdown-card-value[data-v-c251ffe0]{font-size:11px;font-weight:700;margin-top:2px}.page[data-v-beb997b2]{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--color-bg-page)}.workspace[data-v-beb997b2]{flex:1;min-height:0;display:flex}.viewer-card[data-v-beb997b2]{position:relative;flex:1;min-width:0;overflow:hidden}.viewer-canvas[data-v-beb997b2]{width:100%;height:100%;min-height:100%;border-radius:0;background:var(--color-bg-hover);overflow:hidden}.toast[data-v-beb997b2]{position:absolute;bottom:60px;left:50%;transform:translate(-50%);background:var(--color-accent);color:var(--color-text-inverse);padding:8px 18px;border-radius:var(--radius-full);font-size:var(--font-size-sm);pointer-events:none;white-space:nowrap;z-index:var(--z-toast);box-shadow:var(--shadow-lg)}.loading-mask[data-v-beb997b2]{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffb8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);border-radius:var(--radius-lg);font-size:var(--font-size-sm);color:var(--color-text-secondary);z-index:var(--z-overlay)}.loading-svg[data-v-beb997b2]{width:64px;height:64px}@keyframes spin-beb997b2{to{transform:rotate(360deg)}}.preview-actions[data-v-beb997b2]{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:10px;z-index:var(--z-dropdown)}.preview-btn[data-v-beb997b2]{width:76px;height:38px;border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);background:var(--color-accent);font-weight:var(--font-weight-bold);font-size:var(--font-size-xs);cursor:pointer;box-shadow:var(--shadow-md);transition:background var(--transition-fast)}.preview-btn[data-v-beb997b2]:hover{background:var(--color-accent-hover)}.preview-btn.cancel[data-v-beb997b2]{background:var(--color-text-secondary)}.preview-btn.cancel[data-v-beb997b2]:hover{background:var(--color-text-primary)}.custom-length-mask[data-v-beb997b2]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);background:var(--color-bg-mask);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--space-lg)}.custom-length-dialog[data-v-beb997b2]{max-width:280px}.custom-length-field[data-v-beb997b2]{display:flex;align-items:center;justify-content:center;gap:var(--space-sm)}.custom-length-input[data-v-beb997b2]{width:100px;height:32px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-align:center;background:var(--color-bg-hover)}.custom-length-input[data-v-beb997b2]:focus{outline:none;border-color:var(--color-accent);background:var(--color-bg-card)}.custom-length-unit[data-v-beb997b2]{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-text-secondary)}.color-picker-mask[data-v-beb997b2]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:99;cursor:pointer}.shortcut-dialog[data-v-beb997b2]{max-width:600px}.shortcut-list[data-v-beb997b2]{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-xl)}.shortcut-item[data-v-beb997b2]{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-hover);transition:all var(--transition-fast)}.shortcut-item[data-v-beb997b2]:hover{background:var(--color-bg-active);border-color:var(--color-border-dark)}.shortcut-key-input[data-v-beb997b2]{width:80px;height:40px;text-align:center;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);box-shadow:var(--shadow-xs);cursor:pointer;transition:all var(--transition-fast)}.shortcut-key-input[data-v-beb997b2]:focus{outline:none;border-color:var(--color-accent);background:var(--color-info-light)}.shortcut-arrow[data-v-beb997b2]{font-size:var(--font-size-lg);color:var(--color-text-placeholder)}.shortcut-tool-select[data-v-beb997b2]{flex:1;height:40px;padding:0 var(--space-md);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast)}.shortcut-tool-select[data-v-beb997b2]:hover{border-color:var(--color-border-dark)}.shortcut-tool-select[data-v-beb997b2]:focus{outline:none;border-color:var(--color-accent)}.shortcut-delete-btn[data-v-beb997b2]{width:32px;height:32px;border:none;border-radius:var(--radius-md);background:var(--color-danger-light);color:var(--color-danger);font-size:var(--font-size-lg);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.shortcut-delete-btn[data-v-beb997b2]:hover{background:var(--color-danger);color:var(--color-text-inverse)}.shortcut-add-btn[data-v-beb997b2]{width:100%;height:44px;border:2px dashed var(--color-border-dark);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-accent);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:var(--space-sm);margin-bottom:var(--space-xl)}.shortcut-add-btn[data-v-beb997b2]:hover{border-color:var(--color-accent);background:var(--color-info-light)}.shortcut-add-icon[data-v-beb997b2]{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.shortcut-tips[data-v-beb997b2]{padding:var(--space-lg);background:var(--color-bg-hover);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-xl)}.shortcut-tip-title[data-v-beb997b2]{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);margin-bottom:var(--space-sm);text-transform:uppercase;letter-spacing:.05em}.shortcut-tip-item[data-v-beb997b2]{font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:1.8}.shortcut-tip-item kbd[data-v-beb997b2]{display:inline-block;padding:2px 6px;background:var(--color-bg-card);border:1px solid var(--color-border-dark);border-radius:var(--radius-xs);font-size:11px;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);box-shadow:var(--shadow-xs)}.qdf-dialog-mask[data-v-beb997b2]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-bg-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-xl)}.qdf-dialog[data-v-beb997b2]{width:100%;max-width:800px;max-height:90vh;background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;overflow:hidden;animation:dialogFadeIn-beb997b2 .2s ease-out}@keyframes dialogFadeIn-beb997b2{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.qdf-dialog-desc[data-v-beb997b2]{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6;margin:0 0 var(--space-lg) 0}.qdf-upload-actions[data-v-beb997b2]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.qdf-action-btn[data-v-beb997b2]{height:36px;padding:0 var(--space-lg);border:1px solid var(--color-border-dark);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast)}.qdf-action-btn[data-v-beb997b2]:hover{background:var(--color-bg-hover);border-color:var(--color-text-placeholder)}.qdf-action-btn.primary[data-v-beb997b2]{background:var(--color-accent);color:var(--color-text-inverse);border-color:var(--color-accent)}.qdf-action-btn.primary[data-v-beb997b2]:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.qdf-meta[data-v-beb997b2]{font-size:var(--font-size-xs);color:var(--color-text-placeholder)}.qdf-file-input[data-v-beb997b2]{display:none}.qdf-drop-zone[data-v-beb997b2]{margin-bottom:var(--space-md);border:2px dashed var(--color-border-dark);border-radius:var(--radius-md);padding:var(--space-sm);transition:all var(--transition-normal)}.qdf-drop-zone-active[data-v-beb997b2]{border-color:var(--color-accent);background:var(--color-info-light)}.qdf-textarea[data-v-beb997b2]{width:100%;height:200px;padding:var(--space-md);border:none;border-radius:var(--radius-md);background:var(--color-bg-hover);font-family:Monaco,Menlo,Courier New,monospace;font-size:var(--font-size-xs);line-height:1.5;color:var(--color-text-primary);resize:vertical}.qdf-textarea[data-v-beb997b2]:focus{outline:none;background:var(--color-bg-card)}.qdf-actions[data-v-beb997b2]{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-md)}.qdf-status[data-v-beb997b2]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:var(--space-sm) 0}.qdf-result[data-v-beb997b2]{width:100%;height:300px;padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-hover);font-family:Monaco,Menlo,Courier New,monospace;font-size:11px;line-height:1.5;color:var(--color-text-primary);resize:vertical;margin-top:var(--space-md)}.qdf-result[data-v-beb997b2]:focus{outline:none;border-color:var(--color-accent)}.decode-header[data-v-beb997b2]{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:var(--space-sm) 0;-webkit-user-select:none;user-select:none}.decode-header[data-v-beb997b2]:hover{opacity:.8}.toggle-btn[data-v-beb997b2]{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:var(--color-bg-active);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal)}.toggle-btn[data-v-beb997b2]:hover{background:var(--color-border-dark)}.toggle-btn.expanded[data-v-beb997b2]{background:var(--color-accent);color:var(--color-text-inverse)}.decode-content[data-v-beb997b2]{animation:slideDown-beb997b2 .2s ease-out}@keyframes slideDown-beb997b2{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.aluminum-panel[data-v-beb997b2]{position:absolute;left:50%;bottom:96px;transform:translate(-50%);width:300px;max-width:calc(100% - 24px);background:#fffffffa;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:14px 16px;z-index:var(--z-dropdown)}.aluminum-panel-head[data-v-beb997b2]{display:flex;align-items:center;justify-content:space-between}.aluminum-panel-title[data-v-beb997b2]{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.aluminum-panel-close[data-v-beb997b2]{border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer}.aluminum-panel-desc[data-v-beb997b2]{margin:var(--space-sm) 0 var(--space-md);font-size:var(--font-size-xs);line-height:1.5;color:var(--color-text-secondary)}.aluminum-panel-stats[data-v-beb997b2]{display:flex;gap:var(--space-md);margin-bottom:10px}.aluminum-stat[data-v-beb997b2]{flex:1;background:var(--color-bg-hover);border-radius:var(--radius-md);padding:var(--space-sm) 10px;display:flex;flex-direction:column;gap:2px}.aluminum-stat-label[data-v-beb997b2]{font-size:11px;color:var(--color-text-placeholder)}.aluminum-stat-value[data-v-beb997b2]{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.aluminum-control-row[data-v-beb997b2]{display:flex;align-items:center;gap:10px;margin-bottom:var(--space-sm)}.aluminum-control-label[data-v-beb997b2]{flex:1;font-size:var(--font-size-sm);color:var(--color-text-primary)}.aluminum-control-value[data-v-beb997b2]{min-width:48px;text-align:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.aluminum-step[data-v-beb997b2]{width:30px;height:30px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);font-size:var(--font-size-lg);line-height:1;color:var(--color-text-primary);cursor:pointer}.aluminum-step[data-v-beb997b2]:hover{background:var(--color-bg-hover)}.aluminum-actions[data-v-beb997b2]{display:flex;gap:var(--space-sm);margin-top:var(--space-md)}.aluminum-action[data-v-beb997b2]{flex:1;height:38px;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);cursor:pointer;color:var(--color-text-inverse);background:var(--color-accent)}.aluminum-action.primary[data-v-beb997b2]{background:var(--color-accent)}.aluminum-action.secondary[data-v-beb997b2]{background:var(--color-text-secondary)}.aluminum-action.danger[data-v-beb997b2]{background:var(--color-danger)}.aluminum-action.danger-soft[data-v-beb997b2]{background:var(--color-warning)}.aluminum-action.disabled[data-v-beb997b2]{opacity:.45;pointer-events:none}.md-dialog[data-v-beb997b2]{width:100%;max-width:480px;max-height:82vh;background:var(--color-bg-card);border-radius:20px;box-shadow:0 24px 64px #1118273d,0 2px 8px #11182714;display:flex;flex-direction:column;overflow:hidden;animation:dialogFadeIn-beb997b2 .24s ease-out}.md-header[data-v-beb997b2]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px 24px;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%)}.md-header-text[data-v-beb997b2]{display:flex;flex-direction:column;gap:4px;min-width:0}.md-title[data-v-beb997b2]{font-size:19px;font-weight:800;color:var(--color-accent-text);letter-spacing:.01em}.md-subtitle[data-v-beb997b2]{font-size:12px;font-weight:500;color:var(--color-accent-text);opacity:.72}.md-close[data-v-beb997b2]{flex-shrink:0;width:30px;height:30px;border:none;border-radius:50%;background:#ffffff38;color:var(--color-accent-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.md-close[data-v-beb997b2]:hover{background:#ffffff61}.md-body[data-v-beb997b2]{flex:1;overflow-y:auto;padding:16px 20px;background:var(--color-bg-sidebar)}.md-state[data-v-beb997b2]{padding:48px 20px;text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.md-empty[data-v-beb997b2]{display:flex;flex-direction:column;align-items:center;gap:8px}.md-empty-icon[data-v-beb997b2]{color:var(--color-border-dark);margin-bottom:4px}.md-empty-text[data-v-beb997b2]{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.md-empty-hint[data-v-beb997b2]{font-size:var(--font-size-sm);color:var(--color-text-placeholder)}.md-list[data-v-beb997b2]{display:flex;flex-direction:column;gap:10px}.md-item[data-v-beb997b2]{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-bg-card);cursor:pointer;transition:all .18s ease}.md-item[data-v-beb997b2]:hover{border-color:var(--color-accent);transform:translateY(-1px);box-shadow:0 6px 16px #1118270f}.md-item-thumb[data-v-beb997b2]{flex-shrink:0;width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%);color:var(--color-accent-text);box-shadow:0 4px 10px #1118271f}.md-item-info[data-v-beb997b2]{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.md-item-title[data-v-beb997b2]{font-size:14px;font-weight:700;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.md-item-meta[data-v-beb997b2]{display:flex;gap:8px;font-size:12px;color:var(--color-text-placeholder)}.md-item-delete[data-v-beb997b2]{flex-shrink:0;width:30px;height:30px;border:none;border-radius:50%;background:transparent;color:var(--color-text-placeholder);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.md-item-delete[data-v-beb997b2]:hover{background:var(--color-danger-light);color:var(--color-danger)}.md-footer[data-v-beb997b2]{display:flex;gap:10px;padding:16px 20px;background:var(--color-bg-card);border-top:1px solid var(--color-border-light)}.md-btn[data-v-beb997b2]{flex:1;height:44px;border:none;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s}.md-btn.cancel[data-v-beb997b2]{flex:0 0 35%;color:var(--color-text-primary);background:var(--color-bg-hover)}.md-btn.cancel[data-v-beb997b2]:hover{background:var(--color-border-dark)}.md-btn.confirm[data-v-beb997b2]{color:var(--color-accent-text);background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%);box-shadow:0 6px 16px var(--color-accent-light)}.md-btn.confirm[data-v-beb997b2]:hover{transform:translateY(-1px);box-shadow:0 8px 20px var(--color-accent-light)}.confirm-dialog[data-v-beb997b2]{max-width:400px}.import-dialog[data-v-beb997b2]{max-width:560px}.confirm-dialog-msg[data-v-beb997b2]{font-size:var(--font-size-md);color:var(--color-text-secondary);line-height:1.6;margin:0}.detail-page[data-v-25c6a128]{min-height:100vh;background:var(--color-bg-sidebar)}.loading[data-v-25c6a128]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:100vh;font-size:1rem;color:var(--color-text-secondary)}.loading-svg[data-v-25c6a128]{width:56px;height:56px}.detail-container[data-v-25c6a128]{max-width:50rem;margin:0 auto;background:var(--color-bg-card);min-height:100vh}.back-btn[data-v-25c6a128]{position:sticky;top:1rem;left:1rem;margin:1rem;padding:.625rem 1.25rem;border:none;border-radius:1.5rem;background:var(--color-bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--color-text-primary);font-size:.875rem;font-weight:600;cursor:pointer;box-shadow:var(--shadow-md);transition:all .2s;z-index:10}.back-btn[data-v-25c6a128]:hover{background:var(--color-bg-card);transform:translateY(-.125rem);box-shadow:var(--shadow-lg)}.cover-section[data-v-25c6a128]{width:100%;aspect-ratio:4/3;overflow:hidden}.cover-img[data-v-25c6a128]{width:100%;height:100%;object-fit:cover}.header-section[data-v-25c6a128]{padding:2rem;border-bottom:.0625rem solid var(--color-border)}.title[data-v-25c6a128]{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin:0 0 1.5rem;line-height:1.3}.meta[data-v-25c6a128]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.author-info[data-v-25c6a128]{display:flex;align-items:center;gap:.75rem}.avatar[data-v-25c6a128]{width:2.5rem;height:2.5rem;border-radius:50%;object-fit:cover}.avatar.placeholder[data-v-25c6a128]{display:flex;align-items:center;justify-content:center;background:var(--color-accent);color:var(--color-accent-text);font-weight:600;font-size:1rem}.author-name[data-v-25c6a128]{font-size:1rem;font-weight:600;color:var(--color-text-primary)}.designer-badge[data-v-25c6a128]{padding:.25rem .625rem;border-radius:.75rem;background:var(--color-accent);color:var(--color-accent-text);font-size:.75rem;font-weight:600}.stats[data-v-25c6a128]{display:flex;gap:1.5rem}.stat[data-v-25c6a128]{font-size:.875rem;color:var(--color-text-secondary)}.content-section[data-v-25c6a128]{padding:2rem}.description[data-v-25c6a128]{font-size:1rem;color:var(--color-text-secondary);line-height:1.75;margin:0 0 1.5rem;white-space:pre-wrap}.tags[data-v-25c6a128]{display:flex;flex-wrap:wrap;gap:.5rem}.tag[data-v-25c6a128]{padding:.375rem .875rem;border-radius:1rem;background:var(--color-bg-hover);color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.action-section[data-v-25c6a128]{padding:2rem;border-top:.0625rem solid var(--color-border)}.action-btn[data-v-25c6a128]{width:100%;padding:1rem;border:none;border-radius:1rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.action-btn.primary[data-v-25c6a128]{background:var(--color-accent);color:var(--color-accent-text)}.action-btn.primary[data-v-25c6a128]:hover{background:var(--color-accent-hover);transform:translateY(-.125rem);box-shadow:var(--shadow-lg)}.home-page[data-v-a4d6ba70]{height:100%;overflow-y:auto;background:var(--color-bg-page)}.home-banner[data-v-a4d6ba70]{margin:var(--space-xl) var(--space-xl) 0;padding:48px 0;border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--g-brand-solid-100) 0%,var(--g-brand-solid-50) 100%);display:flex;align-items:center;justify-content:center}.create-btn[data-v-a4d6ba70]{display:inline-flex;align-items:center;gap:6px;padding:10px 28px;border:none;border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-accent-text);font-size:14px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.create-btn[data-v-a4d6ba70]:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.create-btn[data-v-a4d6ba70]:active{transform:scale(.97)}.home-content[data-v-a4d6ba70]{padding:var(--space-xl)}.section-title[data-v-a4d6ba70]{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-lg);text-align:left}.loading-state[data-v-a4d6ba70]{text-align:center;padding:60px 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);display:flex;flex-direction:column;align-items:center;gap:12px}.loading-svg[data-v-a4d6ba70]{width:56px;height:56px}.empty-state[data-v-a4d6ba70]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 0}.empty-icon[data-v-a4d6ba70]{font-size:48px;margin-bottom:var(--space-lg);opacity:.5}.empty-text[data-v-a4d6ba70]{font-size:var(--font-size-md);color:var(--color-text-secondary)}.inspiration-grid[data-v-a4d6ba70]{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-md)}.inspiration-card[data-v-a4d6ba70]{cursor:pointer;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg-card);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-normal),transform var(--transition-normal)}.inspiration-card[data-v-a4d6ba70]:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-image-wrapper[data-v-a4d6ba70]{position:relative;width:100%;padding-top:140%;overflow:hidden}.card-image[data-v-a4d6ba70]{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.card-image-placeholder[data-v-a4d6ba70]{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#ffffffe6}.card-overlay[data-v-a4d6ba70]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-bg-overlay);display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-md);opacity:0;transition:opacity var(--transition-normal)}.inspiration-card:hover .card-overlay[data-v-a4d6ba70]{opacity:1}.overlay-user[data-v-a4d6ba70]{display:flex;align-items:center;gap:6px}.overlay-avatar[data-v-a4d6ba70]{width:24px;height:24px;border-radius:50%;object-fit:cover;border:1.5px solid rgba(255,255,255,.6)}.overlay-avatar.placeholder[data-v-a4d6ba70]{background:#ffffff40;color:var(--color-text-inverse);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}.overlay-name[data-v-a4d6ba70]{font-size:12px;color:var(--color-text-inverse);font-weight:500}.overlay-desc[data-v-a4d6ba70]{font-size:12px;color:#ffffffd9;line-height:1.4;margin:0 0 8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.overlay-bottom[data-v-a4d6ba70]{display:flex;align-items:center;justify-content:space-between;gap:8px}.overlay-stats[data-v-a4d6ba70]{display:flex;align-items:center;gap:10px;flex-shrink:0}.overlay-stat[data-v-a4d6ba70]{display:inline-flex;align-items:center;gap:3px;font-size:12px;color:#ffffffe6;font-weight:500}.overlay-stat svg[data-v-a4d6ba70]{flex-shrink:0}@media (max-width: 1200px){.inspiration-grid[data-v-a4d6ba70]{grid-template-columns:repeat(4,1fr)}}@media (max-width: 768px){.inspiration-grid[data-v-a4d6ba70]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 480px){.inspiration-grid[data-v-a4d6ba70]{grid-template-columns:repeat(2,1fr)}}.my-models-page[data-v-2de1d303]{height:100%;overflow-y:auto;background:var(--color-bg-card);padding:var(--space-xl);position:relative}.page-header[data-v-2de1d303]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-xl)}.page-title[data-v-2de1d303]{font-size:18px;font-weight:700;color:var(--color-text-primary);margin:0}.page-tabs[data-v-2de1d303]{display:flex;align-items:center;gap:var(--space-lg)}.page-tab[data-v-2de1d303]{position:relative;padding:var(--space-sm) 0;border:none;background:transparent;font-size:var(--font-size-base);font-weight:400;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast)}.page-tab[data-v-2de1d303]:hover{color:var(--color-text-primary)}.page-tab-active[data-v-2de1d303]{color:var(--color-text-brand);font-weight:600}.page-tab-active[data-v-2de1d303]:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--color-line-brand);border-radius:1px}.card-grid[data-v-2de1d303]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.list-loading[data-v-2de1d303]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;gap:12px;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.loading-svg[data-v-2de1d303]{width:56px;height:56px}.card[data-v-2de1d303]{border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:box-shadow var(--transition-normal),transform var(--transition-normal)}.card[data-v-2de1d303]:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-bar[data-v-2de1d303]{grid-column:1 / -1;display:flex;gap:var(--space-sm);margin-bottom:var(--space-xs)}.action-btn[data-v-2de1d303]{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.action-btn[data-v-2de1d303]:hover{border-color:var(--color-border-dark);background:var(--color-bg-hover)}.action-btn-primary[data-v-2de1d303]{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-accent-text)}.action-btn-primary[data-v-2de1d303]:hover{border-color:var(--color-accent-hover);background:var(--color-accent-hover)}.import-file-input[data-v-2de1d303]{display:none}.card-project[data-v-2de1d303]{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-card);border:1px solid var(--color-border-light);position:relative;min-height:72px;overflow:visible}.card-project.card-menu-open[data-v-2de1d303]{z-index:20}.card-project[data-v-2de1d303]:hover{border-color:var(--color-border-dark);box-shadow:0 2px 12px #0000000f;background:var(--color-bg-hover)}.card-icon[data-v-2de1d303]{flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fffffff2;box-shadow:0 2px 8px #0000001f}.card-thumb[data-v-2de1d303]{flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-md);overflow:hidden;box-shadow:0 2px 8px #0000001f}.card-thumb-image[data-v-2de1d303]{width:100%;height:100%;object-fit:cover}.card-thumb-placeholder[data-v-2de1d303]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:700;color:#fffffff2}.card-info[data-v-2de1d303]{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.card-main[data-v-2de1d303]{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.card-header[data-v-2de1d303]{display:flex;align-items:center;gap:8px}.card-name[data-v-2de1d303]{flex:1;min-width:0;font-size:var(--font-size-base);font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.card-meta[data-v-2de1d303]{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}.card-parts[data-v-2de1d303]{display:flex;align-items:center;gap:8px}.part-tag[data-v-2de1d303]{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;line-height:1.4;background:var(--color-bg-hover);color:var(--color-text-secondary)}.part-tube[data-v-2de1d303]{color:#3b82f6;background:#eff6ff}.part-panel[data-v-2de1d303]{color:#f59e0b;background:#fffbeb}.part-conn[data-v-2de1d303]{color:#10b981;background:#ecfdf5}.card-dimension[data-v-2de1d303]{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.card-time[data-v-2de1d303]{font-size:var(--font-size-xs);color:var(--color-text-placeholder)}.card-badge[data-v-2de1d303]{flex-shrink:0;padding:2px 8px;border-radius:var(--radius-full);font-size:10px;font-weight:700;line-height:1.5}.card-badge-local[data-v-2de1d303]{color:var(--color-accent-active);background:var(--color-accent-light)}.card-badge-merged[data-v-2de1d303]{color:var(--color-info);background:var(--color-info-light)}.card-badge-cloud[data-v-2de1d303]{color:var(--color-success);background:var(--color-success-light)}.card-sync[data-v-2de1d303]{position:absolute;top:8px;right:8px;padding:2px 8px;border-radius:var(--radius-full);font-size:10px;font-weight:700;line-height:1.5}.card-sync-upload[data-v-2de1d303]{color:var(--color-accent-active);background:var(--color-accent-light)}.card-sync-download[data-v-2de1d303]{color:var(--color-success);background:var(--color-success-light)}.card-sync-sync[data-v-2de1d303]{color:var(--color-text-brand);background:var(--color-bg-selection)}.card-menu[data-v-2de1d303]{position:absolute;top:44px;right:8px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-lg);padding:4px 0;z-index:10;min-width:140px}.card-menu-item[data-v-2de1d303]{display:flex;align-items:center;gap:8px;width:100%;padding:8px 14px;border:none;background:transparent;font-size:13px;color:var(--color-text-primary);cursor:pointer;text-align:left;transition:background .1s}.card-menu-item[data-v-2de1d303]:hover{background:var(--color-bg-hover)}.card-menu-item-danger[data-v-2de1d303]{color:var(--color-danger)}.card-menu-item-danger[data-v-2de1d303]:hover{background:var(--color-danger-light)}.card-menu-btn[data-v-2de1d303]{flex-shrink:0;width:32px;height:32px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-placeholder);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s}.card-menu-btn[data-v-2de1d303]:hover{background:var(--color-bg-active);color:var(--color-text-primary)}.empty-area[data-v-2de1d303]{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0}.empty-icon[data-v-2de1d303]{font-size:48px;margin-bottom:var(--space-lg);opacity:.5}.empty-text[data-v-2de1d303]{font-size:var(--font-size-md);color:var(--color-text-secondary)}.import-overlay[data-v-2de1d303]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--color-text-inverse);font-size:14px;z-index:1000}.import-loading-svg[data-v-2de1d303]{width:56px;height:56px}.import-toast[data-v-2de1d303]{position:fixed;top:24px;left:50%;transform:translate(-50%);padding:10px 24px;border-radius:8px;font-size:14px;z-index:1001;cursor:pointer;animation:import-toast-in-2de1d303 .3s ease}.import-toast-error[data-v-2de1d303]{background:var(--color-danger-light);color:var(--color-danger);border:1px solid var(--color-danger-border)}.import-toast-success[data-v-2de1d303]{background:var(--color-success-light);color:var(--color-success);border:1px solid var(--color-success-border)}.rename-modal[data-v-2de1d303]{max-width:380px}.rename-input[data-v-2de1d303]{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);outline:none;transition:border-color var(--transition-fast);box-sizing:border-box}.rename-input[data-v-2de1d303]:focus{border-color:var(--color-accent)}@keyframes import-toast-in-2de1d303{0%{opacity:0;transform:translate(-50%) translateY(-12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.login-page[data-v-8a6cd544]{flex:1;display:flex;align-items:center;justify-content:center;background:var(--color-bg-sidebar);min-height:100%}.login-card[data-v-8a6cd544]{background:var(--color-bg-card);border-radius:16px;padding:48px 40px 36px;width:380px;display:flex;flex-direction:column;align-items:center;box-shadow:var(--shadow-md)}.login-logo[data-v-8a6cd544]{margin-bottom:16px}.login-logo-img[data-v-8a6cd544]{height:36px;width:auto}.login-title[data-v-8a6cd544]{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0 0 28px}.login-qr-area[data-v-8a6cd544]{width:240px;height:240px;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.qr-placeholder[data-v-8a6cd544]{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-bg-sidebar);border-radius:12px;color:var(--color-text-secondary);font-size:14px}.qr-expired p[data-v-8a6cd544]{margin:12px 0 0}.qr-refresh-btn[data-v-8a6cd544]{margin-top:12px;padding:8px 24px;background:var(--color-text-primary);color:var(--color-text-inverse);border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:opacity .2s}.qr-refresh-btn[data-v-8a6cd544]:hover{opacity:.85}.qr-spinner[data-v-8a6cd544]{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-text-primary);border-radius:50%;animation:spin-8a6cd544 .8s linear infinite}@keyframes spin-8a6cd544{to{transform:rotate(360deg)}}.qr-wrapper[data-v-8a6cd544]{position:relative;border-radius:12px;overflow:hidden}.qr-wrapper.qr-scanned .qr-canvas[data-v-8a6cd544]{filter:blur(3px)}.qr-canvas[data-v-8a6cd544]{display:block;border-radius:12px}.qr-scan-line[data-v-8a6cd544]{position:absolute;top:0;left:8px;right:8px;height:2px;background:linear-gradient(90deg,transparent,var(--color-success) 30%,var(--color-success) 70%,transparent);box-shadow:0 0 8px 2px #22c55e66,0 0 20px 4px #22c55e26;animation:qr-scan-8a6cd544 2.5s ease-in-out infinite;z-index:2}.qr-scan-line[data-v-8a6cd544]:after{content:"";position:absolute;top:-20px;left:0;right:0;height:40px;background:linear-gradient(180deg,transparent,rgba(34,197,94,.08),transparent);pointer-events:none}@keyframes qr-scan-8a6cd544{0%{top:0;opacity:0}5%{opacity:1}90%{opacity:1}to{top:calc(100% - 2px);opacity:0}}.qr-scan-frame[data-v-8a6cd544]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3}.qr-corner[data-v-8a6cd544]{position:absolute;width:20px;height:20px;border-color:var(--color-success);border-style:solid;border-width:0}.qr-corner-tl[data-v-8a6cd544]{top:0;left:0;border-top-width:3px;border-left-width:3px;border-top-left-radius:4px}.qr-corner-tr[data-v-8a6cd544]{top:0;right:0;border-top-width:3px;border-right-width:3px;border-top-right-radius:4px}.qr-corner-bl[data-v-8a6cd544]{bottom:0;left:0;border-bottom-width:3px;border-left-width:3px;border-bottom-left-radius:4px}.qr-corner-br[data-v-8a6cd544]{bottom:0;right:0;border-bottom-width:3px;border-right-width:3px;border-bottom-right-radius:4px}.qr-overlay[data-v-8a6cd544]{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffd9;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-success);font-size:14px;font-weight:500}.qr-overlay p[data-v-8a6cd544]{margin:8px 0 0;color:var(--color-text-primary)}.login-status[data-v-8a6cd544]{text-align:center;min-height:24px;margin-bottom:16px}.status-text[data-v-8a6cd544]{font-size:14px;color:var(--color-text-secondary);margin:0;line-height:1.6}.status-text strong[data-v-8a6cd544]{color:var(--color-text-primary)}.status-scanned[data-v-8a6cd544]{color:var(--color-success);font-weight:500}.status-expired[data-v-8a6cd544]{color:var(--color-danger)}.login-countdown[data-v-8a6cd544]{width:100%;height:3px;background:var(--color-border);border-radius:2px;overflow:hidden;margin-bottom:20px}.countdown-bar[data-v-8a6cd544]{height:100%;background:var(--color-text-primary);border-radius:2px;transition:width 1s linear}.login-footer[data-v-8a6cd544]{text-align:center}.login-footer p[data-v-8a6cd544]{font-size:12px;color:var(--color-text-placeholder);margin:0}
