.ant-select-dropdown,.ant-cascader-dropdown,.ant-tree-select-dropdown,.ant-dropdown .ant-dropdown-menu,.ant-picker-dropdown .ant-picker-panel-container{background:#2a2a2a;border:1px solid #4a4a4a;box-shadow:0 10px 28px #0000008c}.ant-select-item-option-active:not(.ant-select-item-option-disabled),.ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled){background:#3a3a3a}.ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:#1677ff38}.ant-dropdown-menu-item:hover,.ant-dropdown-menu-submenu-title:hover{background:#3a3a3a!important}.ant-picker-panel-container,.ant-picker-panel,.ant-picker-footer{background:#2a2a2a}.ant-picker-presets{background:#242424;border-inline-end:1px solid #3f3f3f}.ant-picker-presets li{color:#ddd}.ant-picker-presets li:hover,.ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner{background:#1677ff;color:#fff}.ant-picker-header,.ant-picker-content th{color:#aaa}.project-card-menu .ant-dropdown-menu,.asset-group-card-menu .ant-dropdown-menu{background:#2a2a2a;border:1px solid #4a4a4a}.project-card-menu .ant-dropdown-menu-item:hover,.asset-group-card-menu .ant-dropdown-menu-item:hover{background:#3a3a3a;color:#fff}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:#0a0a0a;color:#e0e0e0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,sans-serif;-webkit-font-smoothing:antialiased;overflow:hidden}#root{height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#333;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#555}.user-menu-dropdown{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;padding:6px;min-width:180px;box-shadow:0 8px 32px #00000080}.user-menu-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;cursor:pointer;color:#ccc;font-size:14px;transition:background .15s,color .15s;-webkit-user-select:none;user-select:none}.user-menu-item:hover{background:#262626;color:#fff}.user-menu-item .anticon{font-size:16px;color:#888}.user-menu-item:hover .anticon{color:#bbb}.user-menu-divider{height:1px;background:#2a2a2a;margin:4px 8px}.app-top-bar{height:52px;background:transparent;border-bottom:none;display:flex;align-items:center;padding:0 20px;flex-shrink:0;gap:12px}.app-top-bar--canvas{position:absolute;top:0;left:0;right:0;z-index:20;background:transparent;border-bottom:none;padding:0 16px;pointer-events:none}.app-top-bar--canvas .app-top-bar-start,.app-top-bar--canvas .app-top-bar-canvas,.app-top-bar--canvas .app-top-bar-actions,.app-top-bar--canvas .app-top-bar-start *,.app-top-bar--canvas .app-top-bar-canvas *,.app-top-bar--canvas .app-top-bar-actions *{pointer-events:auto}.app-main-column--canvas{position:relative}.app-main-column--canvas .app-main-outlet{flex:1;min-height:0;display:flex;flex-direction:column}.app-top-bar-canvas{flex:1;min-width:0;display:flex;align-items:center}.app-top-bar-start{flex:1;min-width:0;display:flex;align-items:center;gap:12px}.app-shell{--app-float-rail-width: 72px;position:relative;display:flex;flex-direction:column;height:100vh;background:#0a0a0a;color:#fff;min-height:0}.app-main-column{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;min-height:0}.app-main-column--with-float-nav{padding-left:var(--app-float-rail-width)}.app-float-rail-logo{position:fixed;left:0;top:0;width:var(--app-float-rail-width);height:52px;display:flex;align-items:center;justify-content:center;z-index:101;pointer-events:none}.app-float-rail-logo>*{pointer-events:auto}.app-main-outlet{flex:1;overflow:auto;display:flex;flex-direction:column;min-height:0}.app-sidebar-float{position:fixed;left:0;width:var(--app-float-rail-width);top:50%;transform:translateY(-50%);z-index:100;display:flex;justify-content:center}.app-sidebar-nav{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px;background:#1414148c;backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border:1px solid rgba(255,255,255,.08);border-radius:14px;box-shadow:0 8px 32px #0006}.app-sidebar{width:60px;background:transparent;border-right:none;display:flex;flex-direction:column;align-items:center;padding:16px 0;gap:4px;flex-shrink:0}.app-sidebar-nav-item{width:40px;height:40px;border:none;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;line-height:1;transition:background .15s ease,color .15s ease;background:transparent;color:#ffffff73;padding:0}.app-sidebar-nav-item:hover{color:#ffffffd9;background:#ffffff0f}.app-sidebar-nav-item--active{background:#ffffff24;color:#fff}.app-top-bar-actions{margin-left:auto;display:flex;align-items:center;gap:12px;flex-shrink:0}.app-top-bar--canvas .app-top-bar-actions{position:relative;z-index:21;gap:8px}.canvas-top-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid #333;border-radius:10px;background:#262626;color:#ccc;font-size:16px;line-height:1;cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s,color .15s}.canvas-top-icon-btn:hover:not(:disabled){background:#333;border-color:#444;color:#fff}.canvas-top-icon-btn:disabled{opacity:.6;cursor:not-allowed}.canvas-top-icon-btn .anticon{font-size:16px}.credits-pill{display:flex;align-items:center;gap:6px;height:36px;padding:0 12px;background:#262626;border:1px solid #333;border-radius:10px;flex-shrink:0;transition:background .15s,border-color .15s}.credits-pill-icon{color:#ccc;font-size:16px}.credits-pill-value{color:#fff;font-size:14px;font-weight:500;line-height:1}.credits-pill-recharge{color:#00d4ff;font-size:13px;cursor:pointer;line-height:1;padding-left:8px;margin-left:2px;border-left:1px solid #444;transition:color .15s}.credits-pill-recharge:hover{color:#3df}.member-avatar-frame{position:relative;display:inline-flex;flex-shrink:0}.member-avatar-frame--sm .member-avatar-ring{padding:2px}.member-avatar-frame--md .member-avatar-ring{padding:3px}.member-avatar-ring{border-radius:50%;background:linear-gradient(135deg,#f5c842,#ffb020 45%,#f0a030);box-shadow:0 0 14px #f5c84259;display:inline-flex}.member-avatar-ring .ant-avatar{border:2px solid #0a0a0a}.member-badge-corner{position:absolute;right:-1px;bottom:-1px;z-index:2;width:16px;height:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffe082,#ffb020);border:2px solid #0a0a0a;color:#5c3d00;font-size:9px;line-height:1;box-shadow:0 2px 8px #f5c84273}.member-avatar-frame--md .member-badge-corner{width:20px;height:20px;font-size:11px}.member-badge-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 10px;border-radius:999px;background:linear-gradient(135deg,#f5c84238,#ffb0201f);border:1px solid rgba(245,200,66,.5);color:#f5c842;font-size:12px;font-weight:600;letter-spacing:.04em;line-height:1.6;box-shadow:inset 0 1px #ffffff14}.member-badge-pill-icon{font-size:12px;color:#ffb020;filter:drop-shadow(0 0 4px rgba(255,176,32,.45))}.member-identity-card{display:flex;align-items:center;gap:14px;margin:16px 0 8px;padding:14px 16px;border-radius:12px;background:linear-gradient(135deg,#f5c8421f,#ffb0200a),#161616;border:1px solid rgba(245,200,66,.28);box-shadow:0 8px 24px #00000040}.member-identity-card-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:linear-gradient(135deg,#f5c842,#e8940f);color:#3d2800;font-size:20px;box-shadow:0 4px 14px #f5c84259}.member-identity-card-title{color:#f5c842;font-size:15px;font-weight:600;line-height:1.3}.member-identity-card-desc{margin-top:3px;color:#999;font-size:12px;line-height:1.5}.user-avatar-btn{cursor:pointer;flex-shrink:0;transition:opacity .15s}.user-avatar-btn:hover{opacity:.85}.app-logo-btn{width:36px;height:36px;border-radius:10px;border:none;background:transparent;display:flex;align-items:center;justify-content:center;margin-bottom:16px;flex-shrink:0;cursor:pointer;padding:0;transition:opacity .15s,transform .15s}.app-logo-btn:hover{opacity:.9}.app-logo-btn--inline{margin-bottom:0;flex-shrink:0}.logo-project-menu{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;padding:8px;min-width:168px;box-shadow:0 8px 32px #00000080;display:flex;flex-direction:column;gap:6px}.logo-project-menu-item{display:block;width:100%;padding:10px 14px;border:none;border-radius:8px;background:transparent;color:#ccc;font-size:14px;text-align:left;cursor:pointer;transition:background .15s,color .15s}.logo-project-menu-item:hover{background:#262626;color:#fff}.logo-project-menu-item--danger{background:#262626;color:#ddd}.logo-project-menu-item--danger:hover{background:#333;color:#fff}.account-modal-body{display:flex;height:560px;min-height:560px;margin:-8px -4px}.account-sidebar{width:160px;border-right:1px solid #2a2a2a;padding:8px 0;flex-shrink:0}.account-nav-item{display:flex;align-items:center;gap:8px;padding:10px 16px;margin:2px 8px;border-radius:8px;cursor:pointer;color:#888;font-size:14px;transition:all .15s}.account-nav-item:hover{color:#ccc;background:#222}.account-nav-item.active{color:#fff;background:#262626}.account-content{flex:1;min-width:0;min-height:0;padding:4px 8px 8px 20px;overflow:auto}.account-profile-header{display:flex;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid #2a2a2a;margin-bottom:8px}.account-avatar-upload{position:relative;flex-shrink:0;cursor:pointer;border-radius:50%;outline:none}.account-avatar-upload:focus-visible{box-shadow:0 0 0 2px #1677ff}.account-avatar-upload--busy{cursor:wait;pointer-events:none}.account-avatar-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:50%;background:#0000008c;color:#fff;font-size:11px;opacity:0;transition:opacity .2s}.account-avatar-upload:hover .account-avatar-overlay,.account-avatar-upload--busy .account-avatar-overlay{opacity:1}.account-profile-name{font-size:18px;font-weight:600;color:#fff;display:flex;align-items:center;gap:8px}.account-badges{display:flex;gap:6px;margin-top:6px}.account-badge{font-size:11px;padding:1px 8px;border-radius:4px;background:#262626;color:#888;border:1px solid #333}.account-uuid{font-size:12px;color:#666;margin-top:4px;display:flex;align-items:center;gap:6px}.account-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid #1e1e1e}.account-row-label{color:#888;font-size:14px;min-width:80px}.account-row-value{flex:1;color:#ccc;font-size:14px;padding-left:24px}.account-row-action{flex-shrink:0}.account-placeholder{display:flex;align-items:center;justify-content:center;height:300px;color:#555;font-size:14px}.account-feedback{display:flex;flex-direction:column;min-height:300px}.account-feedback-hint{color:#888;font-size:13px;line-height:1.6;margin-bottom:12px}.account-feedback-footer{display:flex;align-items:center;justify-content:flex-end;margin-top:16px}.account-content--recharge{overflow:hidden}.account-content-narrow{max-width:560px}.account-panel{display:flex;flex-direction:column;gap:18px;min-height:0;height:100%}.account-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.account-panel-head h3{margin:0;color:#fff;font-size:16px;font-weight:600}.account-panel-head p{margin:4px 0 0;color:#777;font-size:12px;line-height:1.5}.account-panel-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}.account-invoice-card{padding:16px 18px 8px;border:1px solid #2a2a2a;border-radius:12px;background:#161616}.account-invoice-card.is-collapsed{padding-bottom:8px}.account-invoice-toggle{display:flex;align-items:flex-start;gap:10px;min-width:0;padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer}.account-invoice-caret{margin-top:4px;color:#888;font-size:11px;transition:transform .18s}.account-invoice-caret.is-open{transform:rotate(0)}.account-invoice-caret:not(.is-open){transform:rotate(-90deg)}.account-invoice-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px;padding-bottom:8px}.account-invoice-grid div{display:flex;flex-direction:column;gap:6px;padding:12px 0;border-bottom:1px solid #222}.account-invoice-grid span{color:#777;font-size:12px}.account-invoice-grid strong{color:#ddd;font-size:14px;font-weight:500;word-break:break-all}.account-muted{color:#666;font-size:13px}.account-params-preview{margin:0;max-height:480px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:12px;color:#ddd;background:#111;padding:12px;border-radius:6px}.recharge-page{display:flex;flex-direction:column;min-height:0;height:100%}.recharge-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.recharge-user{display:flex;align-items:center;gap:12px;min-width:0}.recharge-avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#1677ff,#00d4ff);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;flex-shrink:0}.recharge-avatar img{width:100%;height:100%;object-fit:cover}.recharge-username{color:#fff;font-size:16px;font-weight:600;line-height:1.3}.recharge-subtitle{color:#777;font-size:13px;margin-top:2px}.recharge-balance{color:#aaa;font-size:14px;flex-shrink:0}.recharge-balance strong{color:#fff;font-weight:600}.recharge-body{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px;flex:1;min-height:0}.recharge-main{min-width:0}.recharge-loading{display:flex;align-items:center;gap:10px;color:#888;height:180px}.recharge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.recharge-pack{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-height:118px;padding:16px 16px 14px;border:1px solid #2a2a2a;border-radius:12px;background:#141414;color:#fff;cursor:pointer;text-align:left;transition:border-color .18s,box-shadow .18s,background .18s}.recharge-pack:hover{border-color:#3a3a3a;background:#181818}.recharge-pack.is-selected{border-color:#00d4ff;box-shadow:0 0 0 1px #00d4ff40}.recharge-pack--featured{grid-column:span 1}.recharge-pack-badge{position:absolute;top:10px;right:10px;color:#00d4ff;font-size:12px;line-height:1}.recharge-pack-credits{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:18px;font-weight:600;letter-spacing:.01em}.recharge-pack-credits .anticon{color:#d0d0d0;font-size:16px}.recharge-pack-price{color:#888;font-size:13px}.recharge-pack-note{color:#666;font-size:12px}.recharge-custom{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px}.recharge-custom-label{color:#888;font-size:14px}.recharge-custom-field{display:flex;align-items:center;gap:8px;min-width:240px;height:40px;padding:0 8px 0 14px;border:1px solid #2a2a2a;border-radius:10px;background:#111;color:#888}.recharge-custom-field .ant-input-number{flex:1;background:transparent;border:none;box-shadow:none;color:#fff}.recharge-custom-field .ant-input-number-input{color:#fff}.recharge-custom-go{width:28px;height:28px;border:none;border-radius:8px;background:#2a2a2a;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.recharge-custom-go:hover{background:#3a3a3a}.recharge-footnote{margin-top:18px;color:#666;font-size:12px}.recharge-summary{display:flex;flex-direction:column;min-width:0}.recharge-summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:#888;font-size:13px;margin-bottom:10px}.recharge-summary-row strong{color:#fff;font-size:18px;font-weight:600}.recharge-summary-row strong.is-arrive{color:#ffb020}.recharge-summary-pay{display:flex;flex-direction:column;gap:6px;margin:8px 0 18px;color:#888;font-size:13px}.recharge-summary-pay em{color:#fff;font-size:28px;font-style:normal;font-weight:600;line-height:1}.recharge-channel{display:flex;gap:8px;margin:0 0 14px}.recharge-channel-btn{flex:1;height:36px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:transparent;color:#aaa;font-size:13px;cursor:pointer}.recharge-channel-btn.is-active{border-color:#1677ff;background:#1677ff29;color:#fff}.recharge-channel-btn:disabled{opacity:.4;cursor:not-allowed}.recharge-qr-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.recharge-qr{width:188px;height:188px;box-sizing:border-box;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;padding:10px}.recharge-qr.is-empty{background:#141414;border:1px dashed #333}.recharge-qr img{width:100%;height:100%;display:block;object-fit:contain}.recharge-qr-hint{width:188px;margin:0;color:#888;font-size:12px;line-height:1.4;text-align:center}.recharge-qr-empty{margin:0;color:#999;font-size:12px;line-height:1.5;text-align:center;padding:16px}.recharge-mock-pay{margin-top:12px;margin-left:auto;border:none;background:transparent;color:#888;font-size:12px;cursor:pointer;text-decoration:underline}.recharge-mock-pay:hover{color:#ccc}.mobile-manage-modal .ant-modal-content{background:#141414;border:1px solid #2a2a2a}.mobile-manage-modal .ant-modal-header{background:transparent;border-bottom:none;padding:20px 24px 0}.mobile-manage-modal .ant-modal-title{color:#fff;font-size:18px;font-weight:600}.mobile-manage-modal .ant-modal-close{color:#888}.mobile-manage-modal .ant-modal-body{padding:8px 24px 24px}.mobile-manage-body{display:flex;flex-direction:column;gap:16px}.mobile-manage-step-title{color:#fff;font-size:16px;font-weight:600;line-height:1.4}.mobile-manage-hint{color:#888;font-size:14px;line-height:1.5}.mobile-manage-mobile-input{height:44px;background:#1a1a1a!important;border-color:#333!important;color:#fff!important;border-radius:10px}.mobile-manage-mobile-input::placeholder{color:#666}.mobile-manage-code-field{display:flex;align-items:center;height:48px;padding:0 6px 0 14px;border:1px solid #333;border-radius:10px;background:#1a1a1a}.mobile-manage-code-field .ant-input{flex:1;background:transparent;color:#fff;padding:0}.mobile-manage-code-field .ant-input::placeholder{color:#666}.mobile-manage-code-send{flex-shrink:0;border:none;background:transparent;color:#00d4ff;font-size:14px;padding:8px 12px;cursor:pointer;white-space:nowrap}.mobile-manage-code-send:disabled{color:#555;cursor:not-allowed}.mobile-manage-footer{display:flex;justify-content:center;gap:16px;margin-top:8px}.mobile-manage-btn{min-width:120px;height:40px;border-radius:999px!important}.mobile-manage-btn--ghost{background:#262626!important;border-color:#333!important;color:#ddd!important}.mobile-manage-btn--primary{background:#fff!important;border-color:#fff!important;color:#111!important}.mobile-manage-btn--primary:hover{background:#f0f0f0!important;border-color:#f0f0f0!important;color:#111!important}@media (max-width: 900px){.recharge-body{grid-template-columns:1fr}.recharge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recharge-qr-wrap,.recharge-mock-pay{margin-left:0}}.app-logo-lockup{display:flex;flex-direction:column;align-items:center;gap:16px}.app-logo-lockup--start{align-items:flex-start}.app-logo-lockup-icon{display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 8px 24px rgba(22,119,255,.32))}.app-logo-lockup-text{display:flex;flex-direction:column;align-items:inherit;gap:4px}.app-logo-lockup-brand{color:#fff;font-size:28px;font-weight:800;letter-spacing:.18em;line-height:1.1}.app-logo-lockup-fullname{color:#bbb;font-size:14px;letter-spacing:.08em}.app-logo-lockup-en{color:#666;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.app-logo-lockup-subtitle{color:#666;font-size:14px;margin-top:4px}.app-brand-mark{display:flex;align-items:center;gap:12px;min-width:0}.app-brand-mark-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.app-brand-mark-name{color:#fff;font-size:18px;font-weight:700;letter-spacing:.14em;line-height:1.2}.app-brand-mark-tagline{color:#666;font-size:12px;letter-spacing:.04em}.project-card-menu .ant-dropdown-menu{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:10px;padding:4px;min-width:120px}.project-card-menu .ant-dropdown-menu-item{color:#ccc;border-radius:6px}.project-card-menu .ant-dropdown-menu-item:hover{background:#262626;color:#fff}.project-card-menu-btn{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:8px;background:#0000008c;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;opacity:0;transition:opacity .2s;z-index:20}.project-card:hover .project-card-menu-btn,.project-card.is-menu-open .project-card-menu-btn,.asset-group-card:hover .project-card-menu-btn,.asset-group-card.is-menu-open .project-card-menu-btn,.collection-card:hover .project-card-menu-btn,.collection-card.is-menu-open .project-card-menu-btn{opacity:1}.project-card-cover{width:100%;aspect-ratio:16 / 10;position:relative;background:#111;overflow:hidden}.project-card-cover-media{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.project-card-cover-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e);font-size:32px;color:#333}.project-card-cover-gradient{position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);pointer-events:none}.project-card-body{padding:8px 10px 10px}.project-card-updated{color:#666;font-size:11px;line-height:1.3}.member-modal-subtitle{color:#888;font-size:13px;margin-bottom:4px;display:flex;align-items:center;gap:6px}.member-modal-project-name{font-size:20px;font-weight:600;color:#fff;margin-bottom:20px}.member-modal-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;color:#888;font-size:13px}.member-modal-add-link{color:#1677ff;cursor:pointer;font-size:13px}.member-modal-add-link:hover{opacity:.85}.member-modal-list{max-height:320px;overflow-y:auto}.member-modal-row{display:grid;grid-template-columns:1fr 140px 100px;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #1e1e1e}.member-modal-name{color:#fff;font-size:14px}.member-modal-phone{color:#666;font-size:13px;text-align:center}.member-modal-role{text-align:right;color:#888;font-size:13px}.member-perm-trigger{display:inline-flex;align-items:center;gap:4px;cursor:pointer;color:#ccc;font-size:13px}.member-perm-trigger:hover{color:#fff}.member-add-row{display:flex;gap:8px;margin-bottom:12px}.member-add-panel{margin:-8px 0}.member-add-back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:#ccc;font-size:14px;cursor:pointer;padding:0;margin-bottom:16px}.member-add-back:hover{color:#fff}.member-add-hint{color:#888;font-size:13px;margin-bottom:12px}.member-add-search{margin-bottom:12px}.member-add-search .ant-input-affix-wrapper{background:#141414;border-color:#333;border-radius:8px}.member-add-search .ant-input{background:transparent;color:#ccc}.member-add-list{max-height:360px;overflow-y:auto;margin-bottom:20px}.member-add-item{display:grid;grid-template-columns:1fr 160px 28px;align-items:center;gap:12px;padding:14px 12px;border-radius:8px;cursor:pointer;transition:background .15s}.member-add-item:hover{background:#1a1a1a}.member-add-item.selected{background:#222}.member-add-item-name{color:#fff;font-size:14px}.member-add-item-account{color:#666;font-size:13px;text-align:center}.member-add-check{width:22px;height:22px;border-radius:50%;border:2px solid #444;display:flex;align-items:center;justify-content:center;margin-left:auto;flex-shrink:0;transition:all .15s}.member-add-check.checked{background:#1677ff;border-color:#1677ff;color:#fff}.member-add-empty{padding:48px 0;text-align:center;color:#555;font-size:14px}.member-team-filter{display:flex;gap:8px;overflow-x:auto;margin-bottom:12px;padding-bottom:2px}.member-team-chip{flex:0 0 auto;border:1px solid #333;background:#141414;color:#aaa;border-radius:999px;padding:4px 12px;cursor:pointer;font-size:13px;line-height:20px}.member-team-chip.is-active{border-color:#1677ff;color:#fff;background:#1677ff29}.member-add-submit{height:44px;border-radius:8px;font-weight:600}.member-perm-loading-btn{padding:0 4px!important;height:auto!important;color:#888!important;font-size:13px!important}.member-modal-remove{color:#ff4d4f!important}.project-card-name{color:#fff;font-size:13px;font-weight:500;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-name--editable{cursor:text;border-radius:4px;padding:2px 4px;margin:-2px -4px 2px;transition:background .15s}.project-card-name--editable:hover{background:#ffffff14}.project-card-name-input{margin-bottom:4px}.project-card-name-input input{color:#fff!important;background:#2a2a2a!important;border-color:#444!important}.project-card-creator{display:flex;align-items:center;gap:6px;margin-bottom:4px;min-width:0}.project-card-creator-name{color:#888;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-creator-avatar{width:20px;height:20px;border-radius:50%;object-fit:cover;flex-shrink:0;background:#333}.project-card-creator-fallback{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#333;color:#888;font-size:12px;flex-shrink:0}.auth-page{--auth-bg: #00040c;--auth-card: rgba(5, 10, 22, .58);--auth-border: rgba(148, 163, 184, .1);--auth-border-focus: rgba(125, 211, 252, .55);--auth-text: #f8fafc;--auth-muted: #8b9cb3;--auth-card-width: clamp(21rem, 26vw, 27.5rem);--auth-card-padding-x: clamp(1.5rem, 3vw, 2.25rem);--auth-card-padding-y: clamp(1.75rem, 3.5vh, 2.5rem);--auth-input-height: clamp(2.875rem, 4.5vh, 3.375rem);--auth-brand-font: clamp(1.35rem, 1.1rem + .7vw, 1.75rem);--auth-title-font: clamp(.95rem, .85rem + .25vw, 1.125rem);--auth-body-font: clamp(.8125rem, .75rem + .15vw, .9375rem);--auth-logo-size: clamp(3.25rem, 2.5rem + 2vw, 4.75rem);--auth-radius: clamp(1.125rem, 1.4vw, 1.375rem);position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--auth-bg);color:var(--auth-text);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif;overflow:hidden}.auth-page__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:#00040c;overflow:hidden}.auth-page__base{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 120% 80% at 50% 110%,rgba(14,28,68,.55) 0%,transparent 58%),radial-gradient(ellipse 90% 60% at 50% -8%,rgba(22,78,160,.18) 0%,transparent 52%),linear-gradient(180deg,#020617,#01040f 38%,#00040c 72%,#020818)}.auth-page__nebula{position:absolute;border-radius:50%;filter:blur(72px);mix-blend-mode:screen;opacity:.42}.auth-page__nebula--1{width:min(72vw,820px);height:min(52vw,520px);top:8%;left:-12%;background:radial-gradient(ellipse 100% 100% at 40% 50%,rgba(56,189,248,.14) 0%,rgba(30,64,175,.08) 42%,transparent 72%);animation:auth-nebula-drift-1 32s ease-in-out infinite alternate}.auth-page__nebula--2{width:min(58vw,640px);height:min(48vw,480px);bottom:6%;right:-10%;background:radial-gradient(ellipse 100% 100% at 60% 40%,rgba(99,102,241,.1) 0%,rgba(22,119,255,.06) 45%,transparent 70%);animation:auth-nebula-drift-2 38s ease-in-out infinite alternate}.auth-page__mesh{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 100% 70% at 50% -15%,rgba(22,119,255,.2),transparent 55%),radial-gradient(ellipse 55% 42% at 88% 32%,rgba(56,189,248,.07),transparent 50%),radial-gradient(ellipse 48% 38% at 8% 68%,rgba(30,64,175,.1),transparent 45%),radial-gradient(ellipse 35% 28% at 72% 78%,rgba(99,102,241,.06),transparent 50%);animation:auth-mesh-shift 24s ease-in-out infinite alternate}.auth-page__light-column{position:absolute;top:-12%;left:50%;width:min(42vw,520px);height:72vh;transform:translate(-50%);background:linear-gradient(180deg,rgba(186,230,253,.09) 0%,rgba(56,189,248,.05) 28%,rgba(22,119,255,.02) 55%,transparent 100%);filter:blur(40px);-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 88%);mask-image:linear-gradient(180deg,#000 0%,transparent 88%);opacity:.85}.auth-page__horizon{position:absolute;left:50%;bottom:-10%;width:min(160vw,1100px);height:46vh;transform:translate(-50%);background:radial-gradient(ellipse 100% 100% at 50% 100%,rgba(56,189,248,.16) 0%,rgba(22,119,255,.07) 32%,rgba(30,64,175,.03) 55%,transparent 72%);pointer-events:none}.auth-page__stardust{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.55;background-image:radial-gradient(1px 1px at 12% 18%,rgba(255,255,255,.35),transparent),radial-gradient(1px 1px at 28% 62%,rgba(255,255,255,.22),transparent),radial-gradient(1px 1px at 44% 34%,rgba(255,255,255,.28),transparent),radial-gradient(1px 1px at 58% 78%,rgba(255,255,255,.18),transparent),radial-gradient(1px 1px at 72% 22%,rgba(255,255,255,.3),transparent),radial-gradient(1px 1px at 86% 52%,rgba(255,255,255,.2),transparent),radial-gradient(1px 1px at 6% 84%,rgba(255,255,255,.15),transparent),radial-gradient(1px 1px at 92% 8%,rgba(255,255,255,.25),transparent),radial-gradient(1.5px 1.5px at 36% 88%,rgba(186,230,253,.35),transparent),radial-gradient(1.5px 1.5px at 64% 12%,rgba(186,230,253,.3),transparent);-webkit-mask-image:radial-gradient(ellipse 90% 80% at 50% 45%,#000 15%,transparent 78%);mask-image:radial-gradient(ellipse 90% 80% at 50% 45%,#000 15%,transparent 78%)}.auth-page__grain{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;width:200%;height:200%;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.78' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;mix-blend-mode:overlay;pointer-events:none}.auth-page__vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 88% 78% at 50% 44%,transparent 32%,rgba(0,4,12,.45) 100%),linear-gradient(180deg,rgba(0,4,12,.35) 0%,transparent 18%,transparent 82%,rgba(0,4,12,.5) 100%)}.auth-page__aurora{position:absolute;border-radius:50%;filter:blur(80px);mix-blend-mode:screen}.auth-page__aurora--1{width:55vw;height:55vw;max-width:680px;max-height:680px;top:-18%;left:-12%;background:radial-gradient(circle,rgba(22,119,255,.24) 0%,transparent 68%);animation:auth-aurora-1 28s ease-in-out infinite;opacity:.34}.auth-page__aurora--2{width:45vw;height:45vw;max-width:560px;max-height:560px;bottom:-22%;right:-10%;background:radial-gradient(circle,rgba(56,189,248,.14) 0%,rgba(30,27,75,.08) 40%,transparent 70%);animation:auth-aurora-2 32s ease-in-out infinite;opacity:.28}.auth-page__aurora--3{width:38vw;height:38vw;max-width:420px;max-height:420px;top:42%;right:18%;background:radial-gradient(circle,rgba(99,102,241,.12) 0%,transparent 72%);animation:auth-aurora-3 36s ease-in-out infinite;opacity:.22}.auth-page__grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(148,163,184,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.032) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 78% 68% at 50% 40%,#000 6%,transparent 72%);mask-image:radial-gradient(ellipse 78% 68% at 50% 40%,#000 6%,transparent 72%);animation:auth-grid-drift 56s linear infinite;opacity:.55}.auth-page__star{position:absolute;border-radius:50%;background:#ffffffd9;box-shadow:0 0 3px #fff6,0 0 8px #94a3ff40;animation:auth-star-twinkle ease-in-out infinite;opacity:.38}.auth-page__star--bright{box-shadow:0 0 4px #ffffff8c,0 0 10px #bae6fd59,0 0 18px #94a3ff2e;opacity:.48;animation-name:auth-star-twinkle-bright}@keyframes auth-mesh-shift{0%{opacity:.88;transform:scale(1)}to{opacity:1;transform:scale(1.03)}}@keyframes auth-nebula-drift-1{0%{transform:translate(0) scale(1);opacity:.38}to{transform:translate(4vw,3vh) scale(1.06);opacity:.48}}@keyframes auth-nebula-drift-2{0%{transform:translate(0) scale(1);opacity:.32}to{transform:translate(-5vw,-2vh) scale(1.05);opacity:.42}}@keyframes auth-aurora-1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(6vw,5vh) scale(1.06)}66%{transform:translate(3vw,-3vh) scale(.97)}}@keyframes auth-aurora-2{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-5vw,-6vh) scale(1.08)}}@keyframes auth-aurora-3{0%,to{transform:translate(0) scale(1);opacity:.18}50%{transform:translate(-3vw,4vh) scale(1.1);opacity:.28}}@keyframes auth-grid-drift{0%{transform:translateY(0)}to{transform:translateY(64px)}}@keyframes auth-star-twinkle{0%,to{opacity:.18;transform:scale(1)}50%{opacity:.55;transform:scale(1.2)}}@keyframes auth-star-twinkle-bright{0%,to{opacity:.32;transform:scale(1)}50%{opacity:.68;transform:scale(1.25)}}@media (prefers-reduced-motion: reduce){.auth-page__mesh,.auth-page__nebula,.auth-page__aurora,.auth-page__grid,.auth-page__star{animation:none!important}}.auth-page__center{position:relative;z-index:1;width:var(--auth-card-width);max-width:min(92vw,var(--auth-card-width))}.auth-page__center:before{content:"";position:absolute;left:50%;top:48%;width:120%;height:55%;transform:translate(-50%,-50%);background:radial-gradient(ellipse 55% 50% at 50% 50%,rgba(56,189,248,.08) 0%,transparent 68%),radial-gradient(ellipse 80% 40% at 50% 60%,rgba(22,119,255,.06) 0%,transparent 72%);filter:blur(36px);pointer-events:none;z-index:-1}.auth-page__card{position:relative;width:100%;padding:var(--auth-card-padding-y) var(--auth-card-padding-x) calc(var(--auth-card-padding-y) * .9);border-radius:var(--auth-radius);border:1px solid var(--auth-border);background:linear-gradient(168deg,rgba(255,255,255,.07) 0%,rgba(255,255,255,.015) 24%,transparent 52%),linear-gradient(220deg,rgba(56,189,248,.04) 0%,transparent 42%),var(--auth-card);-webkit-backdrop-filter:blur(52px) saturate(1.4);backdrop-filter:blur(52px) saturate(1.4);box-shadow:0 0 0 1px #ffffff0f inset,0 1px #ffffff14 inset,0 40px 80px #00000094,0 0 100px #1677ff12}.auth-page__card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:linear-gradient(155deg,#ffffff38,#ffffff0a 32%,#38bdf824 72%,#6366f114);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.auth-page__brand{display:flex;flex-direction:column;align-items:center;gap:clamp(.625rem,1.5vh,.875rem);margin-bottom:clamp(1rem,2vh,1.375rem);text-align:center}.auth-page__brand-logo{width:var(--auth-logo-size)!important;height:var(--auth-logo-size)!important;flex-shrink:0;filter:drop-shadow(0 10px 28px rgba(22,119,255,.38))}.auth-page__brand-copy{display:flex;flex-direction:column;align-items:center;gap:.35rem}.auth-page__brand-name{font-size:var(--auth-brand-font);font-weight:700;letter-spacing:.32em;margin-right:-.32em;background:linear-gradient(180deg,#fff,#cbd5e1);-webkit-background-clip:text;background-clip:text;color:transparent}.auth-page__brand-tagline{font-size:clamp(.625rem,.55rem + .2vw,.6875rem);font-weight:500;letter-spacing:.28em;margin-right:-.28em;text-transform:uppercase;color:#94a3b8bf}.auth-page__divider{height:1px;margin:0 0 clamp(1.125rem,2.2vh,1.5rem);background:linear-gradient(90deg,transparent 0%,rgba(148,163,184,.18) 20%,rgba(148,163,184,.18) 80%,transparent 100%)}.auth-page__card-head{margin:-.25rem 0 clamp(1rem,2vh,1.375rem);text-align:center}.auth-page__card-title{margin:0;font-size:var(--auth-title-font);font-weight:600;color:#e2e8f0}.auth-page__card-subtitle{margin:.375rem 0 0;font-size:var(--auth-body-font);line-height:1.5;color:var(--auth-muted)}.auth-page__card-subtitle--accent{color:#7dd3fc}.auth-page__card-subtitle--error{color:#fca5a5}.auth-page__form .ant-form-item{margin-bottom:clamp(.875rem,1.8vh,1.125rem)}.auth-page__form .ant-form-item-label>label{color:var(--auth-muted)!important;font-size:var(--auth-body-font);font-weight:500;height:auto!important}.auth-page__form--compact .ant-form-item{margin-bottom:12px}.auth-page__form--compact .ant-form-item-label{display:none}.auth-page__form .ant-input-affix-wrapper{height:var(--auth-input-height);border-radius:calc(var(--auth-radius) * .72)!important;font-size:var(--auth-body-font);background:#080e1cb8!important;border:1px solid rgba(148,163,184,.1)!important;box-shadow:inset 0 1px #ffffff0a;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}.auth-page__form .ant-input-affix-wrapper>input.ant-input,.auth-page__form .ant-input-affix-wrapper .ant-input{height:auto;background:transparent!important;border:none!important;box-shadow:none!important;outline:none!important}.auth-page__form .ant-input-affix-wrapper>input.ant-input:focus,.auth-page__form .ant-input-affix-wrapper>input.ant-input:hover,.auth-page__form .ant-input-affix-wrapper .ant-input:focus,.auth-page__form .ant-input-affix-wrapper .ant-input:hover{background:transparent!important;border:none!important;box-shadow:none!important}.auth-page__form .ant-input-affix-wrapper input.ant-input:-webkit-autofill,.auth-page__form .ant-input-affix-wrapper input.ant-input:-webkit-autofill:hover,.auth-page__form .ant-input-affix-wrapper input.ant-input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px rgba(8,14,28,.72) inset!important;-webkit-text-fill-color:var(--auth-text)!important;caret-color:var(--auth-text);transition:background-color 9999s ease-out}.auth-page__form .ant-input-affix-wrapper:hover{border-color:#94a3b833!important;background:#0a1224c7!important}.auth-page__form .ant-input-affix-wrapper-focused,.auth-page__form .ant-input-affix-wrapper:focus-within{border-color:var(--auth-border-focus)!important;background:#0c162ad9!important;box-shadow:inset 0 1px #ffffff0d,0 0 0 3px #38bdf81f!important}.auth-page__form .ant-input-affix-wrapper-focused input.ant-input:-webkit-autofill,.auth-page__form .ant-input-affix-wrapper:focus-within input.ant-input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px rgba(12,22,42,.85) inset!important}.auth-page__form .ant-input-affix-wrapper input::placeholder{color:#55657a!important}.auth-page__form .ant-input-affix-wrapper .ant-input,.auth-page__form .ant-input-affix-wrapper input{color:var(--auth-text)!important}.auth-page__form .ant-input-prefix,.auth-page__form .ant-input-password-icon{color:#5c6d84!important}.auth-page__submit.ant-btn{height:var(--auth-input-height)!important;margin-top:clamp(.5rem,1vh,.75rem);border:none!important;border-radius:calc(var(--auth-radius) * .72)!important;font-size:calc(var(--auth-body-font) + .0625rem)!important;font-weight:600!important;letter-spacing:.14em;background:linear-gradient(180deg,#4dabff,#1677ff 48%,#0ea5e9)!important;box-shadow:0 1px #ffffff2e inset,0 8px 24px #1677ff52!important;transition:opacity .25s ease,box-shadow .25s ease,transform .25s ease!important}.auth-page__submit.ant-btn:not(:disabled):hover{opacity:.98;transform:translateY(-1px);box-shadow:0 1px #ffffff38 inset,0 12px 32px #1677ff61!important}.auth-page__footer{margin-top:16px;text-align:center}.auth-page__beian{position:fixed;bottom:12px;left:0;right:0;z-index:2;text-align:center;pointer-events:none}.auth-page__beian a{pointer-events:auto;color:var(--auth-muted);font-size:12px;text-decoration:none;transition:color .2s ease}.auth-page__beian a:hover{color:#e2e8f0}.auth-page__footer-link{color:var(--auth-muted);font-size:var(--auth-body-font);text-decoration:none;transition:color .2s ease;cursor:pointer}.auth-page__footer-link:hover{color:#e2e8f0}.auth-page__loading{display:flex;justify-content:center;padding:24px 0}@media (max-width: 480px){.auth-page{--auth-card-width: min(92vw, 22.5rem);--auth-logo-size: clamp(2.75rem, 12vw, 3.5rem)}.auth-page__brand-name{letter-spacing:.24em;margin-right:-.24em}.auth-page__brand-tagline{letter-spacing:.22em;margin-right:-.22em}}.project-stats-name{margin:4px 0 16px;color:#fff;font-size:18px;font-weight:600}.project-stats-head{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px}.project-stats-cards{display:grid;grid-template-columns:repeat(3,minmax(0,180px));gap:12px;flex:1}.project-stats-card{background:#3a3a3a;border:1px solid #5c5c5c;border-radius:10px;box-shadow:inset 0 1px #ffffff0d;padding:14px 16px 12px;min-height:84px}.project-stats-card-label{color:#888;font-size:13px}.project-stats-card-value{margin-top:10px;color:#fff;font-size:28px;font-weight:650;line-height:1.1}.ant-modal-root .project-stats-modal.ant-modal .ant-modal-container{background:#242424;border:1px solid #454545;box-shadow:0 20px 48px #00000094,inset 0 1px #ffffff0a}.ant-modal-root .project-stats-modal.ant-modal .ant-modal-title{color:#fff}.ant-modal-root .project-stats-modal.ant-modal .ant-modal-close{color:#a3a3a3}.ant-modal-root .project-stats-modal.ant-modal .ant-modal-close:hover{color:#fff;background:#333}.ant-modal-root .project-stats-modal .ant-select{--ant-select-background-color: #3a3a3a;--ant-select-border-color: #5c5c5c;--ant-select-color: #fff}.ant-modal-root .project-stats-modal .ant-select:not(.ant-select-disabled):hover{--ant-select-background-color: #3a3a3a;--ant-select-border-color: #6e6e6e}.ant-modal-root .project-stats-modal .ant-select:not(.ant-select-disabled).ant-select-focused{--ant-select-background-color: #3a3a3a;--ant-select-border-color: #1677ff}.ant-modal-root .project-stats-modal.ant-modal .ant-table{background:#1a1a1a;border:1px solid #454545;border-radius:10px;overflow:hidden}.ant-modal-root .project-stats-modal.ant-modal .ant-table-wrapper .ant-table-thead>tr>th{background:#303030;color:#888;font-weight:500;border-bottom:1px solid #454545}.ant-modal-root .project-stats-modal.ant-modal .ant-table-wrapper .ant-table-thead>tr>th:before{background-color:#555!important}.ant-modal-root .project-stats-modal.ant-modal .ant-table-wrapper .ant-table-tbody>tr>td{background:#1a1a1a;color:#eee;border-bottom:1px solid #333}.ant-modal-root .project-stats-modal.ant-modal .ant-table-wrapper .ant-table-tbody>tr>.ant-table-cell-row-hover,.ant-modal-root .project-stats-modal.ant-modal .ant-table-wrapper .ant-table-tbody>tr:hover>td{background:#262626}.ant-modal-root .project-stats-modal.ant-modal .ant-table-wrapper .ant-table-tbody>tr:last-child>td{border-bottom:0}.ant-modal-root .project-stats-modal.ant-modal .ant-table-placeholder,.ant-modal-root .project-stats-modal.ant-modal .ant-table-placeholder .ant-table-cell{background:#1a1a1a}.ant-modal-root .project-stats-modal.ant-modal .ant-empty-description{color:#888}.collection-card{position:relative;border-radius:12px;overflow:hidden;background:#1a1a1a;cursor:pointer;border:1px solid #2a2a2a;transition:transform .2s,box-shadow .2s}.collection-card:hover,.collection-card.is-menu-open{transform:translateY(-2px);box-shadow:0 8px 24px #0006}.collection-card:hover .project-card-menu-btn,.collection-card.is-menu-open .project-card-menu-btn{opacity:1}.collection-cover-enter{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;align-items:center;justify-content:center;background:#0006}.collection-cover-enter-btn{padding:8px 24px;background:#ffffff26;border-radius:20px;color:#fff;font-size:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2)}.collection-cover{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px;aspect-ratio:16 / 10;background:#111}.collection-cover.count-0,.collection-cover.count-1{grid-template-columns:1fr;grid-template-rows:1fr}.collection-cover.count-2{grid-template-rows:1fr}.collection-cover img,.collection-cover-empty{width:100%;height:100%;object-fit:cover;min-height:0}.collection-cover-empty{display:flex;align-items:center;justify-content:center;color:#333;font-size:28px;background:linear-gradient(135deg,#1a1a2e,#16213e)}.collection-card-meta{display:flex;align-items:baseline;justify-content:space-between;gap:8px;color:#666;font-size:11px}.collection-card-count{flex-shrink:0;color:#888}.move-collection-list{max-height:420px;overflow:auto;margin-top:8px}.move-collection-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 8px;border-radius:8px;cursor:pointer;color:#ddd}.move-collection-row:hover{background:#262626}.move-collection-count{color:#888;flex-shrink:0}.add-collection-selected{margin:8px 0;color:#888;font-size:12px}.add-collection-row{justify-content:flex-start}.add-collection-check{pointer-events:none}.add-collection-project-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-back{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:18px;font-weight:600;cursor:pointer;background:none;border:none;padding:0}.dashboard-page{flex:1;min-height:0;height:100%;display:flex;flex-direction:column;padding:24px 32px 24px 48px;box-sizing:border-box;overflow:hidden}.dashboard-header{flex-shrink:0}.dashboard-header-title{margin-bottom:20px}.dashboard-tabs{margin-bottom:0}.dashboard-scroll{flex:1;min-height:0;overflow-y:auto;margin-top:24px;margin-right:-12px;padding-right:12px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.dashboard-scroll-footer{display:flex;justify-content:center;padding:24px 0 8px}.dashboard-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:20px}.dashboard-toolbar-spacer{flex:1}.dashboard-account-search.ant-select{width:160px;flex-shrink:0}.dashboard-account-search .ant-select-selector{background:#141414!important;border-color:#333!important;border-radius:8px!important}.dashboard-account-search .ant-select-selection-placeholder,.dashboard-account-search .ant-select-selection-item{color:#ccc}.dashboard-account-search .ant-select-arrow{color:#555}.dashboard-project-search .ant-input-affix-wrapper{background:#141414;border-color:#333;border-radius:8px}.dashboard-account-search .ant-input,.dashboard-project-search .ant-input{background:transparent;color:#ccc}.dashboard-account-search .ant-input::placeholder,.dashboard-project-search .ant-input::placeholder{color:#555}.dashboard-sort-btn{background:#141414!important;border-color:#333!important;color:#ccc!important;border-radius:8px!important;height:32px;flex-shrink:0}.dashboard-sort-btn:hover{border-color:#555!important;color:#fff!important}.dashboard-project-search{width:220px;flex-shrink:0}.dashboard-project-search .ant-input-clear-icon{color:#666}.dashboard-create-btn{border-radius:8px;font-weight:600;flex-shrink:0}.dashboard-account-search .ant-select-clear{color:#666}.asset-library-page{flex:1;display:flex;flex-direction:column;min-height:0;padding:24px 32px 32px;box-sizing:border-box;overflow:hidden}.asset-library-panel-page{flex:1;min-height:0;display:flex;flex-direction:column}.asset-library-scroll{flex:1;min-height:0;overflow-y:auto;margin-right:-12px;padding-right:12px}.asset-library-scroll-footer{display:flex;justify-content:center;padding:24px 0 8px}.asset-library-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.asset-library-header h1{margin:0;font-size:28px;font-weight:600;color:#fff}.asset-library-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.asset-library-tabs{display:flex;gap:24px;margin-bottom:12px}.asset-library-tab{background:none;border:none;color:#888;font-size:15px;cursor:pointer;padding:0 0 8px;border-bottom:2px solid transparent}.asset-library-tab.is-active{color:#fff;border-bottom-color:#13c2c2}.asset-library-categories{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.asset-library-category{border:none;background:transparent;color:#888;padding:6px 14px;border-radius:8px;cursor:pointer;font-size:13px}.asset-library-category.is-active{background:#262626;color:#fff}.asset-library-search{width:220px}.asset-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.asset-group-card{background:#141414;border:1px solid #2a2a2a;border-radius:12px;overflow:hidden;cursor:pointer;transition:border-color .15s,transform .15s}.asset-group-card:hover{border-color:#444;transform:translateY(-1px)}.asset-library-toolbar--flyout{align-items:flex-start;margin-bottom:12px}.asset-library-toolbar--flyout .asset-library-tabs{margin-bottom:0;flex-shrink:0}.asset-library-toolbar--flyout .asset-library-search{flex:1;min-width:140px;width:auto}.asset-library-grid--flyout{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.asset-group-card--flyout{cursor:default}.asset-group-card--flyout:hover{transform:none}.asset-group-card-cover{aspect-ratio:4 / 3;background:#1a1a1a;overflow:hidden;position:relative}.asset-group-card-cover>img,.asset-group-card-cover>video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.asset-group-card-cover>.asset-group-card-cover-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:32px;color:#444}.asset-group-card-menu-wrap{position:absolute;top:10px;right:10px;z-index:30;opacity:0;transition:opacity .2s ease}.asset-group-card.is-hovered .asset-group-card-menu-wrap,.asset-group-card.is-menu-open .asset-group-card-menu-wrap{opacity:1}.asset-group-card-menu-btn{width:28px;height:28px;border:none;border-radius:8px;background:#0000008c;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;padding:0;font-size:16px;line-height:1;transition:background .15s ease}.asset-group-card-menu-btn:hover{background:#000000b8}.asset-group-card-menu.ant-dropdown{z-index:1100}.asset-group-card-menu .ant-dropdown-menu{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:10px;padding:4px;min-width:120px}.asset-group-card-menu .ant-dropdown-menu-item{color:#ccc;border-radius:6px}.asset-group-card-menu .ant-dropdown-menu-item:hover{background:#262626;color:#fff}.asset-group-card-enter-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;align-items:center;justify-content:center;background:#0006;pointer-events:none}.asset-group-card-enter-label{padding:8px 24px;background:#ffffff26;border-radius:20px;color:#fff;font-size:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);pointer-events:auto;cursor:pointer}.asset-library-grid--flyout .asset-group-card-cover,.asset-library-panel--canvas-flyout .asset-group-card-cover{aspect-ratio:1}.asset-group-card-cover-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:#00000061;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;opacity:0;transition:opacity .18s ease}.asset-cover-action-btn{border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:7px 22px;min-width:92px;font-size:13px;font-weight:500;line-height:1.2;color:#fff;cursor:pointer;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:0 4px 18px #00000038;transition:background .15s ease,border-color .15s ease,transform .15s ease,box-shadow .15s ease}.asset-cover-action-btn--ghost{background:#1c1c1c94}.asset-cover-action-btn--ghost:hover{background:#2a2a2abd;border-color:#ffffff57;box-shadow:0 6px 20px #00000047}.asset-cover-action-btn--primary{background:#ffffff38;border-color:#ffffff61}.asset-cover-action-btn--primary:hover{background:#ffffff52;border-color:#ffffff7a;transform:translateY(-1px);box-shadow:0 8px 24px #0000004d}.asset-cover-action-btn:active{transform:translateY(0)}.asset-group-card--flyout:hover .asset-group-card-cover-overlay{opacity:1}.asset-group-card-cover-name{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:18px 10px 8px;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.72) 100%);color:#fff;font-size:12px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.asset-detail-nav{display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-shrink:0}.asset-detail-flyout{flex:1;min-height:0;display:flex;flex-direction:column}.asset-detail-flyout-scroll{flex:1;min-height:0;overflow-y:auto}.asset-library-panel-body--detail{overflow:hidden;display:flex;flex-direction:column;padding-bottom:12px}.asset-library-panel-body--detail .asset-detail-nav{margin-bottom:0;padding-bottom:12px;border-bottom:1px solid #2a2a2a;background:#111}.asset-library-panel-body--detail .asset-detail-flyout-scroll{padding-top:12px}.asset-detail-back{color:#aaa!important;flex-shrink:0}.asset-detail-nav-title{flex:1;min-width:0;font-size:14px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-detail-search{width:160px;flex-shrink:0}.asset-picker-batch-toggle{display:inline-flex;align-items:center;gap:6px;color:#bbb;font-size:12px;flex-shrink:0}.asset-detail-items--flyout{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.asset-item-card--flyout{border:none;background:transparent;border-radius:8px;overflow:hidden}.asset-item-card--flyout.is-picker-selectable{cursor:pointer}.asset-item-card--flyout.is-picker-selected .asset-item-card-preview{outline:2px solid #35d7ff;outline-offset:-2px}.asset-item-card--flyout .asset-item-card-preview{border-radius:8px}.asset-item-card-cover-name{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:16px 8px 6px;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.72) 100%);color:#fff;font-size:11px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.asset-picker-check{position:absolute;top:8px;left:8px;z-index:3;width:16px;height:16px;border-radius:4px;border:1px solid rgba(255,255,255,.4);background:#0000006b;color:#0c1118;font-size:12px;line-height:14px;display:inline-flex;align-items:center;justify-content:center}.asset-picker-check.is-selected{background:#53e2ff;border-color:#53e2ff;color:#00111f}.asset-item-card-cover-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:#00000052;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .18s ease}.asset-item-card--flyout:hover .asset-item-card-cover-overlay{opacity:1}.asset-item-card--flyout.is-pending,.asset-item-card--flyout.is-failed{opacity:.65}.asset-detail-items--flyout .asset-item-card-preview{border-radius:8px}.asset-picker-batch-bar{margin-top:12px;border:1px solid #2f2f2f;background:#00000061;border-radius:10px;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.asset-picker-batch-count{color:#aaa;font-size:12px;flex-shrink:0;white-space:nowrap}.asset-group-card-body{padding:8px 12px 10px}.asset-group-card-title{font-size:13px;font-weight:500;color:#fff;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-group-card-meta{font-size:11px;color:#666;line-height:1.45}.asset-library-panel--canvas-flyout{width:min(640px,calc(100vw - 120px));height:min(520px,calc(100vh - 120px));max-height:calc(100vh - 48px);pointer-events:all}.asset-library-panel--canvas-flyout .asset-library-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.asset-library-panel{background:#111;border:1px solid #2a2a2a;border-radius:16px;box-shadow:0 16px 48px #0000008c;display:flex;flex-direction:column;width:min(920px,calc(100vw - 48px));height:min(80vh,720px);max-height:min(80vh,720px);overflow:hidden}.asset-library-panel.is-fullscreen{position:fixed;top:24px;right:24px;bottom:24px;left:24px;width:auto;height:auto;max-height:none;z-index:10071}.asset-library-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #2a2a2a}.asset-library-panel-title{font-size:16px;font-weight:600;color:#fff}.asset-library-panel-body{flex:1;min-height:0;overflow:auto;padding:16px 18px 20px}.asset-library-panel-actions{display:flex;gap:8px}.asset-group-card-actions{display:flex;gap:8px;padding:0 14px 14px}.asset-group-card-actions .ant-btn{flex:1}.asset-detail-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.asset-detail-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.asset-item-card{background:#141414;border:1px solid #2a2a2a;border-radius:10px;overflow:hidden}.asset-item-card.is-pending{opacity:.85}.asset-item-card-kyc-badge{position:absolute;left:8px;right:8px;bottom:8px;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:4px 8px;border-radius:999px;background:#000000b8;color:#91caff;font-size:11px;line-height:1.2;pointer-events:none}.asset-item-card-kyc-badge--failed{color:#ffccc7;background:#5c2b2be0}.asset-item-card.is-failed{border-color:#5c2b2b}.asset-item-card-preview{aspect-ratio:1;background:#1a1a1a;position:relative;overflow:hidden}.asset-item-card-preview img,.asset-item-card-preview video{width:100%;height:100%;object-fit:cover}.asset-item-card-preview-media,.asset-group-card-cover-lazy{width:100%;height:100%;position:relative}.asset-item-card-preview-media--placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:#1a1a1a}.asset-item-card-preview-play-icon{position:absolute;right:8px;bottom:8px;font-size:18px;color:#ffffffd9;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}.asset-item-card-preview-skeleton{width:100%;height:100%;background:linear-gradient(90deg,#1a1a1a 25%,#252525,#1a1a1a 75%);background-size:200% 100%;animation:asset-preview-shimmer 1.2s ease-in-out infinite}@keyframes asset-preview-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.asset-group-card-cover-lazy .asset-group-card-cover-placeholder,.asset-group-card-cover-lazy img,.asset-group-card-cover-lazy video{width:100%;height:100%;object-fit:cover}.asset-item-card-preview-text{padding:12px;font-size:12px;color:#aaa;height:100%;overflow:hidden}.asset-item-type-badge{position:absolute;left:8px;bottom:8px;background:#000000a6;color:#52c41a;font-size:11px;padding:2px 8px;border-radius:4px}.asset-item-card-footer{padding:10px 12px 12px}.asset-item-card-name{font-size:13px;color:#fff;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-item-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#666}.asset-item-card-actions{display:flex;gap:4px}.asset-library-empty{padding:48px 0}.asset-library-floating-wrap{position:absolute;left:16px;bottom:72px;z-index:25}.asset-library-canvas-trigger{width:40px;height:40px;border-radius:10px;border:1px solid #2a2a2a;background:#111;color:#ccc;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px}.asset-library-canvas-trigger.is-active{background:#1677ff26;color:#1677ff;border-color:#1677ff59}.asset-library-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:10070;display:flex;align-items:center;justify-content:center;padding:24px}.asset-picker-item{cursor:pointer}.asset-picker-item.is-selected{outline:2px solid #1677ff;outline-offset:2px}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}.canvas-flow{background-color:#050505}.canvas-flow .react-flow__pane{touch-action:none;overscroll-behavior:none}.canvas-flow:not(.is-pan-mode) .react-flow__pane,.canvas-flow:not(.is-pan-mode) .react-flow__pane.selection{cursor:default}.canvas-flow.is-pan-mode,.canvas-flow.is-pan-mode .react-flow__pane,.canvas-flow.is-pan-mode .react-flow__node{cursor:grab}.canvas-flow.is-pan-mode .react-flow__pane.dragging,.canvas-flow.is-pan-mode .react-flow__node:active{cursor:grabbing}.canvas-flow .react-flow__node{overflow:visible!important}.canvas-flow .react-flow__background{background-color:#050505}.canvas-flow .react-flow__controls{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px;box-shadow:0 4px 12px #0006;overflow:hidden}.canvas-top-bar{display:flex;align-items:center;gap:8px;width:100%;min-width:0}.canvas-top-bar-back{color:#888!important;width:32px;height:32px;flex-shrink:0}.canvas-top-bar-title{color:#fff;font-weight:600;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.canvas-share-page{display:flex;flex-direction:column;height:100vh;background:#0a0a0a;color:#fff}.canvas-share-page__loading{flex:1;display:flex;align-items:center;justify-content:center}.canvas-share-page__header{display:flex;align-items:center;justify-content:space-between;gap:16px;height:52px;padding:0 20px;border-bottom:1px solid #1e1e1e;background:#111;flex-shrink:0}.canvas-share-page__title{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.canvas-share-page__badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#1677ff1f;border:1px solid rgba(22,119,255,.35);color:#69b1ff;font-size:12px;flex-shrink:0}.canvas-share-page__body{flex:1;min-height:0;position:relative}.canvas-share-page__footer{height:36px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 20px;border-top:1px solid #1e1e1e;background:#111;color:#666;font-size:12px;flex-shrink:0}.canvas-share-page__hint{color:#888}.canvas-flow--readonly .react-flow__node,.canvas-flow--readonly .node-shell-root--fit{cursor:default}.canvas-flow--readonly .node-connect-handles-layer{pointer-events:none}.canvas-flow--readonly .node-connect-handles-layer .react-flow__handle{opacity:0!important;pointer-events:none!important}.canvas-flow--readonly .node-op-toolbar-root{display:none!important}.canvas-flow--readonly .text-node-editor,.canvas-flow--readonly .text-node-resize-handle{pointer-events:none}.project-cover-picker-hint{color:#888;font-size:13px;margin:0 0 16px}.project-cover-picker-loading{display:flex;justify-content:center;padding:48px 0}.project-cover-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;max-height:420px;overflow-y:auto}.project-cover-picker-btn{border:none;padding:0;margin:0;background:transparent;cursor:pointer;text-align:left;border-radius:10px}.project-cover-picker-btn:disabled{cursor:not-allowed;opacity:.6}.project-cover-picker-item{position:relative;border-radius:10px;border:1px solid #333;background:#1a1a1a;overflow:hidden;transition:border-color .15s,box-shadow .15s}.project-cover-picker-btn:hover .project-cover-picker-item{border-color:#555}.project-cover-picker-item--selected{border-color:#1677ff;box-shadow:0 0 0 1px #1677ff}.project-cover-picker-check{position:absolute;top:6px;right:6px;z-index:2;width:22px;height:22px;border-radius:50%;background:#1677ff;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px}.project-cover-picker-thumb{aspect-ratio:16 / 10;background:#111}.project-cover-picker-thumb img,.project-cover-picker-thumb video{width:100%;height:100%;object-fit:cover;display:block}.project-cover-picker-label{padding:8px 10px 2px;font-size:12px;color:#ddd;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-cover-picker-meta{padding:0 10px 8px;font-size:11px;color:#666}.canvas-list-dock{position:absolute;left:12px;bottom:12px;z-index:42;display:flex;flex-direction:column-reverse;align-items:flex-start;gap:8px;pointer-events:none}.canvas-list-dock.is-expanded{top:0;bottom:12px}.canvas-list-dock>*{pointer-events:all}.canvas-list-dock-trigger{display:inline-flex;align-items:center;gap:8px;max-width:min(280px,calc(100vw - 360px));height:36px;padding:0 12px;border:1px solid #2a2a2a;border-radius:10px;background:#1a1a1a;color:#ccc;font-size:12px;cursor:pointer;box-shadow:0 8px 24px #0006;transition:background .15s,border-color .15s,color .15s}.canvas-list-dock-trigger:hover{background:#222;border-color:#3a3a3a;color:#fff}.canvas-list-dock-trigger.is-open{border-color:#1677ff73;color:#fff}.canvas-list-dock-trigger-icon{color:#69b1ff;font-size:14px;flex-shrink:0}.canvas-list-dock-trigger-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.canvas-floating-toolbar{position:absolute;left:16px;top:50%;transform:translateY(-50%);z-index:43;display:flex;flex-direction:column;gap:6px;transition:left .2s ease}.canvas-floating-toolbar.is-docked-to-list{left:300px}.canvas-floating-popup-anchor{position:absolute;left:52px;z-index:20}.canvas-floating-popup-anchor--center{top:50%;transform:translateY(-50%)}.canvas-floating-popup-anchor--top{top:0}.canvas-floating-status{position:absolute;left:12px;bottom:56px;z-index:40;display:inline-flex;align-items:center;gap:8px;max-width:min(320px,calc(100vw - 360px));padding:6px 12px;border:1px solid #2a2a2a;border-radius:10px;background:#1a1a1af5;color:#999;font-size:12px;box-shadow:0 8px 24px #00000059;pointer-events:none}.canvas-floating-status.is-busy{color:#1677ff}.canvas-list-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0000001f}.canvas-list-panel{position:relative;flex:1;min-height:0;width:280px;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;box-shadow:0 12px 40px #0000008c;display:flex;flex-direction:column;overflow:hidden}.canvas-list-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 10px 10px 14px;border-bottom:1px solid #2a2a2a;flex-shrink:0}.canvas-list-panel-title{color:#fff;font-size:14px;font-weight:600}.canvas-list-panel-close{color:#888!important;width:28px;height:28px}.canvas-list-panel-close:hover{color:#fff!important;background:#2a2a2a!important}.canvas-list-panel-body{flex:1;overflow:auto;padding:0 4px 12px;min-height:0}.canvas-list-search-empty{padding:24px 12px;color:#666;font-size:12px;text-align:center}.canvas-list-panel-body--nodes{padding-top:4px}.project-node-list-loading{display:flex;justify-content:center;padding:32px 12px}.project-node-list{list-style:none;margin:0;padding:0 8px}.project-node-list-item{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:6px 8px;border:none;border-radius:8px;background:transparent;color:#ccc;cursor:pointer;text-align:left;transition:background .15s}.project-node-list-item:hover,.project-node-list-item--active{background:#ffffff14}.project-node-list-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.4}.project-node-type-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:4px;border:1px solid rgba(255,255,255,.14);background:#ffffff0a;color:#aaa;font-size:11px}.project-node-type-letter{font-size:12px;font-weight:600;line-height:1;color:#ccc}.project-node-type-icon--type-2{color:#9ec5ff}.project-node-type-icon--type-3{color:#ffb4b4;font-size:10px}.project-node-type-icon--type-4{color:#b8a0ff}.project-node-type-icon--type-5{color:#8fd4a8;font-size:10px}.canvas-list-panel-body .canvas-list-tree,.canvas-list-panel-body .canvas-list-tree .ant-tree-list,.canvas-list-panel-body .canvas-list-tree .ant-tree-list-holder,.canvas-list-panel-body .canvas-list-tree .ant-tree-list-holder-inner{width:100%}.canvas-list-panel-body .canvas-list-tree .ant-tree-treenode{width:100%;align-items:stretch;padding-bottom:2px}.canvas-list-panel-body .canvas-list-tree .ant-tree-node-content-wrapper{flex:1;min-width:0;width:100%;display:flex;align-items:center;border-radius:6px}.canvas-list-panel-body .canvas-list-tree .ant-tree-node-content-wrapper.ant-tree-node-selected{background:#1677ff2e!important}.canvas-list-panel-body .canvas-list-tree .ant-tree-node-content-wrapper.ant-tree-node-selected .canvas-list-tree-node-name{color:#69b1ff}.canvas-list-panel-body .canvas-list-tree .ant-tree-title{flex:1;min-width:0;width:100%;display:block}.canvas-list-panel-body .canvas-list-tree .ant-tree-switcher{flex-shrink:0}.canvas-list-panel-body .canvas-list-tree .ant-tree-switcher-noop{width:12px}.canvas-list-tree-node{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:24px;padding:0 4px;border-radius:6px}.canvas-list-tree-node-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:grab;-webkit-user-select:none;user-select:none}.canvas-list-tree-node-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:16px;color:#888;font-size:13px}.canvas-list-tree-folder-count{flex-shrink:0;min-width:18px;padding:0 6px;color:#666;font-size:11px;text-align:right}.canvas-list-tree-actions{display:flex;align-items:center;gap:2px;flex-shrink:0;opacity:0;transition:opacity .15s}.canvas-list-tree-node:hover .canvas-list-tree-actions{opacity:1}.canvas-list-tree-action-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:6px;background:transparent;color:#888;cursor:pointer;transition:background .15s,color .15s}.canvas-list-tree-action-btn:hover{background:#ffffff14;color:#fff}.canvas-list-tree-action-btn--danger:hover{background:#ff4d4f26;color:#ff7875}.canvas-list-panel-body .canvas-list-tree .ant-tree-draggable-icon{color:#666;flex-shrink:0}.canvas-list-panel-body .canvas-list-tree .ant-tree-treenode-draggable .ant-tree-node-content-wrapper{cursor:grab}.canvas-list-panel-body .canvas-list-tree .canvas-list-tree-folder-node.ant-tree-treenode-draggable .ant-tree-node-content-wrapper{cursor:default}.canvas-list-panel-body .canvas-list-tree .canvas-list-tree-folder-node.ant-tree-treenode-draggable.drag-over .ant-tree-node-content-wrapper,.canvas-list-panel-body .canvas-list-tree .canvas-list-tree-folder-node.ant-tree-treenode-draggable.drop-target .ant-tree-node-content-wrapper{background:#1677ff1f;outline:1px dashed rgba(22,119,255,.55)}.canvas-list-panel-body .canvas-list-tree .ant-tree-treenode-draggable .ant-tree-node-content-wrapper:active{cursor:grabbing}.canvas-list-panel-body .canvas-list-tree .ant-tree-treenode-draggable .ant-tree-drop-indicator{background:#1677ff}.canvas-list-panel-body .canvas-list-tree .ant-tree-treenode.drag-over .ant-tree-node-content-wrapper,.canvas-list-panel-body .canvas-list-tree .ant-tree-treenode.drag-over[draggable=false] .ant-tree-node-content-wrapper{background:#1677ff1f;outline:1px dashed rgba(22,119,255,.55)}.canvas-list-tree-folder{color:#aaa;display:block;width:100%}.canvas-file-tree{display:flex;flex-direction:column;gap:2px;width:100%}.canvas-file-tree-row{position:relative;width:100%}.canvas-file-tree-row-inner,.canvas-file-tree-row-button{display:flex;align-items:center;gap:6px;min-height:32px;width:100%;padding:0 8px;border:none;border-radius:8px;background:transparent;color:#ccc;font-size:12px;text-align:left;cursor:grab;-webkit-user-select:none;user-select:none}.canvas-file-tree-row-button{cursor:pointer}.canvas-file-tree-row-button:focus-visible{outline:1px solid rgba(22,119,255,.55);outline-offset:-1px}.canvas-file-tree-row--canvas.is-nested .canvas-file-tree-row-inner,.canvas-file-tree-row--canvas.is-nested .canvas-file-tree-row-button{margin-left:16px;width:calc(100% - 16px)}.canvas-file-tree-row-inner:hover,.canvas-file-tree-row-button:hover{background:#ffffff0d}.canvas-file-tree-row--canvas .canvas-file-tree-row-button{cursor:grab}.canvas-file-tree.is-pointer-dragging .canvas-file-tree-row--canvas .canvas-file-tree-row-button{cursor:grabbing}.canvas-file-tree-row--canvas.is-active .canvas-file-tree-row-button{background:#1677ff2e}.canvas-file-tree-row--canvas.is-active .canvas-file-tree-name{color:#69b1ff}.canvas-file-tree-row.is-drop-into .canvas-file-tree-row-inner{background:#1677ff1f;outline:1px dashed rgba(22,119,255,.55)}.canvas-file-tree-row--folder.is-drop-into{background:#1677ff0f;border-radius:8px}.canvas-file-tree-expand{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;background:transparent;color:#888;cursor:pointer;flex-shrink:0}.canvas-file-tree-expand .anticon{font-size:10px;transition:transform .15s ease}.canvas-file-tree-expand .anticon.is-expanded{transform:rotate(90deg)}.canvas-file-tree-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;color:#888;flex-shrink:0}.canvas-file-tree-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-file-tree-count{flex-shrink:0;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ffffff14;color:#888;font-size:11px;line-height:18px;text-align:center}.canvas-file-tree-drop-line{position:absolute;left:8px;right:8px;height:2px;background:#1677ff;border-radius:999px;pointer-events:none;z-index:2}.canvas-file-tree-drop-line--before{top:-1px}.canvas-file-tree-drop-line--after{bottom:-1px}.canvas-file-tree-drop-line--into{display:none}.canvas-file-tree-root-drop{display:none;align-items:center;justify-content:center;min-height:36px;margin:6px 8px 0;border:1px dashed #333;border-radius:8px;color:#777;font-size:11px}.canvas-file-tree-root-drop.is-visible{display:flex}.canvas-file-tree-root-drop.is-active{border-color:#1677ffa6;background:#1677ff14;color:#69b1ff}.canvas-file-tree-row.is-dragging{opacity:.45;pointer-events:none}.canvas-file-tree.is-pointer-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.canvas-file-tree-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:14px;color:#666;flex-shrink:0;cursor:grab}.canvas-file-tree-row-inner:hover .canvas-file-tree-drag-handle,.canvas-file-tree-row.is-dragging .canvas-file-tree-drag-handle{color:#999}.canvas-file-tree-row--folder .canvas-list-tree-actions{opacity:0}.canvas-file-tree-row--folder:hover .canvas-list-tree-actions,.canvas-file-tree-row--canvas:hover .canvas-list-tree-actions{opacity:1}.canvas-editor-root{height:100%;display:flex;flex-direction:column;background:#0a0a0a;min-height:0;overflow:hidden}.canvas-editor-body{flex:1;display:flex;overflow:hidden;position:relative;min-height:0}.canvas-busy-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#00000059;pointer-events:all}.canvas-drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:center;justify-content:center;background:#1677ff1f;border:2px dashed rgba(22,119,255,.65);border-radius:8px;pointer-events:none}.canvas-drop-overlay-inner{text-align:center;padding:24px 32px;background:#0a0a0ad9;border-radius:12px;border:1px solid rgba(22,119,255,.35)}.canvas-drop-overlay-title{color:#fff;font-size:18px;font-weight:600;margin-bottom:8px}.canvas-drop-overlay-desc{color:#999;font-size:13px;line-height:1.5}.canvas-flow .react-flow__controls-button{width:28px;height:28px;background:#1a1a1a;color:#888;border-bottom-color:#2a2a2a}.canvas-flow .react-flow__controls-button:hover{background:#2a2a2a;color:#ccc}.canvas-flow .react-flow__controls-button svg{max-width:14px;max-height:14px}.canvas-flow .react-flow__minimap.canvas-flow-minimap{width:280px;height:160px;bottom:64px!important;margin:0 12px 0 0!important;border-radius:10px;overflow:hidden;border:1px solid #2a2a2a;box-shadow:0 8px 24px #00000073}.canvas-flow .react-flow__minimap.canvas-flow-minimap .react-flow__minimap-mask{fill:#050505b8}.canvas-flow .react-flow__minimap.canvas-flow-minimap .react-flow__minimap-svg{display:block;width:100%;height:100%;border-radius:10px}.canvas-viewport-panel{display:flex;align-items:center;gap:2px;margin:0 12px 12px 0!important;padding:4px 6px;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:10px;box-shadow:0 8px 24px #0006;pointer-events:all}.canvas-viewport-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;border-radius:8px;background:transparent;color:#aaa;font-size:14px;cursor:pointer;transition:background .15s,color .15s}.canvas-viewport-btn:hover:not(:disabled){background:#2a2a2a;color:#fff}.canvas-viewport-btn:disabled{opacity:.35;cursor:not-allowed}.canvas-viewport-btn.is-active{background:#1677ff2e;color:#69b1ff}.canvas-viewport-btn.is-pan-active{background:#faad1429;color:#ffc53d}.canvas-viewport-mode-icon{width:16px;height:16px;display:block}.canvas-viewport-divider{width:1px;height:18px;margin:0 4px;background:#333;flex-shrink:0}.canvas-viewport-zoom{min-width:44px;text-align:center;color:#ccc;font-size:12px;font-weight:500;-webkit-user-select:none;user-select:none}.node-shell-body{position:relative}.node-shell-root{width:100%;height:100%;box-sizing:border-box;position:relative}.node-connect-handles-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:12}.node-connect-handles-layer .react-flow__handle{pointer-events:all;top:50%!important}.node-shell-root--fit{cursor:grab;box-sizing:border-box}.node-shell-root--fit.is-selected{border:1px solid #3f8cff;box-shadow:0 0 0 2px #1677ff4d;border-radius:12px}.node-shell-root--fit .node-shell-body{display:flex;flex-direction:column}.node-shell-root--fit:not(.node-shell-empty) .node-shell-inner--fit{flex:0 0 auto;width:fit-content;max-width:100%;height:auto}.node-shell-empty.node-shell-root--fit .node-shell-body{flex:1;min-height:0}.node-shell-empty.node-shell-root--fit .node-shell-inner--fit{flex:1;min-height:0;height:100%}.node-shell-root--fit:active{cursor:grabbing}.node-shell-root--fit .node-auto-media-play{cursor:pointer}.node-shell-empty .node-shell-inner,.node-shell-empty .node-shell-inner--fit{background:linear-gradient(180deg,#1a1f2a,#131925)}.node-title-drag-area{cursor:grab}.node-title-drag-area:active{cursor:grabbing}.node-shell-inner{border-radius:12px;overflow:hidden;background:linear-gradient(180deg,#171b22,#10141b)}.node-shell-inner--fit{overflow:hidden;border-radius:11px;background:linear-gradient(180deg,#171b22,#10141b)}.node-shell-inner--video-fit{overflow:visible}.node-auto-audio-wrap{position:relative;width:100%;height:120px;max-height:120px;min-height:0;overflow:hidden;cursor:grab}.node-shell-empty .node-auto-audio-wrap{height:100%;max-height:none}.node-shell-root--fit:has(.node-auto-audio-wrap) .node-shell-inner--fit{padding:0;width:100%;height:100%;max-height:100%;flex:1 1 0;min-height:0;overflow:hidden}.node-shell-root--fit:has(.node-auto-audio-wrap) .node-shell-body{background:#141416;border-radius:12px;padding:0;overflow:hidden;line-height:normal}.node-shell-root--fit:has(.node-auto-audio-wrap):not(.node-shell-empty) .node-shell-inner--fit{flex:0 0 120px;height:120px;max-height:120px}.node-auto-video{position:relative;flex-shrink:0;overflow:hidden;border-radius:11px}.node-auto-video:active,.node-auto-audio-wrap:active{cursor:grabbing}.node-auto-video video{display:block;width:100%;height:100%;border-radius:11px;object-fit:contain;background:linear-gradient(180deg,#171b22,#10141b)}.node-auto-video-poster{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;object-fit:contain;border-radius:11px;pointer-events:none}.node-auto-video-poster-fallback{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;align-items:center;justify-content:center;border-radius:11px;color:#667187;font-size:28px;background:linear-gradient(180deg,#171b22,#10141b);pointer-events:none}.node-auto-media-frame img{object-fit:contain}.node-auto-media-frame.is-loading{position:relative;border-radius:11px;background:linear-gradient(180deg,#171b22,#10141b);overflow:hidden}.node-auto-video.is-loading{background:linear-gradient(180deg,#171b22,#10141b)}.node-auto-media-frame.is-loading:after,.node-auto-video.is-loading:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,#fff0,#ffffff0f,#fff0);background-size:200% 100%;animation:node-media-shimmer 1.4s ease-in-out infinite;pointer-events:none}.node-auto-video.is-loading:before{z-index:0}.node-auto-media-frame.is-loaded:after{animation:none;background:none}@keyframes node-media-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.node-auto-media-play{position:absolute;z-index:2;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#0000008c;color:#fff;cursor:pointer;pointer-events:auto;transition:background .15s}.node-auto-media-play:hover{background:#000000b8}.node-auto-video .node-auto-media-play{left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;font-size:26px}.node-auto-video:after{content:"";position:absolute;left:0;right:0;bottom:0;height:110px;pointer-events:none;border-radius:0 0 11px 11px;background:linear-gradient(180deg,#05070a00,#05070ab8);transition:opacity .25s ease}.node-auto-video-sound{position:absolute;left:12px;top:12px;z-index:3;width:34px;height:34px;border:none;border-radius:10px;background:#11161fd1;color:#f1f6ff;font-size:16px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.node-auto-video-controls{position:absolute;left:10px;right:10px;bottom:10px;z-index:3;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:10px;background:transparent;min-width:0;opacity:1;transform:translateY(0);pointer-events:auto;transition:opacity .25s ease,transform .25s ease}.node-auto-video.is-controls-hidden .node-auto-video-controls{opacity:0;transform:translateY(6px);pointer-events:none}.node-auto-video.is-controls-hidden:after{opacity:0}.node-auto-video-control-play{width:24px;height:24px;border:none;background:transparent;color:#fff;font-size:16px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.node-auto-video-progress{flex:1;height:4px;margin:0;accent-color:#ffffff;cursor:pointer;min-width:56px}.node-auto-video-time{color:#fff;font-size:12px;line-height:1;white-space:nowrap;flex-shrink:0;text-shadow:0 1px 2px rgba(0,0,0,.5)}.node-auto-video-capture-wrap{position:relative;flex-shrink:0}.node-auto-video-capture-wrap:after{content:"";position:absolute;top:100%;left:0;width:108px;height:4px}.node-auto-video-capture{position:relative;width:24px;height:24px;border:none;background:transparent;color:#fff;font-size:16px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.node-auto-video-controls.is-compact{gap:6px;padding:6px}.node-auto-video-controls.is-compact .node-auto-video-control-play,.node-auto-video-controls.is-compact .node-auto-video-capture{width:22px;height:22px;font-size:14px}.node-auto-video-controls.is-compact .node-auto-video-time{font-size:11px}.node-auto-video-controls.is-compact .node-auto-video-progress{min-width:42px}.node-auto-video-capture-menu{position:absolute;top:100%;left:0;right:auto;min-width:108px;display:flex;flex-direction:column;gap:4px;padding:6px;margin-top:0;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:#080c12f5;box-shadow:0 10px 24px #00000073;z-index:20;opacity:0;pointer-events:none;transition:opacity .15s ease}.node-auto-video-capture-menu--portal{position:fixed;top:0;left:0;z-index:10050;opacity:1;pointer-events:auto}.node-auto-video-capture-menu:before{content:"";position:absolute;bottom:100%;right:0;left:0;height:2px}.node-auto-video-capture-wrap:hover .node-auto-video-capture-menu,.node-auto-video-capture-wrap:focus-within .node-auto-video-capture-menu{opacity:1;pointer-events:auto}.node-auto-video-capture-menu-item{border:none;border-radius:8px;background:transparent;color:#e8edf7;font-size:12px;line-height:1.2;text-align:left;padding:6px 8px;cursor:pointer}.node-auto-video-capture-menu-item:hover{background:#ffffff1a}.node-auto-audio{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;padding:0;box-sizing:border-box;overflow:hidden;background:transparent}.node-auto-audio-player{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}.node-auto-audio-canvas-wrap{position:relative;flex:1 1 0;min-height:0;padding:6px 6px 2px;box-sizing:border-box;overflow:hidden}.node-auto-audio-canvas{display:block;width:100%;height:100%;border-radius:8px;background:#282a2f}.node-auto-audio-canvas.is-loading{background:linear-gradient(90deg,#ffffff08,#ffffff14,#ffffff08);background-size:200% 100%;animation:video-trim-shimmer 1.2s linear infinite}.node-auto-audio-controls-row{position:relative;display:flex;align-items:center;flex:0 0 26px;height:26px;padding:0 6px 6px;box-sizing:border-box;width:100%;min-width:0}.node-auto-audio-play-btn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:20px;height:20px;padding:0;border:none;background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:0;color:#f5f5f5;flex-shrink:0}.node-auto-audio-play-btn svg{width:20px;height:20px}.node-auto-audio-play-btn:hover{opacity:.92}.node-auto-audio-time{margin-left:auto;display:flex;align-items:center;height:18px;padding:0 10px;border-radius:999px;background:#000;color:#aeb6c5;font-size:11px;font-variant-numeric:tabular-nums;line-height:1;pointer-events:none;white-space:nowrap;max-width:calc(50% - 16px);overflow:hidden;text-overflow:ellipsis}.node-auto-audio-empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#6b7487;border-radius:11px;background:linear-gradient(180deg,#171b22,#10141b)}.node-media-empty--muted{position:relative}.node-media-empty--muted>.anticon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center}.node-media-empty-indicator{position:static;width:72px;height:58px;border-radius:12px;border:1px solid rgba(154,168,192,.34);background:linear-gradient(180deg,#818ea52e,#6d7a931a);box-shadow:inset 0 1px #ffffff0f;display:inline-flex;align-items:center;justify-content:center;color:#aebad2}.node-media-empty-indicator--video{color:#b8c3d9}.node-media-empty-indicator--image{color:#aebad2}.node-media-processing,.node-media-failed{width:100%;height:100%;min-height:158px;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:16px;border-radius:11px;background:linear-gradient(180deg,#1a1f2a,#131925);padding:20px 16px 18px;box-sizing:border-box}.node-media-processing .node-media-empty-indicator{align-self:center}.node-media-processing-bar{width:100%;max-width:none;display:flex;flex-direction:column;gap:8px}.node-media-processing-bar .ant-progress-line{margin-inline-end:0;width:100%}.node-media-processing-bar .ant-progress-outer,.node-media-processing-bar .ant-progress-inner{width:100%!important}.node-media-processing-bar .ant-progress-text{color:#e8edf7!important}.node-media-processing-label{color:#8f9bb3;font-size:12px;text-align:center}.node-media-processing--fill{position:relative;box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;gap:0;min-height:unset;width:100%;height:100%;padding:0;border-radius:11px;overflow:hidden}.node-media-processing--fill .node-media-processing-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.node-media-processing--fill .node-media-processing-bar{position:relative;z-index:1;width:100%;padding:14px 16px 16px;box-sizing:border-box;background:linear-gradient(180deg,#13192500,#131925e0 45%,#131925f5)}.node-media-processing--fill .node-media-processing-bar .ant-progress-inner{height:10px!important}.node-media-failed-text{color:#ff7875;font-size:12px;text-align:center;max-width:220px;line-height:1.4}.text-node-root{position:relative;width:100%;height:100%}.text-node-resize-handle{width:20px!important;height:20px!important;border:none!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;opacity:0;pointer-events:none;transition:opacity .15s ease}.text-node-resize-handle.react-flow__resize-control.handle.bottom.right{translate:-100% -100%!important}.text-node-resize-handle:before{content:"";position:absolute;right:0;bottom:0;width:10px;height:10px;background:#8a96a8d1;clip-path:polygon(100% 0,100% 100%,0 100%);pointer-events:none}.text-node-root:hover .text-node-resize-handle,.text-node-resize-handle.is-visible,.text-node-resize-handle.is-resizing{opacity:1;pointer-events:all}.text-node-content.is-manual-size{flex:1;min-height:0;display:flex;flex-direction:column}.text-node-content.is-manual-size .text-node-viewport{flex:1;min-height:0}.node-shell-text.node-shell-root--fit .node-shell-body{align-items:stretch;flex:1;min-height:0}.node-shell-text.node-shell-root--fit .node-shell-inner--fit{flex:1;width:100%;max-width:100%;min-height:0;height:100%;background:transparent;border-radius:0;overflow:hidden;display:flex;flex-direction:column}.node-shell-text.node-shell-empty .node-shell-inner--fit{background:transparent}.node-shell-text .text-node-readonly,.node-shell-text .text-node-editor{max-width:none}.text-node-prompt-panel{display:flex;flex-direction:column}.text-node-prompt-input-wrap{position:relative;padding:10px 12px 0}.text-node-prompt-textarea,.text-node-prompt-textarea.ant-input{width:100%;min-height:120px!important;background:#050505!important;border:1px solid #2a2a2a!important;border-radius:10px!important;box-shadow:none!important;resize:none;color:#d8deec!important;padding:14px 40px 14px 14px!important;font-size:13px;line-height:1.6}.text-node-prompt-textarea::placeholder,.text-node-prompt-textarea.ant-input::placeholder{color:#5c6578!important}.text-node-prompt-textarea:focus,.text-node-prompt-textarea.ant-input:focus{border-color:#3a3a3a!important;box-shadow:none!important}.text-node-prompt-expand{position:absolute;top:22px;right:24px;color:#8b95a8;font-size:14px;cursor:pointer;pointer-events:auto}.node-panel-expand-toggle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:6px;background:transparent;color:#8b95a8;transition:all .15s ease}.node-panel-expand-toggle:hover{color:#e4ebfa;box-shadow:0 0 0 6px #7ea7ff33,0 0 14px #7ea7ff47}.node-panel-expand-toggle:active{box-shadow:0 0 0 5px #7ea7ff3d,0 0 12px #7ea7ff57}.text-node-prompt-footer{display:flex;align-items:center;gap:10px;padding:10px 12px 12px}.text-node-prompt-submit{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:52px;height:36px;padding:0 14px;border:none;border-radius:10px;background:#f5f7fb;color:#111;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease}.text-node-prompt-submit:hover:not(:disabled){background:#fff}.text-node-prompt-submit:disabled{opacity:.55;cursor:not-allowed}.text-node-prompt-submit .anticon{font-size:14px}.audio-node-prompt-panel{position:relative;display:flex;flex-direction:column}.audio-node-prompt-input-wrap{padding:38px 12px 0}.audio-node-prompt-textarea,.audio-node-prompt-textarea.ant-input{width:100%;min-height:124px!important;background:#050505!important;border:1px solid #050505!important;border-radius:10px!important;box-shadow:none!important;resize:none;color:#d8deec!important;padding:14px!important;font-size:15px;line-height:1.6}.audio-node-prompt-textarea::placeholder,.audio-node-prompt-textarea.ant-input::placeholder{color:#5d6675!important}.audio-node-prompt-textarea:focus,.audio-node-prompt-textarea.ant-input:focus{border-color:#111!important;box-shadow:none!important}.audio-node-prompt-expand{position:absolute;top:14px;right:14px;z-index:2}.audio-node-prompt-footer{display:flex;align-items:center;gap:24px;padding:14px 12px}.audio-node-select-trigger{display:inline-flex;align-items:center;gap:8px;border:none;background:transparent;color:#fff;font-size:15px;line-height:1.4;cursor:pointer;flex-shrink:0}.audio-node-select-trigger:hover{color:#fff}.audio-node-select-icon{font-size:11px;color:#aaa}.audio-node-prompt-spacer{flex:1}.audio-node-char-count{color:#b8d0ff;font-size:15px;flex-shrink:0}.audio-voice-dropdown{min-width:340px;max-height:280px;overflow-y:auto;padding:12px;border:1px solid #333;border-radius:12px;background:#151515;box-shadow:0 8px 24px #00000073}.audio-voice-dropdown-title{color:#6f7685;font-size:13px;margin-bottom:8px}.audio-voice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 12px;padding:4px 0 2px;background:#050505;border-radius:8px}.audio-voice-option{height:34px;padding:0 10px;border:none;border-radius:8px;background:transparent;color:#fff;font-size:14px;text-align:center;cursor:pointer}.audio-voice-option:hover,.audio-voice-option.active{background:#30343d}.node-shell-inner--fit .text-node-content{width:100%}.text-node-content{width:100%;box-sizing:border-box;flex:1;min-height:0;display:flex;flex-direction:column;line-height:normal}.text-node-viewport{position:relative;flex:none;box-sizing:border-box;margin:10px;background:#00000038;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.text-node-content,.text-node-viewport,.text-node-readonly{cursor:default}.text-node-content.is-editing .text-node-viewport,.text-node-surface.text-node-editor{cursor:text}.node-shell-text.node-shell-root--fit:active .text-node-content:not(.is-editing),.node-shell-text.node-shell-root--fit:active .text-node-viewport,.node-shell-text.node-shell-root--fit:active .text-node-readonly{cursor:grabbing}.text-node-surface{display:block;width:100%;height:100%;box-sizing:border-box;margin:0;padding:12px 14px;border:none;outline:none;border-radius:0;background:transparent;color:#e8edf7;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:13px;line-height:1.65;text-align:left;white-space:pre-wrap;word-break:break-word;overflow-x:hidden;overflow-y:auto}.text-node-surface:focus{outline:none;box-shadow:none}.text-node-readonly{display:block}.text-node-readonly.is-placeholder{color:#707a8f}.text-node-failed{color:#ff7875}.text-node-content.is-generating .text-node-viewport{background:#00000052}.text-node-generating{display:flex;flex-direction:column;height:100%;padding:14px 14px 12px;box-sizing:border-box}.text-node-skeleton-lines{display:flex;flex-direction:column;gap:11px;flex:1;min-height:0}.text-node-skeleton-line{display:block;height:10px;border-radius:6px;background:linear-gradient(90deg,#ffffff14,#ffffff2e 45%,#ffffff14);background-size:220% 100%;animation:text-node-skeleton-shimmer 1.35s ease-in-out infinite}.text-node-skeleton-line:nth-child(2){animation-delay:.08s}.text-node-skeleton-line:nth-child(3){animation-delay:.16s}.text-node-skeleton-line:nth-child(4){animation-delay:.24s}.text-node-skeleton-line:nth-child(5){animation-delay:.32s}.text-node-skeleton-line:nth-child(6){animation-delay:.4s}@keyframes text-node-skeleton-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.text-node-generating-footer{display:flex;align-items:center;gap:10px;margin-top:14px}.text-node-generating-progress{flex:1;height:3px;border-radius:999px;background:#ffffff1f;overflow:hidden}.text-node-generating-progress-fill{display:block;height:100%;border-radius:inherit;background:#ffffffb8;transition:width .28s ease}.text-node-generating-cancel{flex-shrink:0;border:none;background:transparent;color:#d7deec;font-size:12px;line-height:1;padding:4px 0;cursor:pointer}.text-node-generating-cancel:hover{color:#fff}.text-node-editor{display:block;width:100%;resize:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;box-shadow:none;cursor:text}.text-node-editor::placeholder{color:#707a8f}.text-node-surface::-webkit-scrollbar{width:8px}.text-node-surface::-webkit-scrollbar-track{background:#00000040;border-radius:4px}.text-node-surface::-webkit-scrollbar-thumb{background:#ffffff38;border-radius:4px;border:2px solid transparent;background-clip:padding-box}.text-node-surface::-webkit-scrollbar-thumb:hover{background:#ffffff52;background-clip:padding-box}.node-shell-side-zone{position:absolute;top:18%;bottom:22%;width:16px;z-index:4;pointer-events:auto}.node-shell-side-zone.active,.node-shell-root.is-connect-side-hover,.node-shell-root.is-connect-side-hover.node-shell-root--fit,.node-shell-root.is-connect-side-hover .node-auto-video,.node-shell-root.is-connect-side-hover .node-auto-audio-wrap,.node-shell-root.is-connect-side-hover .node-shell-body{cursor:crosshair!important}.node-shell-side-zone--left{left:-22px}.node-shell-side-zone--right{right:-22px}.canvas-flow .react-flow__node.draggable:has(.node-connect-handle:hover){cursor:crosshair!important}.canvas-flow .react-flow__handle.node-connect-handle{width:22px!important;height:22px!important;min-width:22px;min-height:22px;border-radius:50%;border:1.5px solid rgba(255,255,255,.88)!important;background:#0c0c0ceb!important;opacity:0;pointer-events:all;cursor:crosshair!important;transform:translateY(-50%);transition:opacity .15s ease,transform .15s ease,box-shadow .15s ease;z-index:12;box-shadow:0 0 #fff0}.canvas-flow .react-flow__handle.node-connect-handle:before{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border-radius:50%;cursor:crosshair}.canvas-flow .react-flow__handle.node-connect-handle.is-visible,.canvas-flow .react-flow__handle.node-connect-handle:hover{opacity:1;pointer-events:all;cursor:crosshair!important}.canvas-flow .react-flow__handle.node-connect-handle.is-visible:hover,.canvas-flow .react-flow__handle.node-connect-handle:hover{border-color:#fff!important;box-shadow:0 0 0 3px #ffffff1f;transform:translateY(-50%) scale(1.06);cursor:crosshair!important}.canvas-flow .react-flow__handle.node-connect-handle.is-visible.connectionindicator,.canvas-flow .react-flow__handle.node-connect-handle.is-visible.connectablestart,.canvas-flow .react-flow__handle.node-connect-handle:hover.connectionindicator,.canvas-flow .react-flow__handle.node-connect-handle:hover.connectablestart{cursor:crosshair!important}.canvas-flow .react-flow__handle-left.node-connect-handle{left:-15px!important}.canvas-flow .react-flow__handle-right.node-connect-handle{right:-15px!important}.canvas-flow .react-flow__handle.node-connect-handle:after{content:"+";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fffffff2;font-size:15px;font-weight:300;line-height:1;pointer-events:none;transform:translateY(-1px)}.selection-connect-handle{position:absolute;z-index:16;width:22px;height:22px;padding:0;border-radius:50%;border:1.5px solid rgba(255,255,255,.88);background:#0c0c0ceb;box-shadow:0 0 #fff0;cursor:crosshair!important;transition:opacity .15s ease,transform .15s ease,box-shadow .15s ease}.selection-connect-handle:after{content:"+";display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#fffffff2;font-size:15px;font-weight:300;line-height:1;transform:translateY(-1px)}.selection-connect-handle:hover{border-color:#fff;box-shadow:0 0 0 3px #ffffff1f}.selection-connect-drop-lines-panel{margin:0!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;pointer-events:none!important;z-index:1000!important}.canvas-flow .react-flow__edge-path{stroke:#ffffffd1;stroke-width:2;transition:stroke .15s ease,stroke-width .15s ease,filter .15s ease}.canvas-flow .react-flow__edge.edge-dimmed .react-flow__edge-path{stroke:#ffffff61;stroke-width:2;filter:none}.canvas-flow .react-flow__edge.selectable:hover .react-flow__edge-path{stroke:#fff;stroke-width:2.5}.canvas-flow .react-flow__edge.edge-connected-hover .react-flow__edge-path{stroke:#fffffffa;stroke-width:2.5}.canvas-flow .react-flow__edge.selected .react-flow__edge-path,.canvas-flow .react-flow__edge.selectable:focus .react-flow__edge-path,.canvas-flow .react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:#1677ff!important;stroke-width:3!important;filter:drop-shadow(0 0 6px rgba(22,119,255,.55))}.edge-cut-scissors-btn{width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:#121212f0;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;font-size:14px;line-height:1;box-shadow:0 4px 14px #00000073;z-index:1005;transition:background .15s ease,border-color .15s ease,transform .15s ease}.edge-cut-scissors-btn:hover{background:#242424fa;border-color:#ffffff61}.edge-selection-delete-anchor{position:absolute;transform:translate(-50%,-50%);pointer-events:none;z-index:1006}.edge-selection-delete-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#101010f0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#d9d9d9;font-size:13px;font-weight:500;line-height:1;white-space:nowrap;cursor:pointer;box-shadow:0 8px 24px #0000006b,inset 0 1px #ffffff0f;pointer-events:all;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .12s ease}.edge-selection-delete-btn__icon{font-size:13px;opacity:.88}.edge-selection-delete-btn:hover{background:#241616f5;border-color:#ff4d4f6b;color:#ff9c9c;box-shadow:0 10px 28px #0000007a,0 0 0 1px #ff4d4f1f;transform:translateY(-1px)}.edge-selection-delete-btn:hover .edge-selection-delete-btn__icon{opacity:1}.edge-selection-delete-btn:active{transform:translateY(0) scale(.98)}.edge-selection-delete-btn:focus-visible{outline:none;border-color:#ff4d4f8c;box-shadow:0 0 0 2px #ff4d4f38,0 8px 24px #0000006b}.node-model-trigger{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:transparent;color:#ddd;font-size:13px;line-height:1.4;cursor:pointer;flex-shrink:0;max-width:220px}.node-model-trigger:hover:not(:disabled){color:#fff}.node-model-trigger:disabled{cursor:not-allowed;color:#666}.node-model-trigger-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-model-trigger-icon{font-size:10px;color:#888;flex-shrink:0}.node-model-dropdown{background:#1e1e1e;border:1px solid #333;border-radius:12px;padding:6px;min-width:280px;max-height:280px;overflow-y:auto;overscroll-behavior:contain;pointer-events:auto;box-shadow:0 8px 24px #00000073}.node-model-dropdown-item{padding:10px 12px;border-radius:8px;cursor:pointer}.node-model-dropdown-item:hover{background:#2a2a2a}.node-model-dropdown-item.active{background:#2f2f2f}.node-model-dropdown-item-title{color:#eee;font-size:13px}.node-model-dropdown-item-desc{color:#777;font-size:11px;margin-top:2px}.node-image-quality-trigger{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid #333;border-radius:8px;background:#262626;color:#ccc;font-size:12px;line-height:1.4;cursor:pointer;flex-shrink:0;max-width:240px}.node-video-quality-trigger{min-width:168px;max-width:240px}.node-video-quality-dropdown{width:380px}.node-image-quality-trigger:hover{background:#2e2e2e;color:#eee}.node-image-quality-trigger-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-image-quality-trigger-icon{font-size:10px;color:#888;flex-shrink:0}.node-image-quality-dropdown{background:#1a1a1a;border:1px solid #333;border-radius:12px;padding:16px;width:360px;box-shadow:0 8px 24px #00000073}.node-image-quality-section+.node-image-quality-section{margin-top:16px}.node-image-quality-section-title{color:#888;font-size:12px;margin-bottom:8px}.node-image-quality-segment{display:flex;gap:4px;padding:4px;border-radius:10px;background:#111}.node-image-quality-segment-item{flex:1;border:none;border-radius:8px;background:transparent;color:#888;font-size:12px;line-height:1.2;padding:8px 6px;cursor:pointer;white-space:nowrap}.node-image-quality-segment-item:hover{color:#ccc}.node-image-quality-segment-item.active{background:#333;color:#fff}.node-image-quality-ratio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.node-image-quality-ratio-item{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border:none;border-radius:8px;background:transparent;color:#888;font-size:12px;cursor:pointer;padding:6px 4px}.node-image-quality-ratio-item:hover{color:#ccc;background:#222}.node-image-quality-ratio-item.active{background:#333;color:#fff}.node-aspect-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0}.node-aspect-icon-shape{display:block;border:1.5px solid currentColor;border-radius:2px}.node-video-ratio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.node-video-duration-control{padding:10px 12px;border-radius:10px;background:#111}.node-video-duration-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.node-video-duration-value{color:#fff;font-size:18px;font-weight:600;line-height:1.2}.node-video-duration-stepper{display:flex;gap:6px}.node-video-duration-step-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:8px;background:#222;color:#ccc;font-size:12px;cursor:pointer}.node-video-duration-step-btn:hover:not(:disabled){background:#333;color:#fff}.node-video-duration-step-btn:disabled{opacity:.35;cursor:not-allowed}.node-video-duration-slider{margin:2px 4px 8px!important}.node-video-duration-slider .ant-slider-rail{background:#ffffff1f!important}.node-video-duration-slider .ant-slider-track{background:#ffffffb8!important}.node-video-duration-slider .ant-slider-handle:after{box-shadow:0 0 0 2px #ffffffd9!important}.node-video-duration-presets{display:flex;gap:6px}.node-video-duration-preset{flex:1;border:none;border-radius:8px;background:transparent;color:#888;font-size:12px;line-height:1.2;padding:6px 4px;cursor:pointer}.node-video-duration-preset:hover{color:#ccc;background:#222}.node-video-duration-preset.active{background:#333;color:#fff}.node-video-audio-segment{gap:6px}.node-video-audio-item{padding:10px 12px}.node-scale-trigger{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid #333;border-radius:8px;background:#262626;color:#ccc;font-size:12px;line-height:1.4;cursor:pointer;flex-shrink:0;min-width:52px}.node-scale-trigger:hover{background:#2e2e2e;color:#eee}.node-scale-trigger-icon{font-size:10px;color:#888;flex-shrink:0}.node-scale-dropdown{background:#1e1e1e;border:1px solid #333;border-radius:12px;padding:6px;min-width:72px;box-shadow:0 8px 24px #00000073}.node-scale-dropdown-item{padding:8px 14px;border-radius:8px;cursor:pointer;color:#ccc;font-size:13px;text-align:center}.node-scale-dropdown-item:hover{background:#2a2a2a}.node-scale-dropdown-item.active{background:#333;color:#fff}.node-linked-assets{display:flex;gap:10px;align-items:flex-start;padding:6px 2px 2px;min-width:0}.node-linked-assets-scroll{display:flex;gap:10px;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;align-items:flex-start}.node-linked-assets-scroll::-webkit-scrollbar:vertical{width:0;height:0;display:none}.node-linked-asset-add{flex-shrink:0}.node-linked-asset-add,.node-linked-asset-item{width:52px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:4px}.node-linked-asset-add{height:52px;margin-top:4px;border-radius:10px;border:1px solid #333;background:#111;color:#666;font-size:11px;justify-content:center;cursor:pointer}.node-linked-asset-add-icon{font-size:18px;line-height:1}.node-linked-asset-item--library{cursor:default}.node-linked-asset-remove{position:absolute;top:0;right:-2px;width:16px;height:16px;border:none;border-radius:50%;background:#333;color:#ccc;font-size:12px;line-height:1;cursor:pointer;padding:0}.node-linked-asset-remove:disabled{cursor:default}.node-linked-asset-remove--edge{z-index:3;opacity:0;pointer-events:none;transition:opacity .15s ease,background .15s ease}.node-linked-asset-item:hover .node-linked-asset-remove--edge{opacity:1;pointer-events:auto}.node-linked-asset-item.is-disconnecting{cursor:wait;opacity:.72}.node-linked-asset-item.is-disconnecting .node-linked-asset-remove--edge{opacity:1;pointer-events:auto}.node-linked-asset-item:hover .node-linked-asset-badge,.node-linked-asset-item.is-disconnecting .node-linked-asset-badge{opacity:0}.node-linked-asset-remove-spinner{display:inline-block;width:10px;height:10px;border:1.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;vertical-align:-1px;animation:node-linked-asset-spin .7s linear infinite}@keyframes node-linked-asset-spin{to{transform:rotate(360deg)}}.node-linked-asset-remove:hover{background:#555;color:#fff}.node-linked-asset-item{position:relative;overflow:visible;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.node-linked-asset-item.is-dragging{opacity:.45;cursor:grabbing}.node-linked-asset-item.is-drop-target{outline:2px solid rgba(22,119,255,.85);outline-offset:2px;border-radius:10px}.node-linked-asset-badge{position:absolute;top:0;right:-2px;z-index:2;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#fff;color:#111;font-size:10px;font-weight:600;line-height:16px;text-align:center;box-shadow:0 1px 4px #00000059;transition:opacity .15s ease}.node-linked-asset-thumb{position:relative;width:52px;height:52px;margin-top:4px;border-radius:10px;border:1px solid #333;background:#111;overflow:hidden;display:flex;align-items:center;justify-content:center}.node-linked-asset-thumb img,.node-linked-asset-thumb video{width:100%;height:100%;object-fit:cover;pointer-events:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.node-linked-asset-thumb--text{color:#888;font-size:18px}.node-linked-asset-thumb--audio{color:#8c8c8c;background:#2a2a2a}.node-linked-asset-audio-icon{font-size:18px}.node-linked-asset-thumb--video{position:relative}.node-linked-asset-play{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;background:#00000040;transition:opacity .15s;pointer-events:none}.node-linked-asset-item:hover .node-linked-asset-thumb--video .node-linked-asset-play{opacity:0}.node-linked-type-letter{font-weight:600;font-size:16px}.node-linked-asset-label{color:#888;font-size:11px;line-height:1}.node-linked-asset-preview-popup{position:fixed;z-index:10060;transform:translate(-50%,calc(-100% - 10px));pointer-events:auto;filter:drop-shadow(0 12px 28px rgba(0,0,0,.55))}.node-linked-asset-preview-popup .node-mention-tag-preview.linked-asset-preview--fit{display:inline-block;width:fit-content;max-width:min(240px,56vw);padding:0;line-height:0;border:none;background:transparent;box-shadow:none}.node-linked-asset-preview-popup .node-mention-tag-preview--media.linked-asset-preview--fit{width:auto;max-width:none;max-height:none}.linked-asset-preview-media--large{display:inline-block;line-height:0;overflow:hidden;border-radius:10px;border:1px solid #444}.linked-asset-preview-media--large img,.linked-asset-preview-media--large video{display:block;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center;background:transparent;vertical-align:top}.node-linked-asset-preview-popup .node-mention-tag-preview--media .linked-asset-preview-media--large img,.node-linked-asset-preview-popup .node-mention-tag-preview--media .linked-asset-preview-media--large video{width:100%;height:100%;max-height:none;object-fit:contain}.node-linked-asset-preview-popup .node-mention-tag-preview--audio.linked-asset-preview--large{min-width:180px;padding:14px 18px;font-size:13px}.node-linked-asset-preview-popup .node-mention-tag-preview--text.linked-asset-preview--large{max-width:min(240px,56vw);padding:12px 14px;font-size:13px}.node-prompt-mention-wrap{position:relative;flex:1;min-width:0}.node-prompt-mention-editor{outline:none;color:#ccc;font-size:13px;line-height:22px;padding:4px 0;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.node-prompt-mention-editor:empty:before{content:attr(data-placeholder);color:#666;pointer-events:none}.node-prompt-mention-editor--readonly{cursor:default;-webkit-user-select:text;user-select:text}.node-mention-tag{display:inline;border-radius:4px;padding:1px 5px;margin:0 1px;color:#fff;font-size:13px;line-height:18px;white-space:nowrap;vertical-align:baseline;cursor:default}.node-mention-tag--media{background:#1f4d2e}.node-mention-tag--video{background:#1a3560}.node-mention-tag--inactive{background:#2a2a2a!important;color:#666!important;text-decoration:line-through}.node-mention-dropdown{position:absolute;z-index:30;min-width:280px;max-height:240px;overflow-y:auto;background:#1e1e1e;border:1px solid #333;border-radius:12px;padding:6px;box-shadow:0 8px 24px #00000073}.node-mention-dropdown--portal,.node-mention-tag-preview-popup--portal{position:fixed;z-index:10050}.node-mention-tag-preview-popup{position:absolute;z-index:35;transform:translate(-50%,calc(-100% - 8px));pointer-events:none}.node-mention-tag-preview-popup--portal{pointer-events:auto}.node-mention-tag-preview{border-radius:10px;border:1px solid #444;background:#111;box-shadow:0 8px 24px #0000008c;overflow:hidden}.node-mention-tag-preview--media{width:180px;max-height:140px}.node-mention-tag-preview--media img,.node-mention-tag-preview--media video{display:block;width:100%;max-height:140px;object-fit:cover}.node-mention-tag-preview--text{max-width:260px;padding:10px 12px;color:#ccc;font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.node-mention-tag-preview--empty{padding:10px 14px;color:#888;font-size:12px}.node-mention-tag-preview--audio{display:flex;align-items:center;gap:8px;padding:10px 14px;color:#e8e8e8;font-size:12px}.node-mention-dropdown-item{display:block;width:100%;border:none;border-radius:8px;background:transparent;padding:8px 10px;cursor:pointer;text-align:left}.node-mention-dropdown-item:hover,.node-mention-dropdown-item.active{background:#2a2a2a}.node-mention-dropdown-empty{padding:10px 12px;color:#777;font-size:12px}.node-mention-option{display:flex;align-items:center;gap:10px;min-width:220px}.node-mention-option-icon{width:28px;height:28px;border-radius:6px;background:#2a2a2a;color:#aaa;display:flex;align-items:center;justify-content:center;flex-shrink:0}.node-mention-option-body{flex:1;min-width:0}.node-mention-option-title{color:#eee;font-size:13px}.node-mention-option-sub{color:#777;font-size:11px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-mention-option-thumb{width:36px;height:36px;border-radius:6px;object-fit:cover;flex-shrink:0}.node-mention-option-thumb--video{overflow:hidden;background:#111}.node-mention-option-thumb--video video{width:100%;height:100%;object-fit:cover}.node-mention-option-thumb--audio{display:flex;align-items:center;justify-content:center;background:#2a2a2a;color:#8c8c8c;font-size:16px}.node-op-tool-wrap{position:relative;flex-shrink:0}.node-op-toolbar-root{position:relative;overflow:visible;pointer-events:all;max-width:92vw}.node-op-toolbar-scroll{display:flex;align-items:center;background:#1f1f1ff5;border:1px solid #3a3a3a;border-radius:22px;padding:4px 6px;box-shadow:0 6px 20px #00000073;overflow-x:auto;overflow-y:visible}.node-op-toolbar-divider{width:1px;height:18px;background:#3a3a3a;flex-shrink:0}.node-op-toolbar-btn{display:flex;align-items:center;gap:5px;padding:6px 10px;background:transparent;border:none;border-radius:16px;color:#e8e8e8;font-size:12px;cursor:pointer;white-space:nowrap;flex-shrink:0}.node-op-toolbar-btn:hover,.node-op-toolbar-btn.is-active{background:#333}.node-op-toolbar-btn.is-loading,.node-op-toolbar-btn.is-loading:hover{background:#2a2a2a;cursor:wait;opacity:.92}.node-op-toolbar-btn:disabled{cursor:wait;opacity:.92}.node-op-toolbar-btn-icon{display:inline-flex;align-items:center;justify-content:center;font-size:14px;color:#ccc;min-width:16px}.node-media-history-menu{position:fixed;z-index:1200;width:min(300px,calc(100vw - 24px));max-height:min(360px,calc(100vh - 100px));display:flex;flex-direction:column;background:#121212;border:1px solid rgba(255,255,255,.08);border-radius:12px;box-shadow:0 12px 36px #000000b8;overflow:hidden;pointer-events:all}.node-media-history-menu-title{flex-shrink:0;padding:12px 14px 0;color:#f0f0f0;font-size:13px;font-weight:500;line-height:1.4}.node-media-history-menu-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 14px 14px;overflow-y:auto}.node-media-history-item{position:relative;display:block;width:100%;margin:0;padding:0;border:1.5px solid transparent;border-radius:8px;background:transparent;cursor:default;overflow:hidden;aspect-ratio:1 / 1;transition:border-color .15s ease}.node-media-history-item:hover{border-color:#ffffff47}.node-media-history-item.is-active{border-color:#ffffffeb}.node-media-history-item-hover{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px;border-radius:inherit;background:#0000009e;opacity:0;pointer-events:none;transition:opacity .15s ease}.node-media-history-item:hover .node-media-history-item-hover{opacity:1;pointer-events:auto}.node-media-history-item-action{min-width:52px;padding:5px 10px;border:none;border-radius:6px;background:#ffffff29;color:#fff;font-size:11px;font-weight:500;line-height:1.3;text-align:center;cursor:pointer;white-space:nowrap;transition:background .15s ease}.node-media-history-item-action:hover{background:#ffffff3d}.node-media-history-item-thumb{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:6px;overflow:hidden;background:linear-gradient(180deg,#1a1f2a,#131925);display:flex;align-items:center;justify-content:center;color:#8f9bb3;font-size:18px}.node-media-history-item-thumb img,.node-media-history-item-thumb video{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.node-super-res-menu{z-index:10040;width:300px;padding:16px;border-radius:12px;border:1px solid #333;background:#1a1a1a;box-shadow:0 10px 28px #00000080}.node-super-res-checkbox-row{display:inline-flex;align-items:center;gap:8px;margin-top:16px;color:#c8d0df;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none}.node-super-res-checkbox-row input{width:14px;height:14px;accent-color:#ffffff;cursor:pointer}.node-super-res-footer{display:flex;justify-content:flex-end;margin-top:18px}.node-super-res-submit{display:inline-flex;align-items:center;gap:6px;min-width:88px;justify-content:center;padding:8px 16px;border:none;border-radius:999px;background:#f5f7fb;color:#111;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease}.node-super-res-submit:hover{background:#fff}.node-super-res-submit .anticon{font-size:14px}.node-upscale-menu{z-index:10040;width:300px;padding:16px;border-radius:12px;border:1px solid #333;background:#1a1a1a;box-shadow:0 10px 28px #00000080}.node-upscale-menu .node-image-quality-segment-item:disabled{opacity:.4;cursor:not-allowed}.node-upscale-menu .node-super-res-submit:disabled{opacity:.45;cursor:not-allowed}.node-upscale-route{margin-top:12px;color:#9aa3b5;font-size:12px;line-height:1.4}.node-subtitle-erase-menu{z-index:10040;min-width:148px;padding:6px;border-radius:10px;border:1px solid #333;background:#1a1a1a;box-shadow:0 10px 28px #00000080}.node-subtitle-erase-option{width:100%;display:flex;align-items:center;padding:9px 12px;border:none;border-radius:8px;background:transparent;color:#e8e8e8;font-size:13px;text-align:left;cursor:pointer}.node-subtitle-erase-option:hover{background:#ffffff14}.node-grid-split-wrap{z-index:10040;display:flex;align-items:flex-start;gap:8px}.node-grid-split-menu{min-width:168px;padding:6px;border-radius:10px;border:1px solid #333;background:#1a1a1a;box-shadow:0 10px 28px #00000080}.node-grid-split-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 12px;border:none;border-radius:8px;background:transparent;color:#f0f3f8;font-size:14px;text-align:left;cursor:pointer;transition:background .15s ease}.node-grid-split-item:hover,.node-grid-split-item.is-active{background:#ffffff14}.node-grid-split-item--custom{gap:8px}.node-grid-split-item-arrow{font-size:11px;color:#8a93a8}.node-grid-split-custom{padding:10px;border-radius:10px;border:1px solid #333;background:#1a1a1a;box-shadow:0 10px 28px #00000080}.node-grid-split-picker{display:grid;grid-template-columns:repeat(5,18px);grid-template-rows:repeat(5,18px);gap:4px;cursor:crosshair}.node-grid-split-cell{display:block;width:18px;height:18px;border-radius:4px;background:#ffffff1f;transition:background .08s ease}.node-grid-split-cell.is-selected{background:#ffffffb8}.node-op-toolbar-btn--dropdown{gap:4px}.node-op-toolbar-btn-chevron{font-size:10px;margin-left:2px;opacity:.72}.node-image-edit-wrap{z-index:10040}.node-image-edit-menu{min-width:132px;padding:6px;border-radius:10px;border:1px solid #333;background:#1a1a1a;box-shadow:0 10px 28px #00000080}.node-image-edit-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:none;border-radius:8px;background:transparent;color:#f0f3f8;font-size:14px;text-align:left;cursor:pointer;transition:background .15s ease}.node-image-edit-item:hover{background:#ffffff14}.node-image-edit-item-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;font-size:15px;color:#c8ceda}.image-crop-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10060;background:#000000c7;display:flex;align-items:center;justify-content:center}.image-crop-stack{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:calc(100vw - 32px)}.image-crop-toolbar{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:12px;background:#141820eb;border:1px solid rgba(255,255,255,.08)}.image-crop-btn{border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:#f0f3f8;border-radius:8px;padding:8px 14px;font-size:13px;cursor:pointer}.image-crop-btn:hover:not(:disabled),.image-crop-btn.is-active{background:#ffffff1f}.image-crop-btn--primary{background:#1677ff;border-color:#1677ff}.image-crop-btn--primary:hover:not(:disabled){background:#4096ff}.image-crop-btn:disabled{opacity:.55;cursor:not-allowed}.image-crop-ratio-wrap{position:relative}.image-crop-ratio-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:96px;padding:6px;border-radius:10px;border:1px solid #333;background:#1a1a1a;box-shadow:0 10px 28px #00000080;z-index:2}.image-crop-ratio-item{display:block;width:100%;padding:8px 12px;border:none;border-radius:8px;background:transparent;color:#f0f3f8;font-size:13px;text-align:left;cursor:pointer}.image-crop-ratio-item:hover,.image-crop-ratio-item.is-active{background:#ffffff14}.image-crop-frame{position:relative;overflow:hidden;border-radius:8px;background:#0d1016;-webkit-user-select:none;user-select:none}.image-crop-image{display:block;width:100%;height:100%;object-fit:contain}.image-crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;pointer-events:none}.image-crop-box{position:absolute;border:2px solid #fff;cursor:move}.image-crop-handle{position:absolute;background:#fff;border-radius:2px;box-shadow:0 0 0 1px #00000059;z-index:2}.image-crop-handle--nw,.image-crop-handle--ne,.image-crop-handle--sw,.image-crop-handle--se{width:10px;height:10px}.image-crop-handle--nw{left:-5px;top:-5px;cursor:nwse-resize}.image-crop-handle--ne{right:-5px;top:-5px;cursor:nesw-resize}.image-crop-handle--sw{left:-5px;bottom:-5px;cursor:nesw-resize}.image-crop-handle--se{right:-5px;bottom:-5px;cursor:nwse-resize}.image-crop-handle--n,.image-crop-handle--s{left:50%;width:28px;height:6px;transform:translate(-50%);cursor:ns-resize}.image-crop-handle--n{top:-3px}.image-crop-handle--s{bottom:-3px}.image-crop-handle--w,.image-crop-handle--e{top:50%;width:6px;height:28px;transform:translateY(-50%);cursor:ew-resize}.image-crop-handle--w{left:-3px}.image-crop-handle--e{right:-3px}.multi-angle-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10060;background:#000000b8;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.multi-angle-modal{width:min(680px,100%);border-radius:14px;border:1px solid #333;background:#141414;box-shadow:0 18px 48px #0000008c;overflow:hidden}.multi-angle-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #2a2a2a}.multi-angle-title{color:#f2f4f8;font-size:16px;font-weight:600}.multi-angle-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:#9aa3b5;cursor:pointer}.multi-angle-close:hover{background:#ffffff14;color:#fff}.multi-angle-body{display:flex;gap:24px;padding:20px 24px 24px}.multi-angle-preview-col{flex:0 0 300px;display:flex;flex-direction:column;align-items:center;gap:14px}.multi-angle-viewport{width:280px;height:280px;border-radius:12px;background:#050505;display:flex;align-items:center;justify-content:center;perspective:900px;overflow:hidden;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.multi-angle-viewport.is-dragging{cursor:grabbing}.multi-angle-viewport .multi-angle-cube{pointer-events:none}.multi-angle-cube{position:relative;width:140px;height:140px;transform-style:preserve-3d;transition:transform .12s ease}.multi-angle-face{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;backface-visibility:hidden;display:flex;align-items:center;justify-content:center;color:#ffffff73;font-size:18px;font-weight:600;overflow:hidden}.multi-angle-face--front{transform:translateZ(70px);background:#111}.multi-angle-face--front img{width:100%;height:100%;object-fit:cover;display:block}.multi-angle-face--back{transform:rotateY(180deg) translateZ(70px)}.multi-angle-face--right{transform:rotateY(90deg) translateZ(70px)}.multi-angle-face--left{transform:rotateY(-90deg) translateZ(70px)}.multi-angle-face--top{transform:rotateX(90deg) translateZ(70px)}.multi-angle-face--bottom{transform:rotateX(-90deg) translateZ(70px)}.multi-angle-reset{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:none;border-radius:8px;background:transparent;color:#b8c0d0;font-size:13px;cursor:pointer}.multi-angle-reset:hover{background:#ffffff0f;color:#fff}.multi-angle-controls{flex:1;min-width:0;display:flex;flex-direction:column;gap:22px;padding-top:8px}.multi-angle-control-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;color:#d8deec;font-size:14px}.multi-angle-control-value{color:#9aa3b5;font-size:13px}.multi-angle-controls .ant-slider-rail{background:#ffffff1f!important}.multi-angle-controls .ant-slider-track{background:#ffffffb8!important}.multi-angle-controls .ant-slider-handle:after{box-shadow:0 0 0 2px #ffffffd9!important}.multi-angle-footer{margin-top:auto;display:flex;justify-content:flex-end;padding-top:12px}.multi-angle-submit{display:inline-flex;align-items:center;gap:6px;min-width:88px;justify-content:center;padding:8px 16px;border:none;border-radius:999px;background:#f5f7fb;color:#111;font-size:14px;font-weight:600;cursor:pointer}.multi-angle-submit:hover{background:#fff}.multi-angle-submit .anticon{font-size:14px}.partial-redraw-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10040;background:#000000b8;display:flex;align-items:center;justify-content:center;padding:24px 16px;box-sizing:border-box}.partial-redraw-stack{display:flex;flex-direction:column;align-items:center;width:min(720px,92vw);max-height:calc(100vh - 48px);gap:0}.partial-redraw-toolbar-float{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;margin-bottom:12px;border-radius:12px;border:1px solid #3a3a3a;background:#222222f5;box-shadow:0 8px 24px #00000059;box-sizing:border-box}.partial-redraw-tool-group{display:inline-flex;align-items:center;gap:4px}.partial-redraw-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:8px;background:transparent;color:#aaa;font-size:16px;cursor:pointer;transition:background .15s,color .15s}.partial-redraw-icon-btn:hover:not(:disabled){background:#ffffff14;color:#eee}.partial-redraw-icon-btn.is-active{background:#ffffff24;color:#fff}.partial-redraw-icon-btn:disabled{opacity:.35;cursor:not-allowed}.partial-redraw-brush-size{flex:1;min-width:80px;max-width:200px;padding:0 4px}.partial-redraw-brush-size .ant-slider-rail{background:#444!important}.partial-redraw-brush-size .ant-slider-track{background:#888!important}.partial-redraw-brush-size .ant-slider-handle:after{box-shadow:0 0 0 2px #ccc!important}.partial-redraw-exit-btn{margin-left:auto;padding:8px 14px;border:none;border-radius:8px;background:transparent;color:#ccc;font-size:13px;cursor:pointer;white-space:nowrap}.partial-redraw-exit-btn:hover{background:#ffffff14;color:#fff}.partial-redraw-frame{position:relative;width:100%;max-height:min(62vh,640px);border-radius:12px;overflow:hidden;background:#111;flex-shrink:1}.image-mark-frame{position:relative;flex-shrink:0;overflow:clip;border-radius:12px;background:#111}.partial-redraw-image,.image-mark-image{display:block;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.partial-redraw-mask{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:crosshair;touch-action:none}.image-mark-canvas{overflow:clip}.image-mark-cursor-select{cursor:default}.image-mark-cursor-eraser{cursor:cell}.image-mark-brush-size{width:88px}.partial-redraw-prompt-box{position:relative;width:100%;margin-top:14px;padding:14px 14px 52px;border-radius:12px;border:1px solid #3a3a3a;background:#222222f5;box-sizing:border-box}.partial-redraw-prompt-input{display:block;width:100%;min-height:72px;max-height:140px;padding:0;border:none;outline:none;resize:none;background:transparent;color:#eee;font-size:14px;line-height:1.55;font-family:inherit}.partial-redraw-prompt-input::placeholder{color:#777}.partial-redraw-submit{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;min-width:56px;justify-content:center;padding:8px 14px;border:none;border-radius:999px;background:#f5f5f5;color:#111;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #00000040}.partial-redraw-submit:hover:not(:disabled){background:#fff}.partial-redraw-submit:disabled{opacity:.5;cursor:not-allowed}.partial-redraw-submit .anticon{font-size:14px}.image-mark-toolbar{max-width:min(96vw,920px);flex-wrap:wrap;justify-content:center}.image-mark-color-wrap{position:relative}.image-mark-color-btn{width:28px;height:28px;border-radius:50%;border:2px solid rgba(255,255,255,.35);cursor:pointer;padding:0;flex-shrink:0}.image-mark-color-btn.is-active,.image-mark-color-btn:hover{border-color:#fff;box-shadow:0 0 0 2px #1677ff73}.image-mark-text-input{z-index:10070;min-width:120px;padding:4px 8px;border:1px dashed rgba(255,255,255,.65);border-radius:4px;background:#00000059;outline:none;font-weight:600}.image-mark-color-dot{position:absolute;right:4px;bottom:4px;width:8px;height:8px;border-radius:50%;border:1px solid rgba(255,255,255,.6)}.image-mark-color-panel{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);display:flex;gap:6px;padding:8px;border-radius:10px;background:#181818f5;border:1px solid rgba(255,255,255,.12);z-index:2}.image-mark-color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.image-mark-color-swatch.is-active{border-color:#fff}.image-mark-save-btn{height:32px;padding:0 14px;border:none;border-radius:8px;background:#1677ff;color:#fff;font-size:13px;cursor:pointer}.image-mark-save-btn:hover:not(:disabled){background:#4096ff}.image-mark-save-btn:disabled{opacity:.5;cursor:not-allowed}.media-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;background:#000000e0;display:flex;align-items:stretch;justify-content:stretch;padding:0;box-sizing:border-box}.media-preview-layout{width:100%;height:100%;display:flex;align-items:stretch;gap:0;min-height:0}.media-preview-stage{position:relative;flex:1;min-width:0;min-height:0;overflow:hidden;background:#00000059}.media-preview-stage-content{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.media-preview-viewport{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;display:flex;align-items:center;justify-content:center;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.media-preview-viewport.is-dragging{cursor:grabbing}.media-preview-transform-layer{transform-origin:center center;will-change:transform;max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center}.media-preview-image,.media-preview-video{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:4px;background:#000;box-shadow:0 12px 40px #00000073}.media-preview-stage-content .media-preview-video{max-width:min(100%,calc(100vw - 368px));max-height:calc(100vh - 48px)}.media-preview-viewport .media-preview-image{pointer-events:none;max-width:calc(100vw - 368px);max-height:calc(100vh - 48px)}.media-preview-video{display:block}.media-preview-sidebar{width:320px;flex-shrink:0;display:flex;flex-direction:column;padding:28px 32px 32px 24px;color:#e8edf7;border-left:1px solid rgba(255,255,255,.08);background:#000000e0;box-sizing:border-box}.media-preview-close{position:absolute;top:20px;right:20px;z-index:2;width:36px;height:36px;border:none;border-radius:8px;background:#ffffff14;color:#f0f4fa;font-size:16px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease}.media-preview-close:hover{background:#ffffff29}.media-preview-meta{display:flex;flex-direction:column;gap:22px}.media-preview-meta-row{display:flex;flex-direction:column;gap:6px}.media-preview-meta-label{font-size:13px;color:#8f9bb3;line-height:1.2}.media-preview-meta-value{font-size:14px;color:#f3f6fb;line-height:1.45;word-break:break-all}.canvas-global-history-panel{width:min(640px,calc(100vw - 120px));height:min(520px,calc(100vh - 120px));background:#121212fa;border:1px solid #333;border-radius:14px;box-shadow:0 16px 48px #0000008c;display:flex;flex-direction:column;overflow:hidden;pointer-events:all}.node-edit-expanded-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2100;display:flex;align-items:center;justify-content:center;padding:20px;background:#0000007a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:default}.node-edit-docked-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;pointer-events:none;background:none;padding:0}.node-edit-docked-panel{position:fixed;z-index:1;pointer-events:all;transform:translate(-50%);max-width:calc(100vw - 24px)}.node-edit-expanded-panel{position:relative;z-index:1;width:min(1020px,calc(100vw - 64px));max-height:calc(100vh - 36px);overflow:visible;border-radius:14px;margin:0 auto}body:has(.node-edit-expanded-overlay) .ant-dropdown,body:has(.node-edit-expanded-overlay) .ant-select-dropdown,body:has(.node-edit-expanded-overlay) .ant-popover{z-index:2200!important}.canvas-global-history-header{padding:14px 18px 0;border-bottom:1px solid #2a2a2a}.canvas-global-history-tabs{display:flex;gap:24px}.canvas-global-history-tab{background:transparent;border:none;color:#888;font-size:14px;padding:0 0 12px;cursor:pointer;position:relative}.canvas-global-history-tab.is-active{color:#fff}.canvas-global-history-tab.is-active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#14b8a6;border-radius:2px}.canvas-global-history-filters{display:flex;gap:8px;padding:12px 18px;border-bottom:1px solid #242424}.canvas-global-history-filter{border:none;border-radius:8px;background:transparent;color:#888;font-size:13px;padding:6px 12px;cursor:pointer}.canvas-global-history-filter.is-active{background:#2a2a2a;color:#fff}.canvas-global-history-body{flex:1;min-height:0;overflow:auto;padding:14px 18px 18px}.canvas-global-history-loading,.canvas-global-history-empty{display:flex;align-items:center;justify-content:center;min-height:280px}.canvas-global-history-empty .ant-empty-description{color:#666}.canvas-global-history-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.canvas-global-history-load-more{display:flex;align-items:center;justify-content:center;padding:16px 0 4px;color:#666;font-size:12px}.canvas-global-history-card{display:flex;flex-direction:column;gap:8px;border:1px solid #333;border-radius:12px;background:#1a1a1a;padding:8px;cursor:pointer;text-align:left;transition:border-color .15s ease,transform .15s ease}.canvas-global-history-card:hover{border-color:#14b8a6;transform:translateY(-1px)}.canvas-global-history-card-thumb{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#111;color:#666;font-size:28px}.canvas-global-history-card-thumb img,.canvas-global-history-card-thumb video{width:100%;height:100%;object-fit:cover;display:block}.canvas-global-history-card-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.canvas-global-history-card-type{color:#ccc;font-size:12px}.canvas-global-history-card-time{color:#666;font-size:11px}.canvas-global-history-card-prompt{color:#888;font-size:11px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.canvas-selection-toolbar{z-index:12;display:flex;align-items:center;gap:4px;padding:6px 8px;border-radius:12px;border:1px solid #2a2a2a;background:#121212f5;box-shadow:0 8px 24px #00000073;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.canvas-selection-toolbar--flow{position:absolute;pointer-events:all}.canvas-selection-toolbar__btn{height:34px!important;padding:0 12px!important;border-radius:8px!important;color:#ccc!important;font-size:13px!important}.canvas-selection-toolbar__btn:hover{color:#fff!important;background:#2a2a2a!important}.canvas-selection-toolbar__btn--active{color:#fff!important;background:#1677ff38!important}.canvas-area--batch-connect-pick,.canvas-area--batch-connect-pick .react-flow__pane{cursor:crosshair}.canvas-area--batch-connect-pick .react-flow__node{cursor:pointer}.panorama-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10070;background:#000000d1;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.panorama-preview-modal{width:min(1120px,100%);max-height:calc(100vh - 48px);border-radius:16px;border:1px solid #2f2f2f;background:#101010;box-shadow:0 24px 64px #0000008c;overflow:hidden;display:flex;flex-direction:column}.panorama-preview-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #252525}.panorama-preview-title-wrap{display:inline-flex;align-items:center;gap:8px;color:#f2f4f8;font-size:15px;font-weight:600}.panorama-preview-close{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:8px;background:transparent;color:#9aa3b5;cursor:pointer}.panorama-preview-close:hover{background:#ffffff14;color:#fff}.panorama-preview-toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:12px 18px;border-bottom:1px solid #252525}.panorama-preview-toolbar button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border:none;border-radius:10px;background:#ffffff0f;color:#d7dde8;cursor:pointer;font-size:13px}.panorama-preview-toolbar button:hover:not(:disabled){background:#ffffff1f;color:#fff}.panorama-preview-toolbar button.is-active{background:#1677ff38;color:#fff}.panorama-preview-toolbar button:disabled{opacity:.45;cursor:not-allowed}.panorama-preview-stage{position:relative;flex:1;min-height:420px;background:#050505;cursor:grab;touch-action:none}.panorama-preview-stage.is-dragging{cursor:grabbing}.panorama-preview-canvas{width:100%;height:100%;min-height:420px;display:block}.panorama-preview-guidelines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to right,transparent calc(33.33% - .5px),rgba(255,255,255,.28) calc(33.33% - .5px),rgba(255,255,255,.28) calc(33.33% + .5px),transparent calc(33.33% + .5px)),linear-gradient(to right,transparent calc(66.66% - .5px),rgba(255,255,255,.28) calc(66.66% - .5px),rgba(255,255,255,.28) calc(66.66% + .5px),transparent calc(66.66% + .5px)),linear-gradient(to bottom,transparent calc(33.33% - .5px),rgba(255,255,255,.28) calc(33.33% - .5px),rgba(255,255,255,.28) calc(33.33% + .5px),transparent calc(33.33% + .5px)),linear-gradient(to bottom,transparent calc(66.66% - .5px),rgba(255,255,255,.28) calc(66.66% - .5px),rgba(255,255,255,.28) calc(66.66% + .5px),transparent calc(66.66% + .5px))}.panorama-preview-loading,.panorama-preview-busy{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#aeb6c5;background:#0000006b}.panorama-preview-footer{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:12px 18px 16px;border-top:1px solid #252525;color:#8f9bb2;font-size:12px}.panorama-preview-warning{color:#faad14}.panorama-preview-hint{margin-left:auto;color:#667085}.react-flow__node-groupNode{z-index:-1!important}.canvas-group-node{width:100%;height:100%;box-sizing:border-box;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:#1010108c;transition:border-color .15s ease,box-shadow .15s ease}.canvas-group-node.is-selected{border-color:#ffffff38;box-shadow:0 0 0 1px #ffffff0f}.canvas-group-node__header{display:flex;align-items:center;gap:8px;padding:10px 14px 0;color:#aaa;font-size:12px;line-height:1;-webkit-user-select:none;user-select:none}.canvas-group-node__icon{font-size:13px;color:#777}.canvas-group-node__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-trim-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000c;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-user-select:none;user-select:none}.video-trim-stage{position:relative;width:min(1000px,calc(100vw - 48px));display:flex;flex-direction:column;align-items:center}.video-trim-node-head{display:flex;align-items:center;gap:8px;width:100%;margin-bottom:8px;color:#fafafae0;font-size:13px;line-height:20px}.video-trim-node-type{color:#fafafa8c}.video-trim-node-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-trim-preview-box{position:relative;width:100%;height:min(522px,calc(100vh - 220px));background:#000;border-radius:12px;overflow:hidden}.video-trim-preview{width:100%;height:100%;object-fit:contain;display:block;background:#000}.video-trim-seekbar{display:flex;align-items:center;gap:14px;width:100%;height:24px;margin-top:16px}.video-trim-seekbar-play{width:24px;height:24px;border:none;padding:0;background:transparent;color:#fff;font-size:16px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.video-trim-seekbar-play:hover:not(:disabled){opacity:.8}.video-trim-seekbar-play:disabled{opacity:.4;cursor:not-allowed}.video-trim-seekbar-track{position:relative;flex:1;min-width:0;height:16px;cursor:pointer;touch-action:none}.video-trim-seekbar-line{position:absolute;left:0;right:0;top:50%;height:2px;margin-top:-1px;border-radius:1px;background:#fff;pointer-events:none}.video-trim-seekbar-thumb{position:absolute;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #0000002e;pointer-events:none}.video-trim-seekbar-time{color:#fafafab8;font-size:12px;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:78px;text-align:right}.video-trim-dock{display:flex;align-items:center;gap:18px;width:min(800px,100%);height:68px;margin-top:24px;padding:8px 18px;border-radius:999px;background:#1c1c1cf5;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 4px #00000040}.video-trim-dock.is-processing{opacity:.92;pointer-events:none}.video-trim-dock-btn{width:34px;height:34px;border:none;border-radius:50%;background:transparent;color:#fafafad1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;font-size:16px;outline:none}.video-trim-dock-btn:hover:not(:disabled){background:#ffffff29}.video-trim-dock-btn.is-active{background:#ffffff38;color:#fff}.video-trim-dock-btn--confirm{background:#fff;color:#111;font-size:16px}.video-trim-dock-btn--confirm:hover:not(:disabled){background:#f0f0f0}.video-trim-dock-btn:disabled{opacity:.45;cursor:not-allowed}.video-trim-magnet-icon{font-size:16px;line-height:1;transform:rotate(90deg)}.video-trim-filmstrip{position:relative;flex:1;min-width:0;height:52px;border-radius:6px;overflow:visible;-webkit-user-select:none;user-select:none;cursor:pointer}.video-trim-filmstrip-track{position:relative;width:100%;height:100%;border-radius:6px;overflow:hidden}.video-trim-filmstrip-track:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#000;opacity:.3;pointer-events:none;z-index:1}.video-trim-filmstrip.is-loading{background:linear-gradient(90deg,#ffffff0a,#ffffff1f,#ffffff0a);background-size:200% 100%;animation:video-trim-shimmer 1.2s linear infinite}.video-trim-filmstrip.is-not-ready{cursor:wait}.video-trim-filmstrip-hint{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;display:flex;align-items:center;justify-content:center;padding:0 12px;font-size:12px;color:#ffffffd1;text-align:center;pointer-events:none}@keyframes video-trim-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.video-trim-filmstrip-thumbs{position:absolute;top:0;right:0;bottom:0;left:0;display:flex}.video-trim-filmstrip-thumb{flex:1;height:100%;object-fit:cover;pointer-events:none}.video-trim-playhead{position:absolute;top:0;bottom:0;width:1px;margin-left:-.5px;background:#fff;pointer-events:none;z-index:4}.video-trim-selection{position:absolute;top:0;bottom:0;border:2px solid #fff;border-radius:6px;box-sizing:border-box;z-index:3;cursor:move;touch-action:none;overflow:visible}.video-trim-selection-thumbs{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;border-radius:4px;pointer-events:none}.video-trim-selection-thumbs-inner{display:flex;height:100%}.video-trim-duration-badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:4px 12px;border-radius:999px;background:#0009;color:#fafafaeb;font-size:12px;line-height:1;white-space:nowrap;pointer-events:none;z-index:2}.video-trim-handle{position:absolute;top:50%;width:4px;height:32px;margin-top:-16px;border:none;background:#fff;cursor:ew-resize;padding:0;z-index:5;border-radius:4px;touch-action:none;pointer-events:auto}.video-trim-handle:after{content:"";position:absolute;top:0;width:10px;height:100%;background:transparent}.video-trim-handle--start{left:-10px}.video-trim-handle--start:after{left:100%}.video-trim-handle--end{right:-10px;left:auto}.video-trim-handle--end:after{right:100%}.video-trim-shortcut-panel{position:absolute;left:50%;bottom:calc(100% + 12px);transform:translate(-50%);width:min(532px,calc(100vw - 48px));padding:16px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#101010f5;box-shadow:0 12px 40px #00000059}.video-trim-shortcut-row{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fafafab8;font-size:13px;line-height:28px}.video-trim-shortcut-row span:last-child{color:#fafafaeb;font-variant-numeric:tabular-nums}.video-trim-handle--rail{width:16px;top:-6px;bottom:-6px;z-index:10;margin:0}.video-trim-filmstrip.audio-trim-rail{overflow:visible}.video-trim-handle:disabled{opacity:.5;cursor:not-allowed}.audio-trim-preview-wrap{min-height:280px}.audio-trim-wave-preview{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:#1a1a1a;overflow:hidden}.audio-trim-wave-preview canvas{display:block;width:100%;height:100%}.audio-trim-rail{background:#1a1a1a;touch-action:none}.audio-trim-rail-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.audio-trim-rail .video-trim-filmstrip-mask{z-index:1}.audio-trim-hidden-audio{display:none}.audio-trim-pill-wrap{pointer-events:auto}.audio-trim-pill{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;width:548px;max-width:calc(100vw - 32px);height:68px;padding:6px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:#1c1c1cf5;box-shadow:0 12px 40px #00000073;-webkit-user-select:none;user-select:none}.audio-trim-pill.is-processing{opacity:.92}.audio-trim-pill-btn{flex-shrink:0;width:34px;height:34px;border:none;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:#f5f5f5;background:#ffffff14;font-size:16px;transition:background .15s ease}.audio-trim-pill-btn:hover:not(:disabled){background:#ffffff29}.audio-trim-pill-btn:disabled{opacity:.45;cursor:not-allowed}.audio-trim-pill-btn--confirm{background:#f0f0f0;color:#111}.audio-trim-pill-btn--confirm:hover:not(:disabled){background:#fff}.audio-trim-rail-host{position:relative;flex-shrink:0;width:420px;max-width:calc(100vw - 160px);height:56px;border-radius:10px;background:#000000bf;overflow:visible;cursor:pointer;touch-action:none}.audio-trim-rail-host.is-loading .audio-trim-rail-canvas-pixmax{opacity:.55}.audio-trim-rail-canvas-pixmax{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:10px}.audio-trim-playhead{position:absolute;top:0;bottom:0;width:1px;background:#fff;pointer-events:none;z-index:4}.audio-trim-selection-pixmax{position:absolute;top:0;bottom:0;border:2px solid #fff;border-radius:10px;box-sizing:border-box;cursor:move;z-index:5;touch-action:none}.audio-trim-handle-pixmax{position:absolute;top:50%;width:4px;height:32px;margin:0;padding:0;border:none;border-radius:999px;background:#fff;transform:translateY(-50%);cursor:ew-resize;z-index:6;touch-action:none}.audio-trim-handle-pixmax--start{left:-10px}.audio-trim-handle-pixmax--end{right:-10px}.audio-trim-handle-pixmax:disabled{opacity:.5;cursor:not-allowed}.audio-trim-duration-pixmax{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:4px 12px;border-radius:999px;background:#0009;color:#fff;font-size:12px;font-weight:500;white-space:nowrap;pointer-events:none}.video-trim-pill{width:548px}.video-trim-rail-host{overflow:hidden}.video-trim-rail-thumbs{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;width:100%;height:100%;pointer-events:none}.video-trim-rail-thumb{flex:1 1 0;min-width:0;height:100%;object-fit:cover;display:block;-webkit-user-select:none;user-select:none}.video-trim-rail-mask{position:absolute;top:0;bottom:0;background:#0000009e;pointer-events:none;z-index:2}.video-trim-rail-mask--left{left:0}.video-trim-rail-mask--right{right:0}.video-trim-rail-host.is-loading .video-trim-rail-thumbs{opacity:.45;animation:video-trim-shimmer 1.2s linear infinite}.save-to-library-modal .ant-modal-content{background:#141414;border:1px solid #2a2a2a;border-radius:16px;padding:0;overflow:hidden}.save-to-library-modal .ant-modal-body{padding:0}.save-to-library-shell{display:flex;flex-direction:column;min-height:520px;max-height:min(80vh,680px)}.save-to-library-header{padding:20px 24px 12px}.save-to-library-title{margin:0;font-size:18px;font-weight:600;color:#fff}.save-to-library-hint{margin:0;padding:0 24px 16px;color:#888;font-size:14px}.save-to-library-hint-link{border:none;background:none;padding:0;color:#69b1ff;cursor:pointer;font-size:14px}.save-to-library-hint-link:hover{color:#91caff}.save-to-library-tabs-wrap{display:flex;justify-content:center;padding:0 24px 16px}.save-to-library-tabs{display:inline-flex;gap:0;padding:4px;background:#0a0a0a;border:1px solid #2a2a2a;border-radius:999px}.save-to-library-tab{border:none;background:transparent;color:#888;font-size:14px;padding:8px 24px;border-radius:999px;cursor:pointer;transition:background .15s ease,color .15s ease}.save-to-library-tab.is-active{background:#2a2a2a;color:#fff}.save-to-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 24px 16px;flex-wrap:wrap}.save-to-library-categories{display:flex;gap:8px;flex-wrap:wrap}.save-to-library-category{border:none;background:transparent;color:#888;padding:6px 12px;border-radius:8px;cursor:pointer;font-size:13px}.save-to-library-category.is-active{background:#262626;color:#fff}.save-to-library-search{width:200px}.save-to-library-body{flex:1;min-height:0;overflow:auto;padding:0 24px 24px}.save-to-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}.save-to-library-group-card{position:relative;border:1px solid #2a2a2a;border-radius:12px;overflow:hidden;background:#1a1a1a;cursor:pointer;transition:border-color .15s ease,transform .15s ease;padding:0;text-align:left}.save-to-library-group-card:hover:not(:disabled){border-color:#444;transform:translateY(-1px)}.save-to-library-group-card.is-saving{pointer-events:none;opacity:.72}.save-to-library-group-cover{aspect-ratio:1;position:relative;background:#111;display:flex;align-items:center;justify-content:center;overflow:hidden;width:100%}.save-to-library-group-cover img,.save-to-library-group-cover video{width:100%;height:100%;object-fit:cover;display:block}.asset-group-card-cover img,.asset-group-card-cover video{width:100%;height:100%;object-fit:cover;display:block}.save-to-library-group-cover-placeholder{font-size:36px;color:#444}.save-to-library-group-name{position:absolute;left:0;right:0;bottom:0;padding:18px 10px 8px;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.72) 100%);color:#fff;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.save-to-library-group-scope{position:absolute;left:8px;top:8px;padding:2px 8px;border-radius:999px;background:#0000008c;color:#ccc;font-size:11px;line-height:1.4}.save-to-library-group-saving{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000073}.save-to-library-create-modal .ant-modal-content{background:#141414;border:1px solid #2a2a2a;border-radius:16px;padding:0}.save-to-library-create-modal .ant-modal-body{padding:20px 24px 24px}.save-to-library-create-title{margin:0 0 16px;font-size:16px;font-weight:600;color:#fff}.save-to-library-create-preview{display:flex;align-items:center;gap:12px;padding:12px;margin-bottom:16px;background:#0f0f0f;border:1px solid #2a2a2a;border-radius:12px}.save-to-library-create-preview-thumb{width:56px;height:56px;border-radius:8px;overflow:hidden;background:#1a1a1a;flex-shrink:0;display:flex;align-items:center;justify-content:center}.save-to-library-create-preview-thumb img,.save-to-library-create-preview-thumb video{width:100%;height:100%;object-fit:cover}.save-to-library-create-preview-text{color:#888;font-size:13px;line-height:1.5}.save-to-library-create-field{margin-bottom:16px}.save-to-library-create-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;color:#aaa;font-size:13px}.save-to-library-create-count{color:#666;font-size:12px}.save-to-library-create-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.save-to-library-result{margin:0;white-space:pre-wrap;font-family:inherit;font-size:13px;line-height:1.6;color:#ccc}@keyframes sd-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes sd-blurIn{0%{opacity:0;filter:blur(4px)}to{opacity:1;filter:blur(0)}}@keyframes sd-slideUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}[data-sd-animate]{animation:var(--sd-animation, sd-fadeIn) var(--sd-duration, .15s) var(--sd-easing, ease) var(--sd-delay, 0ms) both}/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-content:""}}}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.container{width:100%}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.table-cell{display:table-cell}.table-row{display:table-row}.size-full{width:100%;height:100%}.h-\[46px\]{height:46px}.h-full{height:100%}.min-h-\[200px\]{min-height:200px}.w-full{width:100%}.max-w-full{max-width:100%}.min-w-\[120px\]{min-width:120px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.origin-center{transform-origin:50%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-current{border-color:currentColor}.bg-\[var\(--sdm-tbg\)\]{background-color:var(--sdm-tbg)}.text-left{text-align:left}.wrap-anywhere{overflow-wrap:anywhere}.break-all{word-break:break-all}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.text-\[var\(--sdm-c\,inherit\)\]{color:var(--sdm-c,inherit)}.lowercase{text-transform:lowercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.\[counter-increment\:line_0\]{counter-increment:line 0}.\[counter-reset\:line\]{counter-reset:line}@media (hover:hover){.group-hover\:block:is(:where(.group):hover *){display:block}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.before\:inline-block:before{content:var(--tw-content);display:inline-block}.before\:text-right:before{content:var(--tw-content);text-align:right}.before\:text-\[13px\]:before{content:var(--tw-content);font-size:13px}.before\:content-\[counter\(line\)\]:before{--tw-content:counter(line);content:var(--tw-content)}.before\:select-none:before{content:var(--tw-content);-webkit-user-select:none;user-select:none}.before\:\[counter-increment\:line\]:before{content:var(--tw-content);counter-increment:line}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media (prefers-color-scheme:dark){.dark\:bg-\[var\(--shiki-dark-bg\,var\(--sdm-tbg\)\)\]{background-color:var(--shiki-dark-bg,var(--sdm-tbg))}.dark\:text-\[var\(--shiki-dark\,var\(--sdm-c\,inherit\)\)\]{color:var(--shiki-dark,var(--sdm-c,inherit))}}.\[\&_svg\]\:h-auto svg{height:auto}.\[\&_svg\]\:w-auto svg{width:auto}.\[\&_thead\]\:sticky thead{position:sticky}.\[\&_thead\]\:z-10 thead{z-index:10}.\[\&\>\*\:last-child\]\:after\:inline>:last-child:after{content:var(--tw-content);display:inline}.\[\&\>\*\:last-child\]\:after\:align-baseline>:last-child:after{content:var(--tw-content);vertical-align:baseline}.\[\&\>\*\:last-child\]\:after\:content-\[var\(--streamdown-caret\)\]>:last-child:after{--tw-content:var(--streamdown-caret);content:var(--tw-content)}.\[\&\>p\]\:inline>p{display:inline}.canvas-assistant-markdown{--background:oklch(22% .025 250);--foreground:oklch(93% .01 250);--card:oklch(26% .03 250);--card-foreground:oklch(93% .01 250);--popover:oklch(26% .03 250);--popover-foreground:oklch(93% .01 250);--primary:oklch(68% .12 250);--primary-foreground:oklch(98% 0 0);--secondary:oklch(28% .025 250);--secondary-foreground:oklch(90% .01 250);--muted:oklch(28% .02 250);--muted-foreground:oklch(72% .02 250);--accent:oklch(30% .04 250);--accent-foreground:oklch(93% .01 250);--destructive:oklch(55% .2 25);--border:oklch(38% .03 250);--input:oklch(28% .025 250);--ring:oklch(68% .12 250);--sidebar:oklch(24% .025 250);--sidebar-foreground:oklch(93% .01 250);--sidebar-border:oklch(36% .03 250);--radius:.5rem;color:#e2e8f0;font-size:14px;line-height:1.75}.canvas-assistant-markdown [data-streamdown]{color:inherit}.canvas-assistant-markdown [data-streamdown] :first-child{margin-top:0}.canvas-assistant-markdown [data-streamdown] :last-child{margin-bottom:0}.canvas-assistant-markdown h1,.canvas-assistant-markdown h2,.canvas-assistant-markdown h3,.canvas-assistant-markdown h4{color:#f0f0f0;margin-top:1em;margin-bottom:.5em;font-weight:600}.canvas-assistant-markdown h3{color:#1677ff;font-size:15px}.canvas-assistant-markdown a{color:#69b1ff}.canvas-assistant-markdown strong{color:#fff;font-weight:600}.canvas-assistant-markdown [data-streamdown=code-block]{font-size:12px}.canvas-assistant-markdown table{font-size:13px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}.canvas-assistant-panel{--asst-bg: #1e293b;--asst-bg-inset: #172033;--asst-surface: #243044;--asst-surface-raised: #2d3a52;--asst-border: rgba(148, 163, 184, .32);--asst-border-subtle: rgba(148, 163, 184, .18);--asst-text: #f1f5f9;--asst-text-muted: #94a3b8;--asst-text-faint: #64748b;--asst-input-bg: #0f172a;--asst-accent-ring: rgba(22, 119, 255, .35);--asst-accent: #60a5fa;--asst-accent-soft: rgba(96, 165, 250, .16);--asst-msg-user-bg: linear-gradient(145deg, #2f4a6e 0%, #243656 100%);--asst-msg-user-border: rgba(96, 165, 250, .3);--asst-msg-user-text: #e8f0fe;--asst-msg-assistant-bg: rgba(36, 48, 68, .72);--asst-msg-assistant-border: rgba(148, 163, 184, .22)}.canvas-assistant-bot-icon{display:block;flex-shrink:0;border-radius:50%;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none}.canvas-assistant-fab-wrap{position:fixed;right:6px;z-index:10050;pointer-events:all;touch-action:none}.canvas-assistant-fab{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;background:transparent;color:#fff;cursor:grab;touch-action:none;border-radius:50%;box-shadow:0 8px 22px #3b82f661;transition:filter .2s ease,box-shadow .2s ease}.canvas-assistant-fab-wrap.is-dragging .canvas-assistant-fab{cursor:grabbing}.canvas-assistant-fab:hover{filter:brightness(1.06);box-shadow:0 10px 26px #3b82f67a}.canvas-assistant-fab:focus-visible{outline:2px solid #93c5fd;outline-offset:3px}.canvas-assistant-panel{position:absolute;right:16px;bottom:16px;top:16px;width:min(420px,calc(100vw - 32px));z-index:45;display:flex;flex-direction:column;background:linear-gradient(165deg,var(--asst-surface) 0%,var(--asst-bg) 42%,var(--asst-bg-inset) 100%);border:1px solid var(--asst-border);border-radius:14px;box-shadow:0 0 0 1px #ffffff0d,0 24px 64px #000000b8,0 8px 20px #0000007a,inset 0 1px #ffffff12;overflow:hidden;transition:width .2s ease,border-radius .2s ease,box-shadow .2s ease}.canvas-assistant-panel.is-attachment-drag-over{border-color:var(--asst-accent);box-shadow:0 0 0 2px var(--asst-accent-ring),0 24px 64px #000000b8,0 8px 20px #0000007a,inset 0 1px #ffffff12}.canvas-assistant-attachment-drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#0f172a9e;border-radius:inherit;pointer-events:none}.canvas-assistant-attachment-drop-overlay-inner{padding:20px 24px;border-radius:12px;border:1px dashed rgba(96,165,250,.65);background:#243044eb;text-align:center;max-width:calc(100% - 48px)}.canvas-assistant-attachment-drop-overlay-title{font-size:14px;font-weight:600;color:var(--asst-text)}.canvas-assistant-attachment-drop-overlay-desc{margin-top:6px;font-size:12px;color:var(--asst-text-muted);line-height:1.45}.canvas-assistant-panel.is-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;width:auto;max-width:none;z-index:2100;border-radius:0;border:none;border-top:1px solid var(--asst-border-subtle);box-shadow:none;background:linear-gradient(180deg,var(--asst-surface) 0%,var(--asst-bg) 28%,var(--asst-bg-inset) 100%)}body.canvas-assistant-fullscreen-active .ant-select-dropdown,body.canvas-assistant-fullscreen-active .ant-dropdown,body.canvas-assistant-fullscreen-active .ant-tooltip{z-index:2250!important}.canvas-assistant-apply-plan-modal .ant-modal-content{background:#e4e9ef;border:1px solid #b8c4d4;border-radius:12px;box-shadow:0 24px 64px #0000006b;padding:0;overflow:hidden}.canvas-assistant-apply-plan-modal .ant-modal-header{background:#dfe5ec;border-bottom:1px solid #c5ced9;margin-bottom:0;padding:12px 16px 8px}.canvas-assistant-apply-plan-modal .ant-modal-title{color:#1e293b;font-size:15px;font-weight:600}.canvas-assistant-apply-plan-modal .ant-modal-close{color:#64748b}.canvas-assistant-apply-plan-modal .ant-modal-close:hover{color:#1e293b;background:#0f172a14}.canvas-assistant-apply-plan-modal .ant-modal-body{padding:10px 16px 8px;background:#e4e9ef;overflow:hidden}.canvas-assistant-apply-plan-modal .ant-modal-footer{background:#dfe5ec;border-top:1px solid #c5ced9;padding:8px 16px 12px;margin-top:0}.canvas-assistant-apply-plan-preview-wrap{background:#dfe5ec;border:1px solid #c5ced9;border-radius:6px;overflow:hidden}.canvas-assistant-apply-plan-prompt-input{font-size:12px;line-height:1.45;resize:none;background:#d5dce6!important;border-color:#b8c4d4!important;color:#1e293b}.canvas-assistant-apply-plan-prompt-input.ant-input:hover,.canvas-assistant-apply-plan-prompt-input.ant-input:focus{background:#d0d8e3!important;border-color:#94a3b8!important}.canvas-assistant-apply-plan-prompt-input.ant-input{padding:4px 8px}.canvas-assistant-apply-plan-modal .ant-table-cell{vertical-align:top}.canvas-assistant-apply-plan-modal .ant-table-wrapper,.canvas-assistant-apply-plan-modal .ant-table,.canvas-assistant-apply-plan-modal .ant-table-container,.canvas-assistant-apply-plan-modal .ant-table-content{background:#dfe5ec!important}.canvas-assistant-apply-plan-modal .ant-table-thead>tr>th{background:#d5dce6!important;color:#334155!important;border-bottom:1px solid #c5ced9!important;font-weight:600}.canvas-assistant-apply-plan-modal .ant-table-thead>tr>th:before{display:none}.canvas-assistant-apply-plan-modal .ant-table-tbody>tr>td{background:#e4e9ef!important;color:#1e293b!important;border-bottom:1px solid #c5ced9!important}.canvas-assistant-apply-plan-modal .ant-table-tbody>tr:last-child>td{border-bottom:none!important}.canvas-assistant-apply-plan-modal .ant-table-tbody>tr.ant-table-row:hover>td,.canvas-assistant-apply-plan-modal .ant-table-tbody>tr>td.ant-table-cell-row-hover{background:#d0d8e3!important}.canvas-assistant-apply-plan-settings{margin-top:10px;padding-top:10px;border-top:1px solid #c5ced9}.canvas-assistant-apply-plan-settings-title{font-size:13px;font-weight:600;color:#1e293b;margin-bottom:8px}.canvas-assistant-apply-plan-settings-groups{display:flex;flex-direction:column;gap:6px}.canvas-assistant-apply-plan-settings-group{display:flex;align-items:center;gap:10px;padding:6px 10px;background:#d5dce6;border:1px solid #c5ced9;border-radius:6px}.canvas-assistant-apply-plan-settings-group-label{flex-shrink:0;width:36px;font-size:13px;font-weight:600;color:#334155;margin-bottom:0}.canvas-assistant-apply-plan-settings-fields{flex:1;display:flex;align-items:center;gap:12px;min-width:0}.canvas-assistant-apply-plan-settings-field{flex:1;display:flex;flex-direction:row;align-items:center;gap:6px;min-width:0}.canvas-assistant-apply-plan-settings-field-label{flex-shrink:0;font-size:12px;color:#64748b;white-space:nowrap}.canvas-assistant-apply-plan-settings-field .ant-select{flex:1;min-width:0}body.canvas-assistant-fullscreen-active .canvas-assistant-apply-plan-modal .ant-select-dropdown{z-index:2250!important}.canvas-assistant-panel.is-fullscreen .canvas-assistant-messages{max-width:960px;width:100%;margin:0 auto}.canvas-assistant-panel.is-fullscreen .canvas-assistant-composer,.canvas-assistant-panel.is-fullscreen .canvas-assistant-composer-tags{max-width:960px;width:100%;margin-left:auto;margin-right:auto}.canvas-assistant-panel.is-fullscreen .canvas-assistant-message{max-width:100%}.canvas-assistant-header-actions .ant-btn{color:var(--asst-text-muted)}.canvas-assistant-header-actions .ant-btn:hover{color:var(--asst-text);background:#ffffff1a}.canvas-assistant-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--asst-border-subtle);background:var(--asst-surface-raised);box-shadow:0 1px #ffffff0a}.canvas-assistant-header-left{display:inline-flex;align-items:center;gap:8px;color:var(--asst-text)}.canvas-assistant-header-actions{display:inline-flex;align-items:center;gap:4px}.canvas-assistant-composer-footer{display:flex;align-items:center;gap:8px;margin-top:8px}.canvas-assistant-model-select{flex:1;min-width:72px;max-width:120px}.canvas-assistant-reasoning-toggle{display:inline-flex;align-items:center;gap:4px;color:var(--asst-text-muted);font-size:11px;white-space:nowrap;flex-shrink:0;cursor:pointer}.canvas-assistant-reasoning-toggle span{display:none}@media (min-width: 380px){.canvas-assistant-reasoning-toggle span{display:inline}}.canvas-assistant-estimate{font-size:11px;color:var(--asst-text-faint);white-space:nowrap;flex-shrink:0;margin-left:auto}.canvas-assistant-messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px 16px 24px;background:#0f172a47;scroll-behavior:auto;overscroll-behavior:contain}.canvas-assistant-messages-inner{display:flex;flex-direction:column;gap:24px;width:100%;min-height:min-content}.canvas-assistant-message-row{display:flex;align-items:flex-start;gap:12px;width:100%}.canvas-assistant-message-row.is-user{flex-direction:row-reverse}.canvas-assistant-message-avatar{flex-shrink:0;width:28px;height:28px;margin-top:2px;display:flex;align-items:center;justify-content:center;border-radius:50%;overflow:hidden;background:transparent;border:none}.canvas-assistant-message{min-width:0;font-size:14px;line-height:1.75;word-break:break-word}.canvas-assistant-message-row.is-user .canvas-assistant-message-avatar{background:var(--asst-accent-soft);border-color:#60a5fa59;color:var(--asst-accent)}.canvas-assistant-message-row.is-assistant .canvas-assistant-message-avatar{background:transparent;border:none}.canvas-assistant-message-row.is-user .canvas-assistant-message{max-width:min(85%,520px);padding:10px 14px;border-radius:14px 14px 4px;background:var(--asst-msg-user-bg);border:1px solid var(--asst-msg-user-border);color:var(--asst-msg-user-text);box-shadow:inset 0 1px #ffffff0f,0 2px 8px #0f172a47}.canvas-assistant-message-row.is-assistant .canvas-assistant-message{flex:1;max-width:min(92%,560px);padding:10px 14px;border-radius:14px 14px 14px 4px;background:var(--asst-msg-assistant-bg);border:1px solid var(--asst-msg-assistant-border);color:var(--asst-text);box-shadow:inset 0 1px #ffffff08}.canvas-assistant-message-content{word-break:break-word;user-select:text;-webkit-user-select:text}.canvas-assistant-markdown,.canvas-assistant-markdown [data-streamdown],.canvas-assistant-reasoning pre{user-select:text;-webkit-user-select:text}.canvas-assistant-message-row.is-user .canvas-assistant-message-content{white-space:pre-wrap}.canvas-assistant-streaming{color:var(--asst-accent);font-size:13px;opacity:.92}.canvas-assistant-streaming--waiting{display:inline-flex;align-items:center;gap:8px;min-height:24px}.canvas-assistant-markdown{letter-spacing:.01em;color:var(--asst-text)}.canvas-assistant-markdown h3{padding-left:10px;border-left:3px solid var(--asst-accent)}.canvas-assistant-message-row.is-user .canvas-assistant-ref-tag{background:#0f172a61;border-color:#94a3b847;color:#cbd5e1}.canvas-assistant-message-row.is-user .canvas-assistant-message-meta{color:#e2e8f0b8;border-top-color:#94a3b838}.canvas-assistant-message-retry{margin-top:8px;padding-top:8px;border-top:1px solid rgba(148,163,184,.22)}.canvas-assistant-message-retry .ant-btn{padding-inline:4px;height:auto;color:#e2e8f0e0;font-size:12px}.canvas-assistant-message-retry .ant-btn:not(:disabled):hover{color:#fff;background:#0f172a59}.canvas-assistant-message-row.is-assistant .canvas-assistant-message-meta{border-top-color:var(--asst-border-subtle)}.canvas-assistant-markdown h2{padding-bottom:.35em;border-bottom:1px solid var(--asst-border-subtle)}.canvas-assistant-streamdown{width:100%}.canvas-assistant-center{flex:1;display:flex;align-items:center;justify-content:center;min-height:160px}.canvas-assistant-messages .ant-empty .ant-empty-description{color:var(--asst-text-muted)}.canvas-assistant-messages .ant-empty .ant-empty-image{opacity:.55}.canvas-assistant-reasoning{margin-bottom:12px;padding:10px 12px;border-radius:10px;background:var(--asst-surface);border:1px solid var(--asst-border-subtle);color:var(--asst-text-muted);font-size:12px;line-height:1.6}.canvas-assistant-reasoning summary{cursor:pointer;color:var(--asst-text);margin-bottom:4px}.canvas-assistant-reasoning pre{margin:0;white-space:pre-wrap;font-family:inherit}.canvas-assistant-message-attachments img{margin-top:8px;max-width:180px;max-height:120px;border-radius:8px;object-fit:cover}.canvas-assistant-message-refs,.canvas-assistant-composer-tags{display:flex;flex-wrap:wrap;gap:6px}.canvas-assistant-message-refs{margin-top:8px}.canvas-assistant-ref-tag,.canvas-assistant-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;background:var(--asst-surface);border:1px solid var(--asst-border-subtle);color:var(--asst-text-muted);font-size:11px}.canvas-assistant-tag button{border:none;background:transparent;color:inherit;cursor:pointer;padding:0 2px}.canvas-assistant-message-meta{margin-top:10px;padding-top:8px;font-size:11px;color:var(--asst-text-faint);border-top:1px solid var(--asst-border-subtle)}.canvas-assistant-composer-tags{padding:0 14px 8px;background:var(--asst-surface-raised)}.canvas-assistant-composer{padding:12px 14px 14px;border-top:1px solid var(--asst-border-subtle);background:var(--asst-surface-raised);box-shadow:inset 0 1px #ffffff0a}.canvas-assistant-composer-actions{display:flex;align-items:center;gap:8px;margin-bottom:8px}.canvas-assistant-workflow-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px}.canvas-assistant-workflow-params{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.canvas-assistant-workflow-group{display:flex;flex-direction:column;gap:4px}.canvas-assistant-workflow-group-label{font-size:11px;font-weight:600;color:var(--asst-text-muted);letter-spacing:.02em}.canvas-assistant-workflow-field{display:flex;flex-direction:column;gap:2px;min-width:88px;flex:1 1 88px;max-width:140px}.canvas-assistant-workflow-field-label{font-size:10px;color:var(--asst-text-faint);line-height:1.2;white-space:nowrap}.canvas-assistant-composer-actions .canvas-assistant-workflow-select{flex:1;min-width:140px}.canvas-assistant-workflow-select{min-width:168px;flex-shrink:0}.canvas-assistant-workflow-param{width:100%;min-width:0}.canvas-assistant-workflow-param.ant-input-number{width:100%}.canvas-assistant-workflow-param.ant-input-number .ant-input-number-input{text-align:center}.canvas-assistant-spec-hint{font-size:12px;color:var(--asst-text-muted);margin-bottom:8px;line-height:1.4}.canvas-assistant-composer .ant-input,.canvas-assistant-composer .ant-input-affix-wrapper,.canvas-assistant-composer textarea.ant-input{background:var(--asst-input-bg)!important;border-color:var(--asst-border)!important;color:var(--asst-text)!important}.canvas-assistant-composer .ant-input::placeholder,.canvas-assistant-composer textarea.ant-input::placeholder{color:var(--asst-text-faint)!important}.canvas-assistant-composer .ant-input:hover,.canvas-assistant-composer textarea.ant-input:hover{border-color:#94a3b880!important}.canvas-assistant-composer .ant-input:focus,.canvas-assistant-composer textarea.ant-input:focus{border-color:#1677ff!important;box-shadow:0 0 0 2px var(--asst-accent-ring)!important}.canvas-assistant-composer .ant-select-selector{background:var(--asst-input-bg)!important;border-color:var(--asst-border)!important;color:var(--asst-text)!important}.canvas-assistant-composer .ant-select-arrow{color:var(--asst-text-muted)!important}.canvas-assistant-composer-actions .ant-btn.is-required{color:#faad14}.canvas-assistant-composer-actions .ant-btn.is-attached{color:#52c41a}.canvas-assistant-tag.is-spec{border-color:#52c41a73;background:#52c41a1f}.canvas-assistant-composer-footer .ant-btn{flex-shrink:0}.canvas-assistant-session-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:200px;max-width:min(320px,calc(100vw - 48px))}.canvas-assistant-session-dropdown .ant-dropdown-menu{max-height:min(480px,calc(100vh - 160px));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.canvas-assistant-fab-wrap.is-streaming .canvas-assistant-fab{box-shadow:0 0 0 2px #93c5fd8c,0 8px 22px #3b82f666}.canvas-assistant-fab-wrap.is-streaming .canvas-assistant-fab:after{content:"";position:absolute;top:3px;right:3px;width:8px;height:8px;border-radius:50%;background:#93c5fd;box-shadow:0 0 #93c5fd73;animation:canvas-assistant-fab-pulse 1.4s ease-out infinite}@keyframes canvas-assistant-fab-pulse{0%{box-shadow:0 0 #93c5fd73}70%{box-shadow:0 0 0 6px #93c5fd00}to{box-shadow:0 0 #93c5fd00}}@media (prefers-reduced-motion: reduce){.canvas-assistant-fab-wrap.is-streaming .canvas-assistant-fab:after{animation:none}}.canvas-assistant-session-item.is-active .canvas-assistant-session-item-title,.ant-dropdown-menu-item-selected .canvas-assistant-session-item-title{color:#1677ff;font-weight:600}.canvas-assistant-session-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-assistant-plan-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;padding:8px 10px;background:var(--asst-accent-soft);border:1px solid rgba(96,165,250,.28);border-radius:8px}.canvas-assistant-plan-bar.is-loading{justify-content:flex-start;gap:10px}.canvas-assistant-plan-bar.is-loading .canvas-assistant-plan-summary{color:var(--asst-text)}.canvas-assistant-plan-summary{flex:1;min-width:0;font-size:12px;color:var(--asst-text-muted);line-height:1.4}.canvas-assistant-plan-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.admin-fill-page{flex:1 1 0;height:100%;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden;color:#ffffffe0}.admin-fill-head{flex-shrink:0}.admin-fill-panel{flex:1 1 0;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px}.admin-fill-panel.ant-card{display:flex;flex-direction:column}.admin-fill-panel.ant-card>.ant-card-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.admin-fill-filters{flex-shrink:0}.admin-fill-table{flex:1 1 0;min-height:0;overflow:hidden}.admin-fill-table .ant-table-wrapper,.admin-fill-table .ant-spin-nested-loading,.admin-fill-table .ant-spin-container,.admin-fill-table .ant-table,.admin-fill-table .ant-table-container{height:100%}.admin-fill-table .ant-table-wrapper,.admin-fill-table .ant-spin-nested-loading,.admin-fill-table .ant-spin-container{display:flex;flex-direction:column;min-height:0}.admin-fill-table .ant-table{flex:1;min-height:0}.admin-fill-table .ant-table-container{display:flex;flex-direction:column}.admin-fill-panel .ant-tabs{flex:1;min-height:0;display:flex;flex-direction:column}.admin-fill-panel .ant-tabs-nav{flex-shrink:0;margin-bottom:12px}.admin-fill-panel .ant-tabs-content-holder{flex:1 1 0;min-height:0;position:relative}.admin-fill-panel .ant-tabs-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;min-height:0}.admin-fill-panel .ant-tabs-tabpane{display:none}.admin-fill-panel .ant-tabs-tabpane-active,.admin-fill-tab-body{flex:1 1 0;height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.team-admin-page{flex:1 1 0;height:100%;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden;color:#ffffffe0}.team-admin-head{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.team-admin-head h2{margin:0;font-size:18px;font-weight:600;color:#fff}.team-admin-filters{flex-shrink:0;display:flex;gap:12px;margin-bottom:16px}.team-admin-stats{flex-shrink:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.team-stat-card{display:flex;align-items:center;gap:14px;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;padding:18px 20px}.team-stat-icon{width:40px;height:40px;border-radius:20px;background:#1677ff29;color:#1677ff;display:flex;align-items:center;justify-content:center;font-size:18px}.team-stat-label{color:#888;font-size:13px}.team-stat-value{color:#fff;font-size:24px;font-weight:600;line-height:1.2}.team-admin-table{flex:1 1 0;min-height:0;overflow:hidden;display:flex;flex-direction:column;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;padding:4px 8px 8px}.team-admin-table .ant-table-wrapper,.team-admin-table .ant-spin-nested-loading,.team-admin-table .ant-spin-container,.team-admin-table .ant-table,.team-admin-table .ant-table-container{height:100%}.team-admin-table .ant-table-wrapper,.team-admin-table .ant-spin-nested-loading,.team-admin-table .ant-spin-container{display:flex;flex-direction:column;min-height:0}.team-admin-table .ant-table{flex:1;min-height:0}.team-admin-table .ant-table-container{display:flex;flex-direction:column}.team-quota-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.team-quota-label{color:#888;font-size:12px}.team-quota-account{color:#888;margin-bottom:12px}.quota-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quota-type-card{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid #2a2a2a;background:#141414;color:#ccc;border-radius:10px;padding:16px 8px;cursor:pointer}.quota-type-card.active{border-color:#1677ff;background:#1677ff1f;color:#1677ff}.quota-type-mark{font-size:18px;line-height:1}.quota-type-note{margin:8px 0 12px;color:#888;font-size:13px}.quota-field-label{margin:4px 0 8px;color:#ddd}.quota-remaining-row{display:flex;gap:8px}.quota-remaining-row .ant-input{flex:1}.team-quota-track{position:relative;height:22px;border-radius:4px;background:#1677ff2e;overflow:hidden;min-width:220px}.team-quota-fill{position:absolute;inset:0 auto 0 0;width:100%;background:#1677ff}.team-quota-text{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;height:100%;padding:0 8px;color:#fff;font-size:12px}.team-status-on{color:#52c41a}.team-status-off{color:#888}.team-menu-danger{color:#ff4d4f}.team-member-cell{display:flex;flex-direction:column;min-width:0}.team-member-name{color:#fff;font-weight:500}.team-member-account{color:#888;font-size:12px}.team-project-row{display:flex;align-items:center;gap:10px;padding:12px 4px;border-bottom:1px solid #2a2a2a;cursor:pointer}.team-project-row span{color:#ffffffe0}.team-project-team{color:#888}.team-drawer-note{color:#888;font-size:13px}@media (max-width: 1100px){.team-admin-stats{grid-template-columns:1fr}}.usage-page{flex:1 1 0;height:100%;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:auto;color:#ffffffe0}.usage-note{margin:0 0 12px;color:#888;font-size:13px}.usage-range{margin-bottom:16px}.usage-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.usage-stat-card{position:relative;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;padding:18px 20px 16px;min-height:108px}.usage-stat-label{color:#888;font-size:13px}.usage-stat-value{margin-top:18px;color:#fff;font-size:32px;font-weight:650;line-height:1.1;letter-spacing:-.4px}.usage-stat-side{margin-left:10px;color:#52c41a;font-size:13px;font-weight:500;letter-spacing:0}.usage-stat-icon{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px}.usage-stat-icon.blue{background:#1677ff29;color:#1677ff}.usage-stat-icon.gold{background:#faad1429;color:#faad14}.usage-stat-icon.green{background:#52c41a29;color:#52c41a}.usage-body{flex:1 1 0;min-height:320px;min-width:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);grid-template-rows:minmax(0,1fr);gap:16px;align-items:stretch}.usage-panel{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;padding:16px 16px 8px;min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden}.usage-panel h3{margin:0;color:#fff;font-size:16px;font-weight:600}.usage-panel-sub{margin:4px 0 0;color:#888;font-size:12px}.usage-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 12px}.usage-metric{background:#141414;border:1px solid #2a2a2a;border-radius:10px;padding:12px 14px 10px;min-height:92px}.usage-metric-label{display:flex;align-items:center;gap:6px;color:#888;font-size:12px}.usage-metric-label .anticon{color:#1677ff}.usage-metric-value{margin-top:14px;color:#fff;font-size:22px;font-weight:650;line-height:1.25}.usage-tabs{display:inline-flex;gap:4px;margin-bottom:8px;background:#141414;border:1px solid #2a2a2a;border-radius:8px;padding:3px}.usage-tabs button{border:none;background:transparent;color:#aaa;border-radius:6px;padding:4px 14px;cursor:pointer;font-size:13px}.usage-tabs button.active{background:#2a2a2a;color:#fff;font-weight:600}.usage-table{flex:1;min-height:0;overflow:hidden}.usage-table .ant-table-wrapper,.usage-table .ant-spin-nested-loading,.usage-table .ant-spin-container,.usage-table .ant-table,.usage-table .ant-table-container{height:100%}.usage-table .ant-table-wrapper,.usage-table .ant-spin-nested-loading,.usage-table .ant-spin-container{display:flex;flex-direction:column;min-height:0}.usage-table .ant-table{flex:1;min-height:0}.usage-table .ant-table-container{display:flex;flex-direction:column}.usage-table-foot{flex-shrink:0;color:#8a9099;font-size:12px;padding:8px 0 4px}.usage-credits{color:#faad14;font-weight:600}.usage-page .ant-table-wrapper .ant-table-thead>tr>th{font-weight:500}@media (max-width: 1100px){.usage-stats,.usage-metrics{grid-template-columns:1fr}.usage-body{grid-template-columns:1fr;grid-template-rows:minmax(320px,1fr) minmax(320px,1fr);overflow:auto}}.app-version-banner{--banner-bg: linear-gradient( 145deg, rgba(36, 48, 68, .94) 0%, rgba(23, 32, 51, .92) 100% );--banner-border: rgba(148, 163, 184, .28);--banner-accent: #60a5fa;--banner-accent-soft: rgba(96, 165, 250, .14);--banner-text: #f1f5f9;--banner-text-muted: #94a3b8;--banner-shadow: 0 0 0 1px rgba(255, 255, 255, .04), 0 16px 40px rgba(0, 0, 0, .45), 0 4px 12px rgba(0, 0, 0, .28);position:fixed;top:20px;left:50%;z-index:99999;width:min(520px,calc(100vw - 32px));transform:translate(-50%);pointer-events:none;animation:app-version-banner-enter .38s cubic-bezier(.22,1,.36,1) both}@keyframes app-version-banner-enter{0%{opacity:0;transform:translate(-50%) translateY(-12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.app-version-banner__card{position:relative;display:flex;align-items:center;gap:14px;padding:12px 14px 12px 12px;border-radius:14px;border:1px solid var(--banner-border);background:var(--banner-bg);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);box-shadow:var(--banner-shadow);pointer-events:auto;overflow:hidden}.app-version-banner__card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(96,165,250,.85) 35%,rgba(22,119,255,.95) 50%,rgba(96,165,250,.85) 65%,transparent 100%);opacity:.9}.app-version-banner__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:11px;background:var(--banner-accent-soft);border:1px solid rgba(96,165,250,.22);color:var(--banner-accent);font-size:18px}.app-version-banner__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.app-version-banner__title{font-size:13px;font-weight:600;line-height:1.35;color:var(--banner-text);letter-spacing:.01em}.app-version-banner__desc{font-size:12px;line-height:1.45;color:var(--banner-text-muted)}.app-version-banner__action{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 14px;border:1px solid rgba(96,165,250,.38);border-radius:9px;background:linear-gradient(180deg,#1677ff38,#1677ff1f);color:#e8f0fe;font-size:12px;font-weight:600;line-height:1;cursor:pointer;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease}.app-version-banner__action:hover{border-color:#60a5fa9e;background:linear-gradient(180deg,#1677ff52,#1677ff2e);box-shadow:0 0 0 3px #1677ff1f;color:#fff}.app-version-banner__action:focus-visible{outline:none;box-shadow:0 0 0 2px #0f172af2,0 0 0 4px #60a5fa8c}.app-version-banner__action:active{background:linear-gradient(180deg,#1677ff42,#1677ff24)}@media (max-width: 560px){.app-version-banner{top:12px;width:calc(100vw - 24px)}.app-version-banner__card{flex-wrap:wrap;gap:10px;padding:12px}.app-version-banner__body{flex:1 1 calc(100% - 54px)}.app-version-banner__action{width:100%;height:36px}}@media (prefers-reduced-motion: reduce){.app-version-banner{animation:none}.app-version-banner__action{transition:none}}
