:root{--color-bg-primary:#fff;--color-bg-secondary:#faf9f5;--color-bg-tertiary:#f5f4ef;--color-bg-page:#fffdfa;--color-border-primary:#e1e3e6;--color-border-secondary:#bbc0cc;--color-border-subtle:#eef0f2;--color-text-primary:#1f2329;--color-text-secondary:#3a3f47;--color-text-tertiary:#6f7480;--color-text-quaternary:#8f94a0;--color-text-hint:#dee0e3;--color-brand:#e89b8f;--color-brand-soft:#fef5f3;--color-brand-line:#f5d4ce;--font-mono-ui:"JetBrains Mono", "SF Mono", "Cascadia Code", monospace;--color-hover-bg:#faf9f5;--color-active-bg:#f5f4ef;--color-danger:#ef4444;--color-danger-hover:#dc2626;--color-danger-bg:#fee2e2;--color-link:#e89b8f;--color-link-hover:#d47b6e;--color-btn-primary-bg:#111827;--color-btn-primary-bg-hover:#374151;--color-btn-primary-text:#fff;--color-code-bg:#f6f8fa;--color-code-text:#24292e;--color-inline-code-bg:#e5e7eb;--color-shadow:#0000001a;--color-shadow-strong:#00000026;--color-shadow-subtle:#00000014;--color-overlay:#0006;--color-sidebar-border-hover:#4646461a;--color-nav-icon-stroke:#515151;--color-logo-gradient-start:#1f2329;--color-logo-gradient-end:#a93a2c;--color-scrollbar:#e5e7eb;--color-scrollbar-hover:#d1d5db;--color-input-focus-ring:#e89b8f1f;--color-input-focus-border:#e89b8f;--color-send-btn-bg:#111827;--color-send-btn-hover:#374151;--color-avatar-bg:#e5e7eb;--color-avatar-text:#374151;--color-role-assistant:#2563eb;--color-tab-active-shadow:#0000001a;--icon-filter:none;--logo-filter:invert(1);--color-spinner-on-dark:#fff;--color-spinner-on-light:#1f2329;--color-media-placeholder-bg:#000;--color-media-overlay:#0000008c;--color-progress-overlay:#00000073;--color-danger-strong:#e74c3c}[data-theme=dark]{--color-bg-primary:#1a1b1e;--color-bg-secondary:#222326;--color-bg-tertiary:#2c2d31;--color-bg-page:#18191b;--color-border-primary:#333538;--color-border-secondary:#444649;--color-border-subtle:#2c2d31;--color-text-primary:#e4e4e7;--color-text-secondary:#c0c0c5;--color-text-tertiary:#8b8b92;--color-text-quaternary:#6b6b73;--color-text-hint:#4a4a50;--color-brand:#e89b8f;--color-brand-soft:#e89b8f2e;--color-brand-line:#e89b8f57;--font-mono-ui:"JetBrains Mono", "SF Mono", "Cascadia Code", monospace;--color-hover-bg:#333538;--color-active-bg:#333538;--color-danger:#f87171;--color-danger-hover:#ef4444;--color-danger-bg:#ef444426;--color-link:#e89b8f;--color-link-hover:#f0b3a7;--color-btn-primary-bg:#e4e4e7;--color-btn-primary-bg-hover:#c0c0c5;--color-btn-primary-text:#1a1b1e;--color-code-bg:#111113;--color-code-text:#d4d4d4;--color-inline-code-bg:#333538;--color-shadow:#0000004d;--color-shadow-strong:#0006;--color-shadow-subtle:#0003;--color-overlay:#0009;--color-sidebar-border-hover:#c8c8c81a;--color-nav-icon-stroke:#a0a0a0;--color-logo-gradient-start:#e4e4e7;--color-logo-gradient-end:#8b8b92;--color-scrollbar:#333538;--color-scrollbar-hover:#444649;--color-input-focus-ring:#64647833;--color-input-focus-border:#8b8b92;--color-send-btn-bg:#e4e4e7;--color-send-btn-hover:#c0c0c5;--color-avatar-bg:#333538;--color-avatar-text:#c0c0c5;--color-role-assistant:#60a5fa;--color-tab-active-shadow:#0000004d;--icon-filter:invert(.85);--logo-filter:none;--color-spinner-on-dark:#fff;--color-spinner-on-light:#e4e4e7;--color-media-placeholder-bg:#000;--color-media-overlay:#000000a6;--color-progress-overlay:#0000008c;--color-danger-strong:#f87171}[data-theme=dark] .hljs{color:#c9d1d9;background:#0d1117}[data-theme=dark] .hljs-doctag,[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-meta .hljs-keyword,[data-theme=dark] .hljs-template-tag,[data-theme=dark] .hljs-template-variable,[data-theme=dark] .hljs-type,[data-theme=dark] .hljs-variable.language_{color:#ff7b72}[data-theme=dark] .hljs-title,[data-theme=dark] .hljs-title.class_,[data-theme=dark] .hljs-title.class_.inherited__,[data-theme=dark] .hljs-title.function_{color:#d2a8ff}[data-theme=dark] .hljs-attr,[data-theme=dark] .hljs-attribute,[data-theme=dark] .hljs-literal,[data-theme=dark] .hljs-meta,[data-theme=dark] .hljs-number,[data-theme=dark] .hljs-operator,[data-theme=dark] .hljs-variable,[data-theme=dark] .hljs-selector-attr,[data-theme=dark] .hljs-selector-class,[data-theme=dark] .hljs-selector-id{color:#79c0ff}[data-theme=dark] .hljs-regexp,[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-meta .hljs-string{color:#a5d6ff}[data-theme=dark] .hljs-built_in,[data-theme=dark] .hljs-symbol{color:#ffa657}[data-theme=dark] .hljs-comment,[data-theme=dark] .hljs-code,[data-theme=dark] .hljs-formula{color:#8b949e}[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-quote,[data-theme=dark] .hljs-selector-tag,[data-theme=dark] .hljs-selector-pseudo{color:#7ee787}[data-theme=dark] .hljs-subst{color:#c9d1d9}[data-theme=dark] .hljs-section{color:#1f6feb;font-weight:700}[data-theme=dark] .hljs-bullet{color:#f2cc60}[data-theme=dark] .hljs-emphasis{color:#c9d1d9;font-style:italic}[data-theme=dark] .hljs-strong{color:#c9d1d9;font-weight:700}[data-theme=dark] .hljs-addition{color:#aff5b4;background-color:#033a16}[data-theme=dark] .hljs-deletion{color:#ffdcd7;background-color:#67060c}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg-page);color:var(--color-text-primary);font-family:Inter,PingFang SC,HarmonyOS Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;transition:background .2s,color .2s;overflow:hidden}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle at 14% 12%, var(--color-brand-soft), transparent 26%), linear-gradient(90deg, #1f232909 1px, transparent 1px), linear-gradient(#1f232909 1px, transparent 1px);background-size:auto,32px 32px,32px 32px;position:fixed;inset:0}button{font-family:inherit}#root{width:100%;height:100vh}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}*{scrollbar-width:thin;scrollbar-color:var(--color-scrollbar) transparent}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.btn-spinner{vertical-align:middle;border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spinner-rotate;display:inline-block}.app{background:var(--color-bg-page);width:100%;height:100vh;display:flex;overflow:hidden}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur();backdrop-filter:blur();background:0 0;justify-content:center;align-items:center;transition:background .2s,-webkit-backdrop-filter .2s,backdrop-filter .2s;display:flex;position:fixed;inset:0}.modal-overlay.active{background:var(--color-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--color-bg-primary);box-shadow:0 8px 24px var(--color-shadow-strong);opacity:0;border-radius:12px;transition:opacity .2s,transform .2s;transform:scale(.9)translateY(8px)}.modal-content.active{opacity:1;transform:scale(1)translateY(0)}.confirm-modal{min-width:300px;padding:24px}.confirm-modal .confirm-modal-title{color:var(--color-text-primary);text-align:center;margin:0 0 20px;font-size:15px;font-weight:500}.confirm-modal .confirm-modal-actions{justify-content:center;gap:12px;display:flex}.confirm-modal .confirm-modal-actions button{cursor:pointer;border:none;border-radius:8px;padding:8px 24px;font-size:14px;transition:background .2s,color .2s}.confirm-modal .confirm-modal-actions .confirm-modal-cancel{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.confirm-modal .confirm-modal-actions .confirm-modal-cancel:hover{background:var(--color-hover-bg)}.confirm-modal .confirm-modal-actions .confirm-modal-confirm{background:var(--color-danger);color:var(--color-spinner-on-dark)}.confirm-modal .confirm-modal-actions .confirm-modal-confirm:hover:not(:disabled){background:var(--color-danger-hover)}.confirm-modal .confirm-modal-actions button:disabled{opacity:.6;cursor:not-allowed}.input-modal{min-width:340px;padding:24px}.input-modal .input-modal-title{color:var(--color-text-primary);text-align:center;margin:0 0 16px;font-size:15px;font-weight:500}.input-modal .input-modal-input{border:1px solid var(--color-border-secondary);width:100%;color:var(--color-text-secondary);background:var(--color-bg-primary);box-sizing:border-box;border-radius:8px;outline:none;margin-bottom:20px;padding:10px 12px;font-size:14px;transition:border-color .15s}.input-modal .input-modal-input:focus{border-color:var(--color-input-focus-border)}.input-modal .input-modal-actions{justify-content:center;gap:12px;display:flex}.input-modal .input-modal-actions button{cursor:pointer;border:none;border-radius:8px;padding:8px 24px;font-size:14px;transition:background .2s,color .2s}.input-modal .input-modal-actions .input-modal-cancel{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.input-modal .input-modal-actions .input-modal-cancel:hover{background:var(--color-hover-bg)}.input-modal .input-modal-actions .input-modal-confirm{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.input-modal .input-modal-actions .input-modal-confirm:hover:not(:disabled){background:var(--color-btn-primary-bg-hover)}.input-modal .input-modal-actions button:disabled{opacity:.6;cursor:not-allowed}.edit-profile-modal{min-width:340px;padding:24px}.edit-profile-modal .edit-profile-title{color:var(--color-text-primary);text-align:center;margin:0 0 16px;font-size:15px;font-weight:500}.edit-profile-modal .edit-profile-input{border:1px solid var(--color-border-secondary);width:100%;color:var(--color-text-secondary);background:var(--color-bg-primary);box-sizing:border-box;border-radius:8px;outline:none;margin-bottom:8px;padding:10px 12px;font-size:14px;transition:border-color .15s}.edit-profile-modal .edit-profile-input:focus{border-color:var(--color-input-focus-border)}.edit-profile-modal .edit-profile-input:disabled{background:var(--color-bg-secondary);cursor:not-allowed}.edit-profile-modal .edit-profile-error{color:var(--color-danger);text-align:center;margin:0 0 8px;font-size:13px}.edit-profile-modal .edit-profile-actions{justify-content:center;gap:12px;margin-top:12px;display:flex}.edit-profile-modal .edit-profile-actions button{cursor:pointer;border:none;border-radius:8px;padding:8px 24px;font-size:14px;transition:background .2s,color .2s}.edit-profile-modal .edit-profile-actions button:disabled{opacity:.6;cursor:not-allowed}.edit-profile-modal .edit-profile-actions .edit-profile-cancel{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.edit-profile-modal .edit-profile-actions .edit-profile-cancel:hover:not(:disabled){background:var(--color-hover-bg)}.edit-profile-modal .edit-profile-actions .edit-profile-save{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.edit-profile-modal .edit-profile-actions .edit-profile-save:hover:not(:disabled){background:var(--color-btn-primary-bg-hover)}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:#0003;--rc-drag-bar-size:6px;--rc-border-color:#ffffffb3;--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;max-width:100%;display:inline-block;position:relative}.ReactCrop *,.ReactCrop :before,.ReactCrop :after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{max-width:100%;max-height:inherit;display:block}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-mask{pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px);position:absolute;inset:0}.ReactCrop__crop-selection{cursor:move;position:absolute;top:0;left:0;transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";border:1px solid var(--rc-border-color);opacity:.3;position:absolute;inset:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){color:#fff;background-image:linear-gradient(90deg,#fff 50%,#444 50%),linear-gradient(90deg,#fff 50%,#444 50%),linear-gradient(#fff 50%,#444 50%),linear-gradient(#fff 50%,#444 50%);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;animation:1s linear infinite marching-ants}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";background-color:#fff6;display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6667%}.ReactCrop__drag-handle{width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color);position:absolute}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;top:0;left:0;transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;top:0;left:50%;transform:translate(-50%,-50%)}.ReactCrop .ord-ne{cursor:ne-resize;top:0;right:0;transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%;right:0;transform:translate(50%,-50%)}.ReactCrop .ord-se{cursor:se-resize;bottom:0;right:0;transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;bottom:0;left:50%;transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;bottom:0;left:0;transform:translate(-50%,50%)}.ReactCrop .ord-w{cursor:w-resize;top:50%;left:0;transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{width:100%;height:var(--rc-drag-bar-size);top:0;left:0;transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{width:var(--rc-drag-bar-size);height:100%;top:0;right:0;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{width:100%;height:var(--rc-drag-bar-size);bottom:0;left:0;transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{width:var(--rc-drag-bar-size);height:100%;top:0;left:0;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer:coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}.avatar-crop-modal{min-width:360px;max-width:480px;padding:24px}.avatar-crop-modal .avatar-crop-title{color:var(--color-text-primary);text-align:center;margin:0 0 16px;font-size:15px;font-weight:500}.avatar-crop-modal .avatar-crop-area{justify-content:center;margin-bottom:16px;display:flex}.avatar-crop-modal .avatar-crop-area .avatar-crop-image{max-width:100%;max-height:400px}.avatar-crop-modal .avatar-crop-actions{justify-content:center;gap:12px;margin-top:12px;display:flex}.avatar-crop-modal .avatar-crop-actions button{cursor:pointer;border:none;border-radius:8px;padding:8px 24px;font-size:14px;transition:background .2s,color .2s}.avatar-crop-modal .avatar-crop-actions button:disabled{opacity:.6;cursor:not-allowed}.avatar-crop-modal .avatar-crop-actions .avatar-crop-cancel{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.avatar-crop-modal .avatar-crop-actions .avatar-crop-cancel:hover:not(:disabled){background:var(--color-hover-bg)}.avatar-crop-modal .avatar-crop-actions .avatar-crop-confirm{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.avatar-crop-modal .avatar-crop-actions .avatar-crop-confirm:hover:not(:disabled){background:var(--color-btn-primary-bg-hover)}.profile-modal{min-width:360px;padding:0}.profile-modal .profile-modal-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.profile-modal .profile-modal-header .profile-modal-title{color:var(--color-text-primary);font-size:16px;font-weight:600}.profile-modal .profile-modal-header .profile-modal-close{cursor:pointer;width:28px;height:28px;color:var(--color-text-quaternary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:20px;transition:background .2s,color .2s;display:flex}.profile-modal .profile-modal-header .profile-modal-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.profile-modal .profile-modal-body{padding:24px}.profile-modal .profile-modal-body .profile-avatar-section{justify-content:center;margin-bottom:24px;display:flex}.profile-modal .profile-modal-body .profile-avatar-section .profile-avatar-wrapper{display:inline-block;position:relative}.profile-modal .profile-modal-body .profile-avatar-section .profile-avatar{object-fit:cover;border-radius:50%;width:80px;height:80px}.profile-modal .profile-modal-body .profile-avatar-section .profile-avatar-default{background:var(--color-bg-tertiary);border:2px solid var(--color-border-primary);justify-content:center;align-items:center;display:flex}.profile-modal .profile-modal-body .profile-avatar-section .profile-avatar-default img{opacity:.6;width:40px;height:40px}.profile-modal .profile-modal-body .profile-avatar-section .profile-avatar-edit-btn{border:2px solid var(--color-bg-primary);background:var(--color-bg-tertiary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:background .2s;display:flex;position:absolute;bottom:-2px;right:-2px}.profile-modal .profile-modal-body .profile-avatar-section .profile-avatar-edit-btn img{opacity:.5;width:12px;height:12px;filter:var(--icon-filter)}.profile-modal .profile-modal-body .profile-avatar-section .profile-avatar-edit-btn:hover{background:var(--color-hover-bg)}.profile-modal .profile-modal-body .profile-avatar-section .profile-avatar-edit-btn:hover img{opacity:.8}.profile-modal .profile-modal-body .profile-info-section{flex-direction:column;gap:16px;display:flex}.profile-modal .profile-modal-body .profile-info-section .profile-info-item{flex-direction:column;gap:4px;display:flex}.profile-modal .profile-modal-body .profile-info-section .profile-info-item .profile-info-label{color:var(--color-text-quaternary);font-size:12px;font-weight:500}.profile-modal .profile-modal-body .profile-info-section .profile-info-item .profile-info-row{align-items:center;gap:8px;display:flex}.profile-modal .profile-modal-body .profile-info-section .profile-info-item .profile-info-value{color:var(--color-text-primary);word-break:break-all;font-size:14px}.profile-modal .profile-modal-body .profile-info-section .profile-info-item .profile-edit-btn{cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:background .2s;display:flex}.profile-modal .profile-modal-body .profile-info-section .profile-info-item .profile-edit-btn img{opacity:.4;width:14px;height:14px;filter:var(--icon-filter);transition:opacity .2s}.profile-modal .profile-modal-body .profile-info-section .profile-info-item .profile-edit-btn:hover{background:var(--color-bg-tertiary)}.profile-modal .profile-modal-body .profile-info-section .profile-info-item .profile-edit-btn:hover img{opacity:.7}.project-picker-modal{flex-direction:column;gap:16px;min-width:360px;max-width:90vw;padding:20px;display:flex}.project-picker-title{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:600}.project-picker-list{flex-direction:column;gap:4px;max-height:320px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.project-picker-item{cursor:pointer;border:1px solid #0000;border-radius:6px;flex-direction:column;gap:2px;padding:10px 12px;transition:background .1s,border-color .1s;display:flex}.project-picker-item:hover{background:var(--color-hover-bg)}.project-picker-item.selected{background:var(--color-brand-soft);border-color:var(--color-brand-line)}.project-picker-name{color:var(--color-text-primary);font-size:14px}.project-picker-hint{color:var(--color-text-tertiary);font-size:12px}.project-picker-actions{justify-content:flex-end;gap:8px;display:flex}.project-picker-cancel,.project-picker-confirm{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;padding:6px 16px;font-family:inherit;font-size:13px}.project-picker-cancel:disabled,.project-picker-confirm:disabled{opacity:.5;cursor:not-allowed}.project-picker-confirm{background:var(--color-btn-primary-bg);border-color:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.project-picker-confirm:hover:not(:disabled){background:var(--color-btn-primary-bg-hover);border-color:var(--color-btn-primary-bg-hover)}.search-modal{flex-direction:column;width:720px;max-width:90vw;max-height:80vh;padding:0;display:flex}.search-modal .search-modal-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.search-modal .search-modal-header .search-modal-title{color:var(--color-text-primary);font-size:16px;font-weight:600}.search-modal .search-modal-header .search-modal-close{cursor:pointer;width:28px;height:28px;color:var(--color-text-quaternary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:20px;transition:background .2s,color .2s;display:flex}.search-modal .search-modal-header .search-modal-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.search-modal .search-modal-input-wrapper{padding:16px 24px}.search-modal .search-modal-input-wrapper .search-modal-input{border:1px solid var(--color-border-secondary);width:100%;color:var(--color-text-primary);background:var(--color-bg-primary);box-sizing:border-box;border-radius:8px;outline:none;padding:10px 14px;font-size:14px;transition:border-color .2s}.search-modal .search-modal-input-wrapper .search-modal-input::placeholder{color:var(--color-text-quaternary)}.search-modal .search-modal-input-wrapper .search-modal-input:focus{border-color:var(--color-input-focus-border)}.search-modal .search-modal-body{border-top:1px solid var(--color-border-primary);flex:1;min-height:0;display:flex}.search-modal .search-modal-list{border-right:1px solid var(--color-border-primary);flex-shrink:0;width:240px;padding:8px 0;overflow-y:auto}.search-modal .search-modal-list .search-modal-empty{text-align:center;color:var(--color-text-quaternary);padding:24px 16px;font-size:13px}.search-modal .search-modal-list .search-modal-list-item{cursor:pointer;flex-direction:column;gap:2px;padding:10px 16px;transition:background .15s;display:flex}.search-modal .search-modal-list .search-modal-list-item:hover{background:var(--color-bg-secondary)}.search-modal .search-modal-list .search-modal-list-item.active{background:var(--color-bg-tertiary)}.search-modal .search-modal-list .search-modal-list-item .search-modal-list-title{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.search-modal .search-modal-list .search-modal-list-item .search-modal-list-time{color:var(--color-text-quaternary);font-size:11px}.search-modal .search-modal-preview{flex-direction:column;flex:1;min-width:0;display:flex;overflow-y:auto}.search-modal .search-modal-preview .search-modal-preview-empty{color:var(--color-text-quaternary);flex:1;justify-content:center;align-items:center;font-size:14px;display:flex}.search-modal .search-modal-preview .search-modal-preview-messages{flex-direction:column;gap:12px;padding:16px;display:flex}.search-modal .search-modal-preview .search-modal-message{flex-direction:column;gap:4px;display:flex}.search-modal .search-modal-preview .search-modal-message .search-modal-message-role{color:var(--color-text-tertiary);font-size:11px;font-weight:600}.search-modal .search-modal-preview .search-modal-message .search-modal-message-content{color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.6}.search-modal .search-modal-preview .search-modal-message.assistant .search-modal-message-role{color:var(--color-role-assistant)}.search-modal .search-modal-footer{border-top:1px solid var(--color-border-primary);justify-content:flex-end;padding:12px 24px;display:flex}.search-modal .search-modal-footer .search-modal-open-btn{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);cursor:pointer;border:none;border-radius:8px;padding:8px 24px;font-size:14px;transition:background .2s}.search-modal .search-modal-footer .search-modal-open-btn:hover{background:var(--color-btn-primary-bg-hover)}.file-tree-panel{flex-direction:column;min-width:0;height:100%;display:flex}.file-tree-panel .file-tree-header{color:var(--color-text-quaternary);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:600;font-family:var(--font-mono-ui);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.file-tree-panel .file-tree-header .file-tree-header-actions{align-items:center;gap:2px;display:flex}.file-tree-panel .file-tree-list{flex:1;padding:0 8px 8px;overflow:hidden auto}.file-tree-panel .file-tree-list::-webkit-scrollbar{width:5px}.file-tree-panel .file-tree-list::-webkit-scrollbar-track{background:0 0}.file-tree-panel .file-tree-list::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}.file-tree-panel .file-tree-list::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}.ft-new-menu-wrapper{position:relative}.ft-new-btn{cursor:pointer;width:22px;height:22px;color:var(--color-text-tertiary);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.ft-new-btn:hover{background:var(--color-hover-bg);color:var(--color-text-primary)}.ft-new-btn.ft-refresh-btn.spinning svg{animation:.8s linear infinite ft-spin}.ft-new-btn.ft-refresh-btn:disabled{cursor:default;opacity:.6}@keyframes ft-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ft-new-dropdown{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);box-shadow:0 4px 12px var(--color-shadow);z-index:200;border-radius:8px;min-width:120px;padding:4px 0;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden}.tree-root-group{border:1px solid var(--color-border-subtle);border-radius:8px;margin-bottom:6px;overflow:hidden}.tree-folder-children{padding:2px 0}.ft-node{cursor:pointer;-webkit-user-select:none;user-select:none;height:30px;color:var(--color-text-secondary);align-items:center;gap:4px;padding-right:8px;transition:background .1s;display:flex}.ft-node:hover{background:var(--color-hover-bg)}.ft-node.active{background:var(--color-active-bg);color:var(--color-text-primary);box-shadow:inset 2px 0 0 var(--color-brand)}.ft-node .ft-chevron{color:var(--color-text-quaternary);flex-shrink:0;transition:transform .15s}.ft-node .ft-chevron.expanded{transform:rotate(90deg)}.ft-node .ft-spacer{flex-shrink:0;width:14px}.ft-node .ft-icon{flex-shrink:0}.ft-node .folder-icon{color:var(--color-text-tertiary)}.ft-node .file-icon{color:var(--color-text-quaternary)}.ft-node .file-icon.ext-ts,.ft-node .file-icon.ext-tsx{color:#3178c6}.ft-node .file-icon.ext-js,.ft-node .file-icon.ext-jsx{color:#f0db4f}.ft-node .file-icon.ext-java{color:#b07219}.ft-node .file-icon.ext-py{color:#3572a5}.ft-node .file-icon.ext-json{color:#a0a0a0}.ft-node .file-icon.ext-md{color:#519aba}.ft-node .file-icon.ext-css,.ft-node .file-icon.ext-scss{color:#563d7c}.ft-node .file-icon.ext-html{color:#e34c26}.ft-node .ft-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:15px;overflow:hidden}.ft-context-menu{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);box-shadow:0 4px 12px var(--color-shadow);z-index:1000;border-radius:8px;min-width:130px;padding:4px 0;position:fixed;overflow:hidden}.ft-ctx-item{cursor:pointer;width:100%;color:var(--color-text-secondary);text-align:left;background:0 0;border:none;padding:7px 14px;font-size:13px;transition:background .15s;display:block}.ft-ctx-item:hover{background:var(--color-bg-tertiary)}.ft-ctx-item.ft-ctx-danger{color:var(--color-danger)}.ft-ctx-item.ft-ctx-danger:hover{background:var(--color-danger-bg)}.ft-ctx-divider{background:var(--color-border-primary);height:1px;margin:4px 0}.ft-loading{color:var(--color-text-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px 0;font-size:13px;display:flex}.ft-spinner{border:2.5px solid var(--color-border-secondary);border-top-color:var(--color-text-tertiary);border-radius:50%;width:22px;height:22px;animation:.6s linear infinite spinner-rotate;display:inline-block}.history-item{cursor:pointer;width:100%;color:var(--color-text-secondary);text-align:left;box-sizing:border-box;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:8px 12px;font-size:13px;transition:background .2s;display:flex;position:relative}.history-item:hover{background:color-mix(in srgb, var(--color-hover-bg) 58%, transparent)}.history-item:hover .history-item-menu-btn{opacity:1}.history-item.active{background:color-mix(in srgb, var(--color-active-bg) 58%, transparent);color:var(--color-text-primary);box-shadow:inset 1px 0 0 color-mix(in srgb, var(--color-brand) 45%, transparent)}.history-item .history-item-title{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.history-item .history-item-menu-btn{opacity:0;cursor:pointer;color:var(--color-text-tertiary);letter-spacing:1px;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:16px;line-height:1;transition:opacity .15s,background .15s,color .15s}.history-item .history-item-menu-btn:hover{background:var(--color-border-secondary);color:var(--color-text-primary)}.history-item .history-item-pin-icon{opacity:.5;width:14px;height:14px;filter:var(--icon-filter);flex-shrink:0}.history-item .history-item-dropdown{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);box-shadow:0 4px 12px var(--color-shadow);z-index:100;transform-origin:100% 0;opacity:0;border-radius:8px;min-width:120px;padding:4px 0;transition:opacity .15s,transform .15s;position:absolute;top:calc(100% + 4px);right:8px;overflow:hidden;transform:translateY(-6px)scale(.96)}.history-item .history-item-dropdown.active{opacity:1;transform:translateY(0)scale(1)}.history-item .history-item-dropdown .dropdown-item{cursor:pointer;width:100%;color:var(--color-text-secondary);text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:8px 14px;font-size:13px;transition:background .15s;display:flex}.history-item .history-item-dropdown .dropdown-item .dropdown-item-icon{width:16px;height:16px;filter:var(--icon-filter);flex-shrink:0}.history-item .history-item-dropdown .dropdown-item .dropdown-item-icon-emoji{text-align:center;flex-shrink:0;width:16px;font-size:14px}.history-item .history-item-dropdown .dropdown-item:hover{background:var(--color-bg-tertiary)}.history-item .history-item-dropdown .dropdown-item.dropdown-item-danger{color:var(--color-danger)}.history-item .history-item-dropdown .dropdown-item.dropdown-item-danger .dropdown-item-icon{filter:none}.history-item .history-item-dropdown .dropdown-item.dropdown-item-danger:hover{background:var(--color-danger-bg)}.sidebar-user{border-top:1px solid var(--color-border-primary);min-height:60px;padding:8px;position:relative;overflow:visible}.sidebar-user .user-trigger{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px;transition:background .2s,padding .3s,gap .3s;display:flex;overflow:hidden}.sidebar-user .user-trigger:hover{background:var(--color-hover-bg)}.sidebar-user .user-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:36px;height:36px}.sidebar-user .user-avatar-default{background:var(--color-avatar-bg);color:var(--color-avatar-text);justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex}.sidebar-user .user-info{opacity:1;visibility:visible;flex-direction:column;gap:2px;min-width:0;transition:opacity .3s,visibility .3s,width .3s;display:flex;overflow:hidden}.sidebar-user .user-info .user-name{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-user .user-info .user-email{color:var(--color-text-quaternary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.sidebar-user .user-menu-dropdown{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);min-width:200px;box-shadow:0 4px 12px var(--color-shadow);z-index:200;transform-origin:bottom;opacity:0;border-radius:8px;padding:4px 0;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% - 4px);left:8px;overflow:hidden;transform:translateY(6px)scale(.96)}.sidebar-user .user-menu-dropdown.active{opacity:1;transform:translateY(0)scale(1)}.sidebar-user .user-menu-dropdown .user-menu-item{cursor:pointer;width:100%;color:var(--color-text-secondary);text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:10px 14px;font-size:13px;transition:background .15s;display:flex}.sidebar-user .user-menu-dropdown .user-menu-item .user-menu-icon{width:16px;height:16px;filter:var(--icon-filter);flex-shrink:0}.sidebar-user .user-menu-dropdown .user-menu-item:hover{background:var(--color-bg-tertiary)}.sidebar-user .user-menu-dropdown .user-menu-item.user-menu-item-danger{color:var(--color-danger)}.sidebar-user .user-menu-dropdown .user-menu-item.user-menu-item-danger .user-menu-icon{filter:none}.sidebar-user .user-menu-dropdown .user-menu-item.user-menu-item-danger:hover{background:var(--color-danger-bg)}.sidebar-user .user-menu-dropdown .user-menu-divider{background:var(--color-border-primary);height:1px;margin:4px 0}.sidebar-user .user-menu-dropdown .user-menu-theme{padding:6px 14px}.sidebar-user .user-menu-dropdown .user-menu-theme .theme-label{color:var(--color-text-quaternary);margin-bottom:6px;font-size:12px;font-weight:500}.sidebar-user .user-menu-dropdown .user-menu-theme .theme-options{gap:4px;display:flex}.sidebar-user .user-menu-dropdown .user-menu-theme .theme-options .theme-option{border:1px solid var(--color-border-primary);cursor:pointer;color:var(--color-text-tertiary);background:0 0;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:4px;padding:6px 8px;font-size:12px;transition:all .15s;display:flex}.sidebar-user .user-menu-dropdown .user-menu-theme .theme-options .theme-option svg{flex-shrink:0;width:14px;height:14px}.sidebar-user .user-menu-dropdown .user-menu-theme .theme-options .theme-option:hover{background:var(--color-bg-tertiary)}.sidebar-user .user-menu-dropdown .user-menu-theme .theme-options .theme-option.active{background:var(--color-bg-tertiary);border-color:var(--color-text-quaternary);color:var(--color-text-primary)}.sidebar{background:linear-gradient(180deg, color-mix(in srgb, var(--color-bg-primary) 92%, transparent), color-mix(in srgb, var(--color-bg-secondary) 44%, transparent));border-right:1px solid var(--color-border-subtle);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;flex-shrink:0;height:100vh;transition:width .3s;display:flex;position:relative}.sidebar.resizing{transition:none}.sidebar.collapsed .nav-label{opacity:0;visibility:hidden}.sidebar.collapsed .sidebar-header .logo-title,.sidebar.collapsed .sidebar-header .collapse-btn{opacity:0;visibility:hidden;width:0;overflow:hidden}.sidebar.collapsed .history-section{opacity:0;visibility:hidden;pointer-events:none}.sidebar .sidebar-border{cursor:col-resize;z-index:10;-webkit-user-select:none;user-select:none;width:4px;height:100%;position:absolute;top:0;right:0}.sidebar .sidebar-border:hover,.sidebar .sidebar-border:active{background:var(--color-sidebar-border-hover)}.sidebar .sidebar-header{box-sizing:border-box;justify-content:space-between;align-items:center;height:64px;padding:16px 8px;display:flex}.sidebar .sidebar-header .logo-btn{cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;height:32px;padding:0 12px;font-size:20px;display:flex}.sidebar .sidebar-header .logo-btn .logo-icon{width:28px;height:auto;filter:var(--logo-filter);flex-shrink:0;margin-left:-5px;margin-right:-5px}.sidebar .sidebar-header .logo-btn .logo-title{color:var(--color-text-primary);white-space:nowrap;font-size:16px;font-weight:600;transition:opacity .3s,visibility .3s,width .3s}.sidebar .sidebar-header .collapse-btn{cursor:pointer;width:24px;height:24px;color:var(--color-text-tertiary);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;transition:opacity .3s,visibility .3s,width .3s;display:flex;overflow:hidden}.sidebar .sidebar-header .collapse-btn img{opacity:.6;width:16px;height:16px;filter:var(--icon-filter)}.sidebar .sidebar-header .collapse-btn:hover{color:var(--color-text-primary)}.sidebar .sidebar-header .collapse-btn:hover img{opacity:1}.sidebar .sidebar-nav{flex-direction:column;gap:4px;padding:8px;display:flex}.sidebar .sidebar-nav .nav-item{cursor:pointer;width:100%;color:var(--color-text-secondary);text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:12px;padding:7px 10px;font-size:13px;transition:background .2s;display:flex}.sidebar .sidebar-nav .nav-item:hover{background:color-mix(in srgb, var(--color-hover-bg) 40%, transparent)}.sidebar .sidebar-nav .nav-item.active{background:color-mix(in srgb, var(--color-text-quaternary) 12%, var(--color-bg-primary));color:var(--color-text-primary);box-shadow:inset 2px 0 0 color-mix(in srgb, var(--color-text-tertiary) 60%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--color-text-quaternary) 20%, transparent);font-weight:500}.sidebar .sidebar-nav .nav-item .nav-icon{flex-shrink:0;width:18px;height:18px}.sidebar .sidebar-nav .nav-item .nav-icon path{fill:#0000;stroke:var(--color-nav-icon-stroke);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}.sidebar .sidebar-nav .nav-item.drawing .nav-icon path{animation:.8s forwards stroke-draw}@keyframes stroke-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.sidebar .sidebar-nav .nav-item .nav-icon.nav-icon-video path{stroke-width:80px}.sidebar .sidebar-nav .nav-item.drawing .nav-icon.nav-icon-video path{animation:1.4s forwards stroke-draw}.sidebar .sidebar-nav .nav-item .nav-label{opacity:1;visibility:visible;white-space:nowrap;flex:1;transition:opacity .3s,visibility .3s;overflow:hidden}.sidebar .sidebar-nav .nav-item .submenu-icon{color:var(--color-text-quaternary);font-size:16px}.sidebar .history-section{opacity:1;visibility:visible;flex:1;padding:0 8px;transition:opacity .3s,visibility .3s;overflow-y:auto}.sidebar .history-section .history-header{font-family:var(--font-mono-ui);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;font-size:11px;font-weight:600;transition:background .2s;display:flex}.sidebar .history-section .history-header:hover{background:color-mix(in srgb, var(--color-bg-tertiary) 52%, transparent)}.sidebar .history-section .history-header .history-chevron{width:16px;height:16px;transition:transform .3s}.sidebar .history-section .history-header .history-chevron.collapsed{transform:rotate(-90deg)}.sidebar .history-section .history-group-header{font-family:var(--font-mono-ui);color:var(--color-text-quaternary);padding:6px 12px;font-size:11px;font-weight:600}.sidebar .history-section .history-list{flex-direction:column;gap:2px;display:flex}.sidebar .expand-btn{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;margin:0 auto 4px;transition:background .2s;display:flex}.sidebar .expand-btn img{opacity:.6;width:16px;height:16px;filter:var(--icon-filter);transition:opacity .15s;transform:scaleX(-1)}.sidebar .expand-btn:hover{background:color-mix(in srgb, var(--color-hover-bg) 58%, transparent)}.sidebar .expand-btn:hover img{opacity:1}.sidebar.collapsed .sidebar-user .user-trigger{gap:0;padding:8px 4px}.sidebar.collapsed .sidebar-user .user-info{opacity:0;visibility:hidden;width:0;overflow:hidden}.react-flow{--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:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--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:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--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:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--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 #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.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:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--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:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--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:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--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 #00000014;--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{width:100%;height:100%;position:absolute;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{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.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;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:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.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:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;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%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;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{z-index:5;margin:15px;position:absolute}.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{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.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{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.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{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;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));padding:10px;font-size:12px}.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{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.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-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.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))}.conversation-tree{--tree-role-user:#4a9eff;--tree-role-assistant:#52c41a}[data-theme=dark] .conversation-tree{--tree-role-user:#6cb3ff;--tree-role-assistant:#73d13d}.conversation-tree{width:100%;height:100%;min-height:400px}.conversation-tree .react-flow__background{background:var(--color-bg-primary)}.conversation-tree .react-flow__pane{cursor:grab}.conversation-tree .react-flow__pane:active{cursor:grabbing}.conversation-tree .react-flow__controls{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);box-shadow:none;border-radius:8px}.conversation-tree .react-flow__controls .react-flow__controls-button{border-bottom:1px solid var(--color-border-subtle);fill:var(--color-text-secondary);color:var(--color-text-secondary);background:0 0}.conversation-tree .react-flow__controls .react-flow__controls-button:hover{background:var(--color-hover-bg)}.conversation-tree .react-flow__controls .react-flow__controls-button:last-child{border-bottom:none}.conversation-tree .react-flow__controls .react-flow__controls-button svg{fill:inherit}.conversation-tree-empty{height:100%;color:var(--color-text-quaternary);justify-content:center;align-items:center;font-size:14px;display:flex}.tree-node{border:1px solid var(--color-border-primary);border-radius:10px;width:260px;padding:8px 12px;font-size:12px;line-height:1.4;transition:box-shadow .15s}.tree-node--user{background:var(--color-bg-tertiary);border-left:3px solid var(--tree-role-user)}.tree-node--assistant{background:var(--color-bg-tertiary);border-left:3px solid var(--tree-role-assistant)}.tree-node .tree-node-role{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-tertiary);margin-bottom:4px;font-size:10px;font-weight:600}.tree-node .tree-node-content{color:var(--color-text-primary);word-break:break-word;white-space:pre-wrap}.tree-node .tree-node-content p,.tree-node .tree-node-content ul,.tree-node .tree-node-content ol,.tree-node .tree-node-content blockquote,.tree-node .tree-node-content pre,.tree-node .tree-node-content table,.tree-node .tree-node-content h1,.tree-node .tree-node-content h2,.tree-node .tree-node-content h3,.tree-node .tree-node-content h4,.tree-node .tree-node-content h5,.tree-node .tree-node-content h6{white-space:normal;margin:0}.tree-node .tree-node-content p+p{margin-top:4px}.tree-node .tree-node-content code{background:var(--color-bg-secondary);border-radius:3px;padding:1px 4px;font-size:11px}.tree-node .tree-node-content pre{background:var(--color-bg-secondary);border-radius:4px;margin:4px 0;padding:6px 8px;overflow-x:auto}.tree-node .tree-node-content pre code{background:0 0;padding:0}.tree-node .tree-node-content ul,.tree-node .tree-node-content ol{margin:2px 0;padding-left:16px}.tree-node .tree-node-content blockquote{border-left:2px solid var(--color-border-primary);color:var(--color-text-secondary);margin:4px 0;padding-left:8px}.tree-node .tree-node-content table{border-collapse:collapse;margin:4px 0;font-size:11px}.tree-node .tree-node-content table th,.tree-node .tree-node-content table td{border:1px solid var(--color-border-primary);padding:2px 6px}.tree-node .tree-node-content strong{font-weight:600}.tree-handle{background:var(--color-text-quaternary)!important;border:none!important;width:6px!important;min-width:6px!important;height:6px!important;min-height:6px!important}.side-panel{flex-shrink:0;width:0;min-width:0;height:100vh;transition:width .3s,min-width .3s;position:relative;overflow:hidden}.side-panel.resizing{transition:none}.side-panel .side-panel-resize-border{cursor:col-resize;z-index:10;-webkit-user-select:none;user-select:none;width:4px;height:100%;position:absolute;top:0;left:0}.side-panel .side-panel-resize-border:hover,.side-panel .side-panel-resize-border:active{background:var(--color-sidebar-border-hover)}.side-panel .side-panel-inner{background:color-mix(in srgb, var(--color-bg-primary) 84%, transparent);border-left:1px solid var(--color-border-subtle);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;height:100%;display:flex}.side-panel .side-panel-header{box-sizing:border-box;border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;height:64px;padding:16px 20px;display:flex}.side-panel .side-panel-body{flex:1;padding:24px 20px;overflow-y:auto}.side-panel .side-panel-body.no-padding{padding:0;overflow:hidden}.side-panel .side-panel-body::-webkit-scrollbar{width:6px}.side-panel .side-panel-body::-webkit-scrollbar-track{background:0 0}.side-panel .side-panel-body::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}.side-panel .side-panel-body::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}.side-panel .side-panel-preview{flex-direction:column;align-items:center;gap:12px;display:flex}.side-panel .side-panel-preview .preview-image{object-fit:contain;border-radius:8px;width:100%}.side-panel .side-panel-preview .preview-name{color:var(--color-text-tertiary);word-break:break-all;margin:0;font-size:13px}.side-panel .side-panel-placeholder{height:100%;color:var(--color-text-quaternary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.side-panel .side-panel-placeholder p{margin:0;font-size:15px}.side-panel .side-panel-placeholder .hint{color:var(--color-text-hint);font-size:13px}.side-panel-title{font-family:var(--font-mono-ui);color:var(--color-text-primary);font-size:16px;font-weight:600}.side-panel-header-actions{align-items:center;gap:4px;display:flex}.side-panel-action-btn{cursor:pointer;width:32px;height:32px;color:var(--color-text-tertiary);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:16px;transition:all .15s;display:flex}.side-panel-action-btn:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.side-panel-fullscreen{z-index:1000;background:var(--color-bg-primary);flex-direction:column;display:flex;position:fixed;inset:0}.side-panel-fullscreen .side-panel-fullscreen-header{box-sizing:border-box;border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;height:64px;padding:16px 24px;display:flex}.side-panel-fullscreen .side-panel-fullscreen-body{flex:1;overflow:hidden}.input-box-container{width:100%;max-width:800px;padding:0 24px 24px}.input-box-container .image-preview-bar{gap:8px;margin-bottom:8px;padding:8px 12px;display:flex;overflow-x:auto}.input-box-container .image-preview-bar .image-preview-item{border:1px solid var(--color-border-primary);border-radius:8px;flex-shrink:0;width:64px;height:64px;position:relative;overflow:hidden}.input-box-container .image-preview-bar .image-preview-item .preview-thumb{object-fit:cover;width:100%;height:100%}.input-box-container .image-preview-bar .image-preview-item .upload-overlay{background:var(--color-progress-overlay);color:var(--color-spinner-on-dark);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.input-box-container .image-preview-bar .image-preview-item .upload-overlay .upload-spinner{border:2px solid color-mix(in srgb, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin}.input-box-container .image-preview-bar .image-preview-item .remove-btn{background:var(--color-media-overlay);width:18px;height:18px;color:var(--color-spinner-on-dark);cursor:pointer;opacity:0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:12px;line-height:1;transition:opacity .15s;display:flex;position:absolute;top:2px;right:2px}.input-box-container .image-preview-bar .image-preview-item:hover .remove-btn{opacity:1}.input-box-container .input-box{background:color-mix(in srgb, var(--color-bg-primary) 86%, transparent);border:1px solid var(--color-border-primary);box-shadow:0 8px 28px var(--color-shadow-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;align-items:center;gap:12px;padding:10px;transition:all .2s;display:flex}.input-box-container .input-box:focus-within{background:var(--color-bg-primary);border-color:var(--color-input-focus-border);box-shadow:0 0 0 3px var(--color-input-focus-ring)}.input-box-container .input-box .attach-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;transition:background .2s;display:flex}.input-box-container .input-box .attach-btn img{width:16px;height:auto;filter:var(--icon-filter)}.input-box-container .input-box .attach-btn:hover{background:var(--color-hover-bg)}.input-box-container .input-box .attach-btn:disabled{opacity:.5;cursor:not-allowed}.input-box-container .input-box .message-input{color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;font-size:15px}.input-box-container .input-box .message-input::placeholder{color:var(--color-text-quaternary)}.input-box-container .input-box .send-btn{background:var(--color-send-btn-bg);cursor:pointer;opacity:0;pointer-events:none;border:none;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;transition:opacity .2s,transform .2s,background .2s;display:flex;transform:scale(.6)}.input-box-container .input-box .send-btn--visible{opacity:1;pointer-events:auto;transform:scale(1)}.input-box-container .input-box .send-btn:hover{background:var(--color-send-btn-hover)}.input-box-container .input-box .send-btn:active{transform:scale(.92)}@keyframes spin{to{transform:rotate(360deg)}}.chat-main{background:0 0;flex-direction:column;flex:1;min-width:0;height:100vh;transition:flex .3s;display:flex}.chat-main .chat-header{box-sizing:border-box;justify-content:flex-end;align-items:center;gap:12px;height:64px;padding:16px 24px;display:flex}.chat-main .chat-header .header-btn{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);cursor:pointer;color:var(--color-text-secondary);border-radius:20px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;transition:all .2s;display:flex}.chat-main .chat-header .header-btn:hover{background:var(--color-bg-secondary);border-color:var(--color-border-secondary)}.chat-main .chat-header .header-btn span:first-child{font-size:16px}.chat-main .chat-content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:30px;padding:40px 24px;display:flex;overflow-y:auto}.chat-main .chat-content .welcome-section{flex-direction:row;justify-content:center;align-items:center;gap:14px;display:flex;position:relative}.chat-main .chat-content .welcome-section:before{content:"Chorify · Digital CGO";color:var(--color-text-quaternary);font-family:var(--font-mono-ui);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:11px;position:absolute;top:-28px;left:50%;transform:translate(-50%)}.chat-main .chat-content .welcome-section .logo-icon{object-fit:contain;width:64px;height:64px;filter:var(--logo-filter)}.chat-main .chat-content .welcome-section .welcome-title{color:var(--color-text-primary);letter-spacing:-.04em;font-size:clamp(34px,5vw,52px);font-weight:500}pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}.branch-navigator{-webkit-user-select:none;user-select:none;align-items:center;gap:2px;display:inline-flex}.branch-navigator .branch-nav-btn{width:22px;height:22px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.branch-navigator .branch-nav-btn:hover:not(:disabled){background:var(--color-hover-bg);color:var(--color-text-primary)}.branch-navigator .branch-nav-btn:disabled{opacity:.3;cursor:default}.branch-navigator .branch-nav-label{color:var(--color-text-tertiary);text-align:center;min-width:32px;font-size:12px;line-height:1}.chat-box{background:color-mix(in srgb, var(--color-bg-primary) 52%, transparent);border:1px solid var(--color-border-subtle);min-width:0;height:100vh;box-shadow:0 12px 42px var(--color-shadow-subtle);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:14px;flex-direction:column;flex:1;transition:flex .3s;display:flex;overflow:hidden}.chat-box .chat-header{box-sizing:border-box;justify-content:flex-end;align-items:center;gap:12px;height:64px;padding:16px 24px;display:flex}.chat-box .chat-header .header-btn{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);cursor:pointer;color:var(--color-text-secondary);border-radius:7px;align-items:center;gap:6px;padding:7px 14px;font-size:14px;transition:all .2s;display:flex}.chat-box .chat-header .header-btn:hover{background:var(--color-bg-secondary);border-color:var(--color-border-secondary)}.chat-box .chat-header .header-btn span:first-child{font-size:16px}.chat-box .chat-header .header-btn img{filter:var(--icon-filter)}.chat-box .chat-box-messages{flex-direction:column;flex:1;gap:4px;padding:32px 0 60px;display:flex;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000 0%,#000 48px calc(100% - 48px),#0000 100%);mask-image:linear-gradient(#0000 0%,#000 48px calc(100% - 48px),#0000 100%)}.chat-box .chat-box-messages::-webkit-scrollbar{width:6px}.chat-box .chat-box-messages::-webkit-scrollbar-track{background:0 0}.chat-box .chat-box-messages::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}.chat-box .chat-box-messages::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}.chat-box .chat-box-messages .message-wrapper{flex-direction:column;width:100%;max-width:800px;margin:0 auto;padding:2px 24px;display:flex}.chat-box .chat-box-messages .message-wrapper.user{align-items:flex-end}.chat-box .chat-box-messages .message-wrapper.assistant{align-items:flex-start}.chat-box .chat-box-messages .message-wrapper .message-footer{align-items:center;gap:8px;min-height:24px;margin-top:4px;display:flex}.chat-box .chat-box-messages .message-wrapper .message-toolbar{gap:4px;display:flex}.chat-box .chat-box-messages .message-wrapper .message-toolbar .toolbar-btn{cursor:pointer;width:28px;height:28px;color:var(--color-text-tertiary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.chat-box .chat-box-messages .message-wrapper .message-toolbar .toolbar-btn:hover{background:var(--color-hover-bg);color:var(--color-text-primary)}.chat-box .chat-box-messages .message-wrapper .message-toolbar .toolbar-btn img{opacity:.5;width:16px;height:16px;filter:var(--icon-filter);transition:opacity .15s,filter .15s}.chat-box .chat-box-messages .message-wrapper .message-toolbar .toolbar-btn:hover img{opacity:.8}.chat-box .chat-box-messages .message-wrapper .message-toolbar .toolbar-btn.active-like img{opacity:1;filter:brightness(0)saturate()invert(52%)sepia(81%)saturate(506%)hue-rotate(88deg)brightness(96%)contrast(92%)}.chat-box .chat-box-messages .message-wrapper .message-toolbar .toolbar-btn.active-dislike img{opacity:1;filter:brightness(0)saturate()invert(27%)sepia(91%)saturate(4145%)hue-rotate(349deg)brightness(91%)contrast(95%)}.chat-box .chat-box-messages .message-wrapper .message-bubble{word-break:break-word;max-width:70%;padding:12px 16px;font-size:15px;line-height:1.6}.chat-box .chat-box-messages .message-wrapper .message-bubble.user{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-subtle);white-space:pre-wrap;border-radius:12px 12px 4px}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant{background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border-subtle);border-radius:12px 12px 12px 4px;max-width:70%;padding:12px 16px}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant p{margin:.4em 0}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant p:first-child{margin-top:0}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant p:last-child{margin-bottom:0}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h1,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h2,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h3,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h4,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h5,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h6{margin:.6em 0 .3em}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h1:first-child,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h2:first-child,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h3:first-child,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h4:first-child,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h5:first-child,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant h6:first-child{margin-top:0}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant ul,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant ol{margin:.4em 0;padding-left:1.5em}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant pre{background:var(--color-code-bg);color:var(--color-code-text);border-radius:8px;margin:.5em 0;font-size:15px;line-height:1.5;overflow-x:auto}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant code{font-family:SF Mono,Fira Code,Fira Mono,Menlo,monospace;font-size:1em}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant :not(pre)>code{background:var(--color-inline-code-bg);border-radius:4px;padding:2px 5px}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant blockquote{border-left:3px solid var(--color-border-secondary);color:var(--color-text-tertiary);margin:.5em 0;padding:.2em .8em}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant table{border-collapse:collapse;margin:.5em 0}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant table th,.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant table td{border:1px solid var(--color-border-secondary);padding:6px 12px}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant table th{background:var(--color-hover-bg)}.chat-box .chat-box-messages .message-wrapper .message-bubble.assistant a{color:var(--color-link);text-decoration:underline}.chat-box .chat-box-messages .message-wrapper .message-bubble .thinking-indicator{align-items:center;padding:4px 0;display:flex}.chat-box .chat-box-messages .message-wrapper .message-bubble .thinking-indicator .ant-spin-dot-item{background-color:var(--color-text-primary)}.chat-box .chat-box-messages .message-wrapper .message-bubble .tool-trace-panel{border:1px solid var(--color-border-subtle);background:var(--color-bg-secondary);color:var(--color-text-tertiary);border-radius:12px;margin-bottom:10px;padding:0;font-size:13px;line-height:1.5;overflow:hidden}.chat-box .chat-box-messages .message-wrapper .message-bubble .tool-trace-summary{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;display:flex}.chat-box .chat-box-messages .message-wrapper .message-bubble .tool-trace-summary:hover{background:var(--color-hover-bg)}.chat-box .chat-box-messages .message-wrapper .message-bubble .tool-trace-summary-main{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.chat-box .chat-box-messages .message-wrapper .message-bubble .tool-trace-toggle{color:var(--color-text-secondary);flex:none;font-size:12px;font-weight:600}.chat-box .chat-box-messages .message-wrapper .message-bubble .tool-trace-list{border-top:1px solid var(--color-border-subtle);padding:0 12px 10px}.chat-box .chat-box-messages .message-wrapper .message-bubble .tool-trace-item{white-space:pre-wrap;margin-top:8px;padding-left:14px;position:relative}.chat-box .chat-box-messages .message-wrapper .message-bubble .tool-trace-item:before{content:"";background:var(--color-text-quaternary);border-radius:50%;width:5px;height:5px;position:absolute;top:.72em;left:2px}.chat-box .chat-box-messages .message-wrapper .message-bubble .tool-trace-item+.tool-trace-item{margin-top:4px}.chat-box .chat-box-messages .message-wrapper .message-bubble .message-images{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.chat-box .chat-box-messages .message-wrapper .message-bubble .message-images .message-image{object-fit:cover;cursor:pointer;border-radius:8px;max-width:200px;max-height:200px;transition:opacity .15s}.chat-box .chat-box-messages .message-wrapper .message-bubble .message-images .message-image:hover{opacity:.85}.chat-box .chat-box-messages .message-wrapper .message-bubble .edit-message-container{min-width:300px}.chat-box .chat-box-input{border-top:1px solid var(--color-border-subtle);justify-content:center;padding-top:8px;display:flex;position:relative}.chat-box .chat-box-input .stop-generation-btn{border:1px solid var(--color-border-secondary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;box-shadow:0 4px 12px var(--color-shadow-subtle);border-radius:999px;padding:8px 18px;font-size:13px;transition:all .15s;position:absolute;top:-44px;left:50%;transform:translate(-50%)}.chat-box .chat-box-input .stop-generation-btn:hover{border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-bg)}.edit-input{flex-direction:column;gap:8px;display:flex}.edit-input .edit-textarea{border:1px solid var(--color-border-secondary);background:var(--color-bg-primary);width:100%;min-height:40px;color:var(--color-text-primary);resize:vertical;border-radius:8px;outline:none;padding:8px 12px;font-family:inherit;font-size:14px;line-height:1.5}.edit-input .edit-textarea:focus{border-color:var(--color-link)}.edit-input .edit-actions{justify-content:flex-end;gap:8px;display:flex}.edit-input .edit-actions button{cursor:pointer;border-radius:6px;padding:4px 14px;font-size:13px;transition:all .15s}.edit-input .edit-actions .edit-cancel-btn{border:1px solid var(--color-border-primary);color:var(--color-text-secondary);background:0 0}.edit-input .edit-actions .edit-cancel-btn:hover{background:var(--color-hover-bg)}.edit-input .edit-actions .edit-submit-btn{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border:none}.edit-input .edit-actions .edit-submit-btn:hover{opacity:.9}.edit-input .edit-actions .edit-submit-btn:disabled{opacity:.5;cursor:default}.material-viewer{background:color-mix(in srgb, var(--color-bg-primary) 48%, transparent);flex-direction:column;flex:1;min-width:0;height:100vh;display:flex;overflow:hidden}.material-tab-bar{background:color-mix(in srgb, var(--color-bg-primary) 86%, transparent);border-bottom:1px solid var(--color-border-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-shrink:0;align-items:center;height:40px;display:flex}.material-tabs{flex:1;min-width:0;display:flex;overflow-x:auto}.material-tabs::-webkit-scrollbar{height:6px}.material-tabs::-webkit-scrollbar-track{background:0 0}.material-tabs::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}.material-tabs::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}.material-tab{height:40px;color:var(--color-text-tertiary);border-right:1px solid var(--color-border-subtle);cursor:pointer;white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;padding:0 14px;font-size:13px;transition:color .15s,background .15s;display:flex;position:relative}.material-tab:hover{color:var(--color-text-secondary);background:var(--color-bg-tertiary)}.material-tab:hover .material-tab-close{opacity:1}.material-tab.active{color:var(--color-text-primary);background:var(--color-bg-secondary)}.material-tab.active:after{content:"";background:var(--color-brand);height:2px;position:absolute;bottom:0;left:0;right:0}.material-tab.active .material-tab-close{opacity:.6}.material-tab-dirty{background:var(--color-text-quaternary);border-radius:50%;flex-shrink:0;width:8px;height:8px}.material-tab-name{text-overflow:ellipsis;overflow:hidden}.material-tab-close{cursor:pointer;width:18px;height:18px;color:var(--color-text-quaternary);opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .1s,background .1s,color .1s;display:flex}.material-tab-close:hover{background:var(--color-hover-bg);color:var(--color-text-primary);opacity:1!important}.material-tab-actions{flex-shrink:0;align-items:center;padding:0 8px;display:flex}.material-action-btn{cursor:pointer;width:28px;height:28px;color:var(--color-text-tertiary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.material-action-btn:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.material-tab-pin{color:currentColor;flex-shrink:0}.tab-context-menu{z-index:1000;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);min-width:140px;box-shadow:0 4px 16px var(--color-shadow);border-radius:8px;padding:4px 0;position:fixed}.tab-context-item{color:var(--color-text-secondary);cursor:pointer;padding:6px 14px;font-size:13px;transition:background .1s,color .1s}.tab-context-item:hover{background:var(--color-hover-bg);color:var(--color-text-primary)}.tab-context-divider{background:var(--color-border-subtle);height:1px;margin:4px 0}.material-code-area{flex:1;display:flex;overflow:auto}.material-code-area::-webkit-scrollbar{width:8px;height:8px}.material-code-area::-webkit-scrollbar-track{background:0 0}.material-code-area::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:4px}.material-code-area::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}.material-line-numbers{text-align:right;color:var(--color-text-hint);-webkit-user-select:none;user-select:none;background:var(--color-bg-tertiary);border-right:1px solid var(--color-border-subtle);z-index:1;flex-shrink:0;padding:12px 0;font-family:Cascadia Code,Fira Code,JetBrains Mono,Consolas,monospace;font-size:13px;line-height:1.6;position:sticky;left:0}.material-line-numbers .line-number{min-width:48px;padding:0 12px 0 16px}.material-code-content{flex:1;min-width:0;padding:12px 0;overflow-x:auto}.material-code-content pre{margin:0;background:0 0!important;padding:0!important}.material-code-content code{font-family:Cascadia Code,Fira Code,JetBrains Mono,Consolas,monospace;font-size:13px;line-height:1.6;display:block;background:0 0!important;padding:0 16px!important}.material-media-area{flex:1;justify-content:center;align-items:center;padding:24px;display:flex;overflow:auto}.material-media-area img{object-fit:contain;max-width:100%;max-height:100%;box-shadow:0 2px 12px var(--color-shadow-subtle);border-radius:6px}.material-media-area video{max-width:100%;max-height:100%;box-shadow:0 2px 12px var(--color-shadow-subtle);border-radius:6px}.material-media-area.material-audio-area{color:var(--color-text-hint);flex-direction:column;gap:20px}.material-media-area.material-audio-area svg{opacity:.4}.material-media-area.material-audio-area audio{width:360px;max-width:100%}.material-media-name{color:var(--color-text-secondary);margin:0;font-size:14px}.material-pdf-area{flex:1;display:flex;overflow:hidden}.material-pdf-area iframe{border:none;width:100%;height:100%}.material-docx-area{background:var(--color-bg-secondary);flex:1;overflow:auto}.material-docx-area::-webkit-scrollbar{width:8px;height:8px}.material-docx-area::-webkit-scrollbar-track{background:0 0}.material-docx-area::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:4px}.material-docx-area::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}.material-download-btn{color:var(--color-link);border:1px solid var(--color-link);border-radius:6px;align-items:center;padding:8px 20px;font-size:14px;text-decoration:none;transition:all .15s;display:inline-flex}.material-download-btn:hover{background:var(--color-link);color:var(--color-spinner-on-dark)}.material-editor-toolbar{z-index:10;gap:6px;display:flex;position:absolute;top:12px;right:16px}.material-save-btn{--save-success:#52c41a}[data-theme=dark] .material-save-btn{--save-success:#73d13d}.material-save-btn{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);cursor:pointer;height:32px;color:var(--color-text-tertiary);box-shadow:0 1px 4px var(--color-shadow-subtle);border-radius:6px;align-items:center;gap:6px;padding:0 12px;transition:all .15s;display:flex}.material-save-btn:hover{color:var(--color-text-primary);border-color:var(--color-border-secondary);box-shadow:0 2px 8px var(--color-shadow)}.material-save-btn.saved{color:var(--save-success);border-color:var(--save-success)}.material-save-btn:disabled{cursor:not-allowed;opacity:.6}.material-save-text{font-size:13px}.material-save-spinner{border:2px solid var(--color-border-secondary);border-top-color:var(--color-text-tertiary);border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spinner-rotate;display:inline-block}.material-code-editor{flex:1;display:flex;position:relative;overflow:hidden}.material-code-editor .material-line-numbers{overflow:hidden}.material-code-textarea{resize:none;color:var(--color-text-primary);tab-size:2;white-space:pre;background:0 0;border:none;outline:none;flex:1;padding:12px 16px;font-family:Cascadia Code,Fira Code,JetBrains Mono,Consolas,monospace;font-size:13px;line-height:1.6;overflow:auto}.material-code-textarea::-webkit-scrollbar{width:8px;height:8px}.material-code-textarea::-webkit-scrollbar-track{background:0 0}.material-code-textarea::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:4px}.material-code-textarea::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}.material-markdown-editor{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.material-markdown-container{flex-direction:column;flex:1;min-height:0;display:flex}.material-markdown-container .vditor{--textarea-background-color:var(--color-bg-page);--textarea-text-color:var(--color-text-primary);--border-color:var(--color-border-primary);--panel-background-color:var(--color-bg-page);--toolbar-background-color:var(--color-bg-page);flex:1;background:var(--color-bg-page)!important;border:none!important;border-radius:0!important}.material-markdown-container .vditor-toolbar{display:none!important}.material-markdown-container .vditor-content{background:var(--color-bg-page)!important}.material-markdown-container .vditor-wysiwyg{padding:24px 32px!important}.material-markdown-container .vditor-reset{color:var(--color-text-primary)!important;background:var(--color-bg-page)!important}.material-markdown-container .vditor-wysiwyg pre.vditor-reset:focus{background-color:var(--color-bg-page)!important}.close-confirm-overlay{z-index:2000;background:var(--color-overlay);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.close-confirm-dialog{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);min-width:340px;max-width:420px;box-shadow:0 8px 32px var(--color-shadow-strong);border-radius:10px;padding:24px}.close-confirm-message{color:var(--color-text-primary);margin:0 0 20px;font-size:14px;line-height:1.6}.close-confirm-message strong{color:var(--color-text-primary)}.close-confirm-actions{justify-content:flex-end;gap:8px;display:flex}.close-confirm-btn{cursor:pointer;border:1px solid var(--color-border-primary);border-radius:6px;padding:6px 16px;font-size:13px;transition:all .15s}.close-confirm-btn.cancel{color:var(--color-text-secondary);background:0 0}.close-confirm-btn.cancel:hover{background:var(--color-bg-tertiary)}.close-confirm-btn.discard{color:var(--color-text-secondary);border-color:var(--color-border-secondary);background:0 0}.close-confirm-btn.discard:hover{background:var(--color-bg-tertiary)}.close-confirm-btn.save{background:var(--color-link);color:var(--color-spinner-on-dark);border-color:var(--color-link);justify-content:center;align-items:center;min-width:64px;display:inline-flex}.close-confirm-btn.save:hover:not(:disabled){filter:brightness(1.1)}.close-confirm-btn:disabled{opacity:.6;cursor:not-allowed}.close-confirm-spinner{border:2px solid color-mix(in srgb, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spinner-rotate;display:inline-block}.material-empty{color:var(--color-text-hint);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.material-empty svg{opacity:.5}.material-empty p{margin:0;font-size:15px}.material-spinner{border:3px solid var(--color-border-secondary);border-top-color:var(--color-text-tertiary);border-radius:50%;width:28px;height:28px;animation:.6s linear infinite spinner-rotate;display:inline-block}.vditor{--border-color:#d1d5da;--second-color:#5860695c;--panel-background-color:#fff;--panel-shadow:0 1px 2px #0003;--toolbar-background-color:#f6f8fa;--toolbar-icon-color:#586069;--toolbar-icon-hover-color:#4285f4;--toolbar-height:35px;--toolbar-divider-margin-top:8px;--textarea-background-color:#fafbfc;--textarea-text-color:#24292e;--resize-icon-color:var(--toolbar-icon-color);--resize-background-color:var(--toolbar-background-color);--resize-hover-icon-color:var(--panel-background-color);--resize-hover-background-color:var(--toolbar-icon-hover-color);--count-background-color:#1b1f230d;--heading-border-color:#eaecef;--blockquote-color:#6a737d;--ir-heading-color:#660e7a;--ir-title-color:gray;--ir-bi-color:#0033b3;--ir-link-color:green;--ir-bracket-color:#00f;--ir-paren-color:green}.vditor--dark{--border-color:#141414;--second-color:#b9b9b95c;--panel-background-color:#24292e;--panel-shadow:0 1px 2px #fff3;--toolbar-background-color:#1d2125;--toolbar-icon-color:#b9b9b9;--toolbar-icon-hover-color:#fff;--textarea-background-color:#2f363d;--textarea-text-color:#d1d5da;--resize-icon-color:var(--border-color);--resize-background-color:var(--second-color);--resize-hover-icon-color:var(--toolbar-icon-hover-color);--resize-hover-background-color:#b9b9b9db;--count-background-color:#4285f45c;--heading-border-color:var(--textarea-text-color);--blockquote-color:var(--toolbar-icon-color);--ir-heading-color:#9876aa;--ir-title-color:gray;--ir-bi-color:#cc7832;--ir-link-color:#ffc66d;--ir-bracket-color:#287bde;--ir-paren-color:#6a8759}@keyframes tooltip-appear{0%{opacity:0}to{opacity:1}}.vditor-tooltipped{cursor:pointer;position:relative}.vditor-tooltipped:after{z-index:1000000;-webkit-font-smoothing:subpixel-antialiased;color:#fff;text-align:center;text-shadow:none;text-transform:none;letter-spacing:normal;word-wrap:break-word;white-space:pre;pointer-events:none;content:attr(aria-label);opacity:0;background:#3b3e43;border-radius:3px;padding:5px 8px;font-size:11px;font-weight:400;line-height:16px;text-decoration:none;display:none;position:absolute}.vditor-tooltipped:before{z-index:1000001;color:#3b3e43;pointer-events:none;content:"";opacity:0;border:5px solid #0000;width:0;height:0;display:none;position:absolute}.vditor-tooltipped--hover:before,.vditor-tooltipped--hover:after,.vditor-tooltipped:hover:before,.vditor-tooltipped:hover:after,.vditor-tooltipped:active:before,.vditor-tooltipped:active:after,.vditor-tooltipped:focus:before,.vditor-tooltipped:focus:after{text-decoration:none;animation-name:tooltip-appear;animation-duration:.15s;animation-timing-function:ease-in;animation-fill-mode:forwards;display:inline-block}.vditor-tooltipped__s:after,.vditor-tooltipped__se:after,.vditor-tooltipped__sw:after{margin-top:5px;top:100%;right:50%}.vditor-tooltipped__s:before,.vditor-tooltipped__se:before,.vditor-tooltipped__sw:before{border-bottom-color:#3b3e43;margin-right:-5px;top:auto;bottom:-5px;right:50%}.vditor-tooltipped__se:after{margin-left:-15px;left:50%;right:auto}.vditor-tooltipped__sw:after{margin-right:-15px}.vditor-tooltipped__n:after,.vditor-tooltipped__ne:after,.vditor-tooltipped__nw:after{margin-bottom:5px;bottom:100%;right:50%}.vditor-tooltipped__n:before,.vditor-tooltipped__ne:before,.vditor-tooltipped__nw:before{border-top-color:#3b3e43;margin-right:-5px;top:-5px;bottom:auto;right:50%}.vditor-tooltipped__ne:after{margin-left:-15px;left:50%;right:auto}.vditor-tooltipped__nw:after{margin-right:-15px}.vditor-tooltipped__s:after,.vditor-tooltipped__n:after{transform:translate(50%)}.vditor-tooltipped__w:after{margin-right:5px;bottom:50%;right:100%;transform:translateY(50%)}.vditor-tooltipped__w:before{border-left-color:#3b3e43;margin-top:-5px;top:50%;bottom:50%;left:-5px}.vditor-tooltipped__e:after{margin-left:5px;bottom:50%;left:100%;transform:translateY(50%)}.vditor-tooltipped__e:before{border-right-color:#3b3e43;margin-top:-5px;top:50%;bottom:50%;right:-5px}@media screen and (width<=520px){.vditor-tooltipped:before,.vditor-tooltipped:after{content:none}}@keyframes scale-in{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.vditor-panel{background-color:var(--panel-background-color);box-shadow:var(--panel-shadow);z-index:3;-webkit-user-select:none;user-select:none;min-width:80px;max-width:320px;color:var(--toolbar-icon-color);border-radius:3px;padding:5px;font-size:14px;animation-name:scale-in;animation-duration:.15s;animation-timing-function:cubic-bezier(.2,0,.13,1.5);display:none;position:absolute}.vditor-panel--none{white-space:nowrap;opacity:.86;min-width:auto;max-width:none;padding:0;animation:none}.vditor-panel--arrow:before{pointer-events:none;content:" ";border:7px solid #0000;border-bottom-color:var(--panel-background-color);width:0;height:0;position:absolute;top:-14px;left:5px}.vditor-panel--left{right:0}.vditor-panel--left.vditor-panel--arrow:before{left:auto;right:5px}.vditor-input{background-color:var(--panel-background-color);color:var(--textarea-text-color);border:0;padding:3px 5px;font-size:12px}.vditor-input:focus{background-color:var(--toolbar-background-color);outline:none}.vditor-icon{color:var(--toolbar-icon-color);cursor:pointer;float:left;box-sizing:border-box;background-color:#0000;border:0;width:23px;height:21px;padding:4px 5px}.vditor-icon:hover,.vditor-icon--current{color:var(--toolbar-icon-hover-color);background-color:#0000}.vditor-icon:focus{outline:none}.vditor-icon svg{float:left;fill:currentColor;pointer-events:none;width:13px!important;height:13px!important}.vditor-toolbar{background-color:var(--toolbar-background-color);border-bottom:1px solid var(--border-color);padding:0 5px;line-height:1}.vditor-toolbar--pin{z-index:1;position:sticky;top:0}.vditor-toolbar--hide{height:5px;transition:all .15s ease-in-out;overflow:hidden}.vditor-toolbar--hide:hover{background-color:var(--toolbar-background-color);height:auto;overflow:visible}.vditor-toolbar__item{float:left;position:relative}.vditor-toolbar__item .vditor-tooltipped{color:var(--toolbar-icon-color);height:var(--toolbar-height);box-sizing:border-box;background-color:#0000;border:0;width:25px;padding:10px 5px;font-size:0}.vditor-toolbar__item .vditor-tooltipped:focus{cursor:pointer;color:var(--toolbar-icon-hover-color);outline:none}.vditor-toolbar__item svg{fill:currentColor;stroke-width:0;stroke:currentColor;width:15px;height:15px;display:inline-block}.vditor-toolbar__item input{width:25px;height:var(--toolbar-height);cursor:pointer;opacity:.001;position:absolute;top:0;left:0;overflow:hidden}.vditor-toolbar__divider{float:left;height:calc(var(--toolbar-height) - (var(--toolbar-divider-margin-top) * 2));border-left:1px solid var(--second-color);margin:var(--toolbar-divider-margin-top) 8px}.vditor-toolbar__br{width:100%;height:0!important;padding:0!important}.vditor-menu--current{color:var(--toolbar-icon-hover-color)!important}.vditor-menu--disabled{color:var(--second-color)!important;cursor:not-allowed!important}.vditor-emojis{display:inline-block;overflow:auto}.vditor-emojis::-webkit-scrollbar{display:none}.vditor-emojis__tip{width:200px;min-width:1px;color:var(--toolbar-icon-color);white-space:nowrap;text-overflow:ellipsis;flex:1;margin-right:10px;overflow:hidden}.vditor-emojis__tail{color:var(--toolbar-icon-color);margin-top:5px;font-size:12px;display:flex}.vditor-emojis__tail a{color:var(--toolbar-icon-color);text-decoration:none}.vditor-emojis__tail a:hover{color:var(--toolbar-icon-hover-color)}.vditor-emojis button{cursor:pointer;float:left;text-align:center;box-sizing:border-box;background-color:#0000;border:0;border-radius:3px;width:30px;height:30px;margin:0;padding:3px;font-size:16px;line-height:26px;transition:all .15s ease-in-out;overflow:hidden}.vditor-emojis button:focus{outline:none}.vditor-emojis button:hover .vditor-emojis__icon{display:inline-block;transform:scale(1.2)}.vditor-emojis img{float:left;width:20px;height:20px;margin:3px 0 0 3px}@media screen and (width<=520px){.vditor-toolbar__item{padding:0 12px}.vditor-panel--left.vditor-panel--arrow:before{right:17px}}@media (hover:hover) and (pointer:fine){.vditor-toolbar__item .vditor-tooltipped:hover{color:var(--toolbar-icon-hover-color)}}@keyframes slideInDown{0%{visibility:visible;transform:translateY(-100%)}to{transform:translate(0,0)}}.vditor{border:1px solid var(--border-color);box-sizing:border-box;border-radius:3px;flex-direction:column;font-family:Helvetica Neue,Luxi Sans,DejaVu Sans,Hiragino Sans GB,Microsoft Yahei,sans-serif,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Android Emoji,EmojiSymbols;display:flex}.vditor--fullscreen{z-index:90;border-radius:0;position:fixed;top:0;left:0;width:100%!important;height:100vh!important}.vditor-content{flex:1;min-width:1px;min-height:60px;display:flex;position:relative}.vditor-preview{border-left:1px solid var(--border-color);box-sizing:border-box;background-color:var(--textarea-background-color);border-radius:0 0 3px;flex:1;min-width:1px;margin-left:-1px;overflow:auto}.vditor-preview::-webkit-scrollbar{display:none}.vditor-preview__action{text-align:center;background-color:var(--toolbar-background-color);padding:10px}.vditor-preview__action button{background-color:var(--toolbar-background-color);color:var(--toolbar-icon-color);cursor:pointer;border:0;margin:0 10px;padding:0 7px;font-size:12px;line-height:20px}.vditor-preview__action button.vditor-preview__action--current,.vditor-preview__action button:hover{color:var(--toolbar-icon-hover-color);background-color:var(--toolbar-background-color)}.vditor-preview__action button:focus{outline:none}.vditor-preview__action button svg{fill:currentColor;vertical-align:middle;width:15px;height:15px}.vditor-preview>.vditor-reset{margin:0 auto;padding:10px}.vditor-preview img:not(.emoji){cursor:pointer}.vditor-devtools{background-color:var(--textarea-background-color);min-width:1px;box-shadow:inset 1px 0 var(--border-color);box-sizing:border-box;border-radius:0 0 3px;flex:1;padding:10px;display:none;overflow:auto}.vditor-counter{color:var(--toolbar-icon-color);background-color:var(--count-background-color);-webkit-user-select:none;user-select:none;float:right;border-radius:3px;margin:8px 3px 0 0;padding:3px;font-size:12px}.vditor-counter--error{color:#d23f31;background-color:#d23f311a}.vditor-resize{cursor:row-resize;-webkit-user-select:none;user-select:none;width:100%;padding:3px 0;position:absolute}.vditor-resize--top{top:-3px}.vditor-resize--bottom{bottom:-3px}.vditor-resize>div{background-color:var(--resize-background-color);height:3px;transition:all .15s ease-in-out}.vditor-resize:hover>div,.vditor-resize--selected>div{background-color:var(--resize-hover-background-color)}.vditor-resize:hover svg,.vditor-resize--selected svg{color:var(--resize-hover-icon-color)}.vditor-resize svg{fill:currentColor;stroke-width:0;stroke:currentColor;width:13px;height:3px;color:var(--resize-icon-color);margin:0 auto;display:block}.vditor-upload{background-color:#4285f4;height:3px;transition:all .15s ease-in-out;position:absolute;top:-2px;left:0}.vditor-tip{z-index:5;font-size:12px;animation-duration:.15s;animation-fill-mode:both;position:absolute;top:10px;left:50%}.vditor-tip--show{animation-name:slideInDown;display:block}.vditor-tip__content{text-align:left;background:var(--toolbar-background-color);color:var(--toolbar-icon-color);max-width:100%;box-shadow:var(--panel-shadow);border-radius:3px;margin-left:-50%;padding:3px 10px;line-height:16px;display:inline-block;position:relative}.vditor-tip__content ul{margin:2px 0;padding:0 0 0 18px}.vditor-tip__content a{color:#4285f4}.vditor-tip__close{color:var(--toolbar-icon-color);cursor:pointer;font-weight:700;position:absolute;top:-7px;right:-15px}.vditor-tip__close:hover{color:var(--toolbar-icon-hover-color)}.vditor-img{z-index:100;flex-direction:column;display:flex;position:fixed;inset:0}.vditor-img__bar{border-bottom:1px solid var(--border-color);background-color:var(--toolbar-background-color);text-align:center;box-sizing:border-box;justify-content:center;align-items:center;height:36px;display:flex}.vditor-img__btn{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--toolbar-icon-color);align-items:center;margin-left:24px;display:flex}.vditor-img__btn:hover{color:var(--toolbar-icon-hover-color)}.vditor-img__btn svg{fill:currentColor;width:14px;height:14px;margin-right:8px}.vditor-img__img{background-color:var(--textarea-background-color);cursor:zoom-out;flex:1;overflow:auto}.vditor-img__img img{max-width:none}.vditor-hint{background-color:var(--panel-background-color);box-shadow:var(--panel-shadow);z-index:4;border-radius:3px;min-width:80px;max-width:250px;margin:0;padding:5px 0;font-size:12px;line-height:20px;list-style:none;display:none;position:absolute}.vditor-hint .vditor-hint{margin-top:-31px;left:100%;right:auto}.vditor-hint .vditor-hint.vditor-panel--left{left:auto;right:100%}.vditor-hint button{color:var(--toolbar-icon-color);box-sizing:border-box;text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background-color:#0000;border:0;border-radius:0;width:100%;margin:0;padding:3px 10px;line-height:20px;display:block;overflow:hidden}.vditor-hint button:focus{outline:none}.vditor-hint--current,.vditor-hint button:not(.vditor-menu--disabled):hover{background-color:var(--toolbar-background-color)!important;color:var(--toolbar-icon-hover-color)!important}.vditor-hint__emoji{float:left;margin-right:3px;font-size:16px}.vditor-hint img{float:left;width:20px;height:20px;margin-right:3px}.vditor-reset{color:#24292e;font-variant-ligatures:no-common-ligatures;word-wrap:break-word;word-break:break-word;font-family:Helvetica Neue,Luxi Sans,DejaVu Sans,Hiragino Sans GB,Microsoft Yahei,sans-serif,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Android Emoji,EmojiSymbols;font-size:16px;line-height:1.5;overflow:auto}.vditor-reset--anchor{padding-left:20px}.vditor-reset--error{color:#d23f31;font-size:12px;line-height:16px;display:block}.vditor-reset ul ul ul{list-style-type:square}.vditor-reset ul ul{list-style-type:circle}.vditor-reset ul{list-style-type:disc}.vditor-reset ul,.vditor-reset ol{margin-top:0;margin-bottom:16px;padding-left:2em}.vditor-reset li+li{margin-top:.25em}.vditor-reset li p{margin-top:16px}.vditor-reset audio{max-width:100%}.vditor-reset audio:focus{outline:none}.vditor-reset video{max-width:100%;max-height:90vh}.vditor-reset img{max-width:100%}.vditor-reset img.emoji{cursor:auto;vertical-align:sub;max-width:20px}.vditor-reset h1,.vditor-reset h2,.vditor-reset h3,.vditor-reset h4,.vditor-reset h5,.vditor-reset h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.vditor-reset h1:hover .vditor-anchor svg,.vditor-reset h2:hover .vditor-anchor svg,.vditor-reset h3:hover .vditor-anchor svg,.vditor-reset h4:hover .vditor-anchor svg,.vditor-reset h5:hover .vditor-anchor svg,.vditor-reset h6:hover .vditor-anchor svg{visibility:visible}.vditor-reset h1{font-size:1.75em}.vditor-reset h2{font-size:1.55em}.vditor-reset h3{font-size:1.38em}.vditor-reset h4{font-size:1.25em}.vditor-reset h5{font-size:1.13em}.vditor-reset h6{font-size:1em}.vditor-reset hr{background-color:#eaecef;border:0;height:2px;margin:24px 0;padding:0}.vditor-reset p{margin-top:0;margin-bottom:16px}.vditor-reset blockquote{color:#6a737d;border-left:.25em solid #eaecef;margin:0 0 16px;padding:0 1em}.vditor-reset blockquote>:first-child{margin-top:0}.vditor-reset blockquote>:last-child{margin-bottom:0}.vditor-reset ins>iframe{border:0}.vditor-reset iframe{box-sizing:border-box;border:1px solid #d1d5da;max-width:100%}.vditor-reset iframe.iframe__video{min-width:80%;min-height:36vh}.vditor-reset table{border-collapse:collapse;empty-cells:show;border-spacing:0;word-break:keep-all;width:100%;margin-bottom:16px;display:block;overflow:auto}.vditor-reset table tr{background-color:#fafbfc;border-top:1px solid #c6cbd1}.vditor-reset table td,.vditor-reset table th{word-break:normal;white-space:nowrap;border:1px solid #dfe2e5;padding:6px 13px}.vditor-reset table td:first-child:after,.vditor-reset table th:first-child:after{content:"";vertical-align:top;min-height:24px;display:inline-block}.vditor-reset table th{font-weight:600}.vditor-reset table tbody tr:nth-child(2n){background-color:#fff}.vditor-reset code:not(.hljs):not(.highlight-chroma){word-break:break-word;white-space:pre-wrap;background-size:20px 20px;border-radius:3px;margin:0;padding:.2em .4em;font-family:mononoki,Consolas,Liberation Mono,Menlo,Courier,monospace,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Android Emoji,EmojiSymbols;font-size:85%}.vditor-reset pre{margin:1em 0}.vditor-reset pre>code{white-space:pre;word-break:initial;word-wrap:normal;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8AgMAAABHkjHhAAAACVBMVEWAgIBaWlo+Pj7rTFvWAAAAA3RSTlMHCAw+VhR4AAAA+klEQVQoz4WSMW7EQAhFPxKWNh2FCx+HkaZI6RRb5DYbyVfIJXLKDCFoMbaTKSw/8ZnPAPjaH2xgZcUNUDADD7D9LtDBCLZ45fbkvo/30K8yeI64pPwl6znd/3n/Oe93P3ho9qeh72btTFzqkz0rsJle8Zr81OLEwZ1dv/713uWqvu2pl+k0fy7MWtj9r/tN5q/02z89qa/L4Dc2LvM93kezPfXlME/O86EbY/V9GB9ePX8G1/6W+/9h1dq/HGfTfzT3j/xNo7522Bfnqe5jO/fvhVthlfk434v3iO9zG/UOphyPeinPl1J8Gtaa7xPTa/Dk+RIs4deMvwGvcGsmsCvJ0AAAAABJRU5ErkJggg==);background-size:20px 20px;border-radius:5px;margin:0;padding:.5em;font-family:mononoki,Consolas,Liberation Mono,Menlo,Courier,monospace,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Android Emoji,EmojiSymbols;font-size:85%;display:block;overflow:auto}.vditor-reset pre:hover div.vditor-copy{display:block}.vditor-reset .language-math,.vditor-reset .language-echarts,.vditor-reset .language-mindmap,.vditor-reset .language-plantuml,.vditor-reset .language-mermaid,.vditor-reset .language-smiles,.vditor-reset .language-markmap,.vditor-reset .language-abc,.vditor-reset .language-flowchart,.vditor-reset .language-graphviz{margin-bottom:16px}.vditor-reset .language-math mjx-container:focus{cursor:context-menu;outline:none}.vditor-reset .language-math .katex-display>.katex>.katex-html>.tag{font-size:1.21rem;display:inline-block;right:2px}.vditor-reset .language-echarts,.vditor-reset .language-mindmap{height:420px;overflow:hidden}.vditor-reset .language-mermaid,.vditor-reset .language-markmap,.vditor-reset .language-flowchart,.vditor-reset .language-graphviz{text-align:center}.vditor-reset .language-graphviz parsererror{overflow:auto}.vditor-reset kbd{color:#24292e;vertical-align:middle;background-color:#fafbfc;border:1px solid #d1d5da;border-radius:3px;padding:3px 5px;font:11px/10px Consolas,Liberation Mono,Menlo,Courier,monospace;display:inline-block;box-shadow:inset 0 -1px #d1d5da}.vditor-reset summary{cursor:pointer}.vditor-reset summary:focus{outline:none}.vditor-reset svg{width:auto;height:auto;stroke-width:initial}.vditor-reset p:last-child,.vditor-reset blockquote:last-child,.vditor-reset pre:last-child,.vditor-reset ul:last-child,.vditor-reset ol:last-child,.vditor-reset hr:last-child{margin-bottom:0}.vditor-comment{border-bottom:2px solid #f8e6ab}.vditor-comment--focus,.vditor-comment--hover{background-color:#faf1d1;border-bottom:2px solid #ffc60a}.vditor-comment--focus .vditor-comment,.vditor-comment--hover .vditor-comment{border-bottom:2px solid #ffc60a}.vditor-task{word-break:break-all;list-style:none!important}.vditor-task input{vertical-align:middle;margin:0 .2em .25em -1.6em;font-size:12px}.vditor-copy{z-index:1;display:none;position:relative}.vditor-copy textarea{height:10px;position:absolute;left:-100000px}.vditor-copy span{cursor:pointer;position:absolute;top:.5em;right:15px}.vditor-copy svg{color:#586069;fill:currentColor;height:14px;display:block;width:14px!important}.vditor-linenumber{position:relative;padding-left:4em!important}.vditor-linenumber__rows{pointer-events:none;-webkit-user-select:none;user-select:none;counter-reset:linenumber;width:3em;position:absolute;top:1em;left:0}.vditor-linenumber__rows>span{pointer-events:none;display:block}.vditor-linenumber__rows>span:before{counter-increment:linenumber;content:counter(linenumber);color:#9e969661;text-align:right;padding-right:1em;display:block}.vditor-speech{cursor:pointer;color:#586069;background-color:#f6f8fa;border:1px solid #d1d5da;border-radius:3px;padding:3px;display:none;position:absolute}.vditor-speech:hover,.vditor-speech--current{color:#4285f4}.vditor-speech svg{fill:currentColor;stroke-width:0;stroke:currentColor;width:14px;height:14px;display:block}.vditor-anchor{margin-left:5px}.vditor-anchor--left{float:left;margin-left:-20px;padding-right:4px}.vditor-anchor svg{visibility:hidden}.vditor-anchor:hover svg{visibility:visible}.vditor-anchor:focus{outline:none}.vditor-linkcard{cursor:pointer;max-width:768px;margin:31px auto 16px;padding:0 10px;transition:all .15s ease-in-out}.vditor-linkcard a{background-color:#f6f8fa;border-radius:3px;flex-wrap:wrap-reverse;max-height:250px;text-decoration:none;display:flex;overflow:hidden;box-shadow:0 1px 2px #0003}.vditor-linkcard a:hover{text-decoration:none;box-shadow:0 0 3px #00000021,0 3px 6px #00000042}.vditor-linkcard a:visited .vditor-linkcard__abstract{color:#5860695c}.vditor-linkcard__info{box-sizing:border-box;flex:1;min-width:200px;padding:10px}.vditor-linkcard__title{color:#24292e;align-items:center;font-size:14px;font-weight:400;display:flex}.vditor-linkcard__title img{cursor:pointer;border-radius:3px;flex-shrink:0;width:20px;height:20px;margin-right:5px}.vditor-linkcard__abstract{word-wrap:break-word;word-break:break-all;-webkit-line-clamp:2;text-overflow:ellipsis;color:#586069;-webkit-box-orient:vertical;margin:5px 0;font-size:13px;display:-webkit-box;overflow:hidden}.vditor-linkcard__site{color:#4285f4;font-size:12px}.vditor-linkcard__image{cursor:pointer;background-color:#5860695c;background-position:50%;background-repeat:no-repeat;background-size:cover;min-width:126px;max-width:250px}.vditor-footnotes__goto-ref{text-decoration:none}.vditor-toc{-webkit-user-select:text;user-select:text;color:#4285f4;margin-bottom:16px}.vditor-toc .vditor-outline__action{display:none}.vditor-toc ul{padding-left:1em;list-style:none!important}.vditor-toc>ul{padding-left:0}.vditor-toc span{cursor:pointer}.vditor-toc li>span>svg{width:0;height:0}.vditor-outline{border-right:1px solid var(--border-color);background-color:var(--panel-background-color);width:250px;display:none;overflow:auto}.vditor-outline--right{border-right:0;border-left:1px solid var(--border-color)}.vditor-outline::-webkit-scrollbar{display:none}.vditor-outline ul{margin:0;padding-left:1em;list-style:none!important}.vditor-outline__content>ul{padding-left:0}.vditor-outline li>span{cursor:pointer;color:var(--textarea-text-color);align-items:center;padding:5px 10px;display:flex}.vditor-outline li>span>svg{flex-shrink:0;width:10px;height:10px}.vditor-outline li>span:hover{color:var(--toolbar-icon-hover-color)}.vditor-outline li>span>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vditor-outline__title{border-bottom:1px dashed var(--border-color);color:var(--toolbar-icon-color);padding:5px 10px;font-size:12px}.vditor-outline__action{fill:currentColor;flex-shrink:0;margin-right:5px;transition:all .15s ease-in-out}.vditor-outline__action--close{transform:rotate(-90deg)}.vditor-wysiwyg{box-sizing:border-box;flex:1;width:100%;min-width:1px;position:relative}.vditor-wysiwyg pre.vditor-reset{background-color:var(--panel-background-color);white-space:pre-wrap;box-sizing:border-box;height:100%;margin:0}.vditor-wysiwyg pre.vditor-reset[contenteditable=false]{opacity:.3;cursor:not-allowed}.vditor-wysiwyg pre.vditor-reset:empty:before{content:attr(placeholder);color:var(--second-color)}.vditor-wysiwyg pre.vditor-reset:focus{background-color:var(--textarea-background-color);outline:none}.vditor-wysiwyg pre.vditor-reset:after{content:"";height:var(--editor-bottom);display:block}.vditor-wysiwyg blockquote:empty:before,.vditor-wysiwyg pre>code:empty:before,.vditor-wysiwyg p:empty:before,.vditor-wysiwyg h1:empty:after,.vditor-wysiwyg h2:empty:after,.vditor-wysiwyg h3:empty:after,.vditor-wysiwyg h4:empty:after,.vditor-wysiwyg h5:empty:after,.vditor-wysiwyg h6:empty:after{content:" "}.vditor-wysiwyg code[data-marker=\`]{padding-left:0!important;padding-right:0!important}.vditor-wysiwyg__block pre:first-child{margin-bottom:-1em}.vditor-wysiwyg__block pre:first-child code{color:var(--textarea-text-color);text-align:left;height:auto}.vditor-wysiwyg__block pre:last-child{margin-bottom:1em}.vditor-wysiwyg__preview{cursor:pointer;white-space:initial;min-height:27px}.vditor-wysiwyg>.vditor-reset>h1:before,.vditor-wysiwyg>.vditor-reset>h2:before,.vditor-wysiwyg>.vditor-reset>h3:before,.vditor-wysiwyg>.vditor-reset>h4:before,.vditor-wysiwyg>.vditor-reset>h5:before,.vditor-wysiwyg>.vditor-reset>h6:before,.vditor-wysiwyg div.vditor-wysiwyg__block:before,.vditor-wysiwyg div[data-type=link-ref-defs-block]:before,.vditor-wysiwyg div[data-type=footnotes-block]:before,.vditor-wysiwyg .vditor-toc:before{float:left;content:"H1";color:var(--second-color);margin-left:-29px;padding-right:4px;font-size:.85rem;font-weight:400}.vditor-wysiwyg>.vditor-reset>h2:before{content:"H2"}.vditor-wysiwyg>.vditor-reset>h3:before{content:"H3"}.vditor-wysiwyg>.vditor-reset>h4:before{content:"H4"}.vditor-wysiwyg>.vditor-reset>h5:before{content:"H5"}.vditor-wysiwyg>.vditor-reset>h6:before{content:"H6"}.vditor-wysiwyg div[data-type=link-ref-defs-block]:before{content:"\"A\""}.vditor-wysiwyg div[data-type=footnotes-block]:before{content:"^F"}.vditor-wysiwyg div.vditor-wysiwyg__block:before{content:"</>"}.vditor-wysiwyg div.vditor-wysiwyg__block[data-type=yaml-front-matter]:before{content:"F"}.vditor-wysiwyg div.vditor-wysiwyg__block[data-type=math-block]:before{content:"$$"}.vditor-wysiwyg .vditor-toc:before{content:"ToC"}.vditor-wysiwyg hr{width:100%;margin:12px 0;display:inline-block}.vditor-wysiwyg details{white-space:initial}.vditor-wysiwyg a{cursor:pointer}.vditor-wysiwyg span[data-type=backslash]>span{color:var(--second-color);display:none}.vditor-wysiwyg span[data-type=link-ref],.vditor-wysiwyg sup[data-type=footnotes-ref]{color:#4285f4}.vditor-wysiwyg span[data-type=toc-h]{color:#4285f4;text-decoration:underline}.vditor-wysiwyg div[data-type=footnotes-block]{border-top:2px solid var(--heading-border-color);margin-top:24px;padding-top:24px}.vditor-wysiwyg div[data-type=link-ref-defs-block]{color:var(--blockquote-color)}@media screen and (width<=520px){.vditor-wysiwyg h1:before,.vditor-wysiwyg h2:before,.vditor-wysiwyg h3:before,.vditor-wysiwyg h4:before,.vditor-wysiwyg h5:before,.vditor-wysiwyg h6:before,.vditor-wysiwyg div.vditor-wysiwyg__block:before,.vditor-wysiwyg div[data-type=link-ref-defs-block]:before,.vditor-wysiwyg div[data-type=footnotes-block]:before,.vditor-wysiwyg .vditor-toc:before{content:none}}.vditor-ir{box-sizing:border-box;flex:1;width:100%;min-width:1px;position:relative}.vditor-ir__node[data-type=code-block]:before,.vditor-ir__node[data-type=code-block]:after,.vditor-ir__node[data-type=yaml-front-matter]:before,.vditor-ir__node[data-type=yaml-front-matter]:after,.vditor-ir__node[data-type=math-block]:before,.vditor-ir__node[data-type=math-block]:after{content:" ";color:var(--second-color)}.vditor-ir__node:not(.vditor-ir__node--expand) .vditor-ir__marker{padding:0!important}.vditor-ir__node:not(.vditor-ir__node--expand)[data-type=a]{cursor:pointer}.vditor-ir__node[data-type=link-ref],.vditor-ir__node[data-type=footnotes-ref]{color:#4285f4}.vditor-ir__node[data-type=html-block]{margin-bottom:1em}.vditor-ir__node .vditor-ir__marker{width:0;height:0;transition:all .15s ease-in-out;display:inline-block;overflow:hidden}.vditor-ir__node--hidden .vditor-ir__marker{visibility:hidden}.vditor-ir__node--expand .vditor-ir__marker{color:var(--second-color);width:auto;height:auto;display:inline}.vditor-ir__node--expand .vditor-ir__marker--hide{display:none}.vditor-ir__node--expand .vditor-ir__marker--heading{color:var(--ir-heading-color)}.vditor-ir__node--expand .vditor-ir__marker--bi{color:var(--ir-bi-color)}.vditor-ir__node--expand .vditor-ir__marker--link{color:var(--ir-link-color)}.vditor-ir__node--expand .vditor-ir__marker--title{color:var(--ir-title-color)}.vditor-ir__node--expand .vditor-ir__marker--bracket{color:var(--ir-bracket-color);text-decoration:underline}.vditor-ir__node--expand .vditor-ir__marker--paren{color:var(--ir-paren-color)}.vditor-ir__node--expand .vditor-ir__marker--info{color:var(--ir-heading-color)}.vditor-ir__node--expand .vditor-ir__marker--pre code{color:var(--textarea-text-color);text-align:left;height:auto}.vditor-ir__node--expand[data-type=code-block]:before,.vditor-ir__node--expand[data-type=code-block]:after{content:"```"}.vditor-ir__node--expand[data-type=yaml-front-matter]:before,.vditor-ir__node--expand[data-type=yaml-front-matter]:after{content:"---"}.vditor-ir__node--expand[data-type=math-block]:before,.vditor-ir__node--expand[data-type=math-block]:after{content:"$$"}.vditor-ir__node span[data-type=code-block-open-marker],.vditor-ir__node span[data-type=code-block-close-marker],.vditor-ir__node span[data-type=yaml-front-matter-open-marker],.vditor-ir__node span[data-type=yaml-front-matter-close-marker],.vditor-ir__node span[data-type=math-block-open-marker],.vditor-ir__node span[data-type=math-block-close-marker]{display:none}.vditor-ir__preview{cursor:pointer;white-space:initial;min-height:27px}.vditor-ir__link{color:var(--ir-bracket-color);text-decoration:underline}.vditor-ir pre.vditor-reset{background-color:var(--panel-background-color);white-space:pre-wrap;box-sizing:border-box;height:100%;margin:0}.vditor-ir pre.vditor-reset[contenteditable=false]{opacity:.3;cursor:not-allowed}.vditor-ir pre.vditor-reset:empty:before{content:attr(placeholder);color:var(--second-color)}.vditor-ir pre.vditor-reset:focus{background-color:var(--textarea-background-color);outline:none}.vditor-ir pre.vditor-reset:after{content:"";height:var(--editor-bottom);display:block}.vditor-ir pre.vditor-reset pre{margin:0}.vditor-ir hr{width:100%;margin:12px 0;display:inline-block}.vditor-ir blockquote:empty:before,.vditor-ir pre>code:empty:before,.vditor-ir p:empty:before,.vditor-ir h1:empty:after,.vditor-ir h2:empty:after,.vditor-ir h3:empty:after,.vditor-ir h4:empty:after,.vditor-ir h5:empty:after,.vditor-ir h6:empty:after{content:" "}.vditor-ir .vditor-reset>h1:before,.vditor-ir .vditor-reset>h2:before,.vditor-ir .vditor-reset>h3:before,.vditor-ir .vditor-reset>h4:before,.vditor-ir .vditor-reset>h5:before,.vditor-ir .vditor-reset>h6:before,.vditor-ir div[data-type=link-ref-defs-block]:before,.vditor-ir div[data-type=footnotes-block]:before,.vditor-ir .vditor-toc:before{float:left;content:"H1";color:var(--second-color);margin-left:-29px;padding-right:4px;font-size:.85rem;font-weight:400}.vditor-ir .vditor-reset>h2:before{content:"H2"}.vditor-ir .vditor-reset>h3:before{content:"H3"}.vditor-ir .vditor-reset>h4:before{content:"H4"}.vditor-ir .vditor-reset>h5:before{content:"H5"}.vditor-ir .vditor-reset>h6:before{content:"H6"}.vditor-ir div[data-type=link-ref-defs-block]{color:var(--blockquote-color)}.vditor-ir div[data-type=link-ref-defs-block]:before{content:"\"A\""}.vditor-ir div[data-type=footnotes-block]{border-top:2px solid var(--heading-border-color);margin-top:24px;padding-top:24px}.vditor-ir div[data-type=footnotes-block]:before{content:"^F"}.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>ul,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>ol,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>p,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>blockquote,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>pre,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>table,.vditor-ir div[data-type=footnotes-block]>div[data-type=footnotes-def]>hr{margin-left:8px}.vditor-ir .vditor-toc:before{content:"ToC"}.vditor-ir .vditor-toc span[data-type=toc-h]{color:#4285f4;text-decoration:underline}@media screen and (width<=520px){.vditor-ir h1:before,.vditor-ir h2:before,.vditor-ir h3:before,.vditor-ir h4:before,.vditor-ir h5:before,.vditor-ir h6:before,.vditor-ir div[data-type=link-ref-defs-block]:before,.vditor-ir div[data-type=footnotes-block]:before,.vditor-ir .vditor-toc:before{content:none}}.vditor-sv{resize:none;box-sizing:border-box;background-color:var(--panel-background-color);width:100%;min-width:1px;color:var(--textarea-text-color);font-variant-ligatures:no-common-ligatures;white-space:pre-wrap;word-break:break-word;word-wrap:break-word;border:0;border-radius:0 0 3px 3px;outline:0;flex:1;margin:0 1px 0 0;padding:10px 9px 10px 10px;font-family:Helvetica Neue,Luxi Sans,DejaVu Sans,Hiragino Sans GB,Microsoft Yahei,sans-serif,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,Android Emoji,EmojiSymbols;font-size:16px;line-height:22px;overflow:auto}.vditor-sv[contenteditable=false]{opacity:.3;cursor:not-allowed}.vditor-sv:empty:before{content:attr(placeholder);color:var(--second-color)}.vditor-sv:focus{background-color:var(--textarea-background-color)}.vditor-sv:after{content:"";height:var(--editor-bottom);display:block}.vditor-sv span[data-type=newline]+span[data-type=text]:empty{display:inherit}.vditor-sv .sup{vertical-align:super;font-size:smaller}.vditor-sv .strong{font-weight:700}.vditor-sv .em{font-style:italic}.vditor-sv .s{text-decoration:line-through}.vditor-sv .mark:not(.vditor-sv__marker){color:#000;background-color:#ff0}.vditor-sv .h1{font-size:1.75em;line-height:44px}.vditor-sv .h2{font-size:1.55em;line-height:38px}.vditor-sv .h3{font-size:1.38em;line-height:27px}.vditor-sv .h4{font-size:1.25em;line-height:25px}.vditor-sv .h5{font-size:1.13em}.vditor-sv .h6{font-size:1em}.vditor-sv__marker{color:var(--second-color)}.vditor-sv__marker--heading{color:var(--ir-heading-color)}.vditor-sv__marker--bi{color:var(--ir-bi-color)}.vditor-sv__marker--link{color:var(--ir-link-color)}.vditor-sv__marker--title{color:var(--ir-title-color)}.vditor-sv__marker--bracket{color:var(--ir-bracket-color)}.vditor-sv__marker--paren{color:var(--ir-paren-color)}.vditor-sv__marker--info{color:var(--ir-heading-color)}.vditor-sv__marker--strong{font-weight:700}.material-right-panel{flex-shrink:0;width:0;min-width:0;height:100vh;transition:width .3s,min-width .3s;position:relative;overflow:hidden}.material-right-panel.resizing{transition:none}.material-right-panel .material-right-resize-border{cursor:col-resize;z-index:10;-webkit-user-select:none;user-select:none;width:4px;height:100%;position:absolute;top:0;left:0}.material-right-panel .material-right-resize-border:hover,.material-right-panel .material-right-resize-border:active{background:var(--color-sidebar-border-hover)}.material-right-panel .material-right-inner{background:color-mix(in srgb, var(--color-bg-primary) 86%, transparent);border-left:1px solid var(--color-border-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-direction:column;height:100%;display:flex}.material-right-panel .material-right-header{box-sizing:border-box;border-bottom:1px solid var(--color-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;height:40px;padding:0 16px;display:flex}.material-right-panel .material-right-title{font-family:var(--font-mono-ui);color:var(--color-text-primary);font-size:13px;font-weight:600}.material-right-panel .material-right-close{cursor:pointer;width:24px;height:24px;color:var(--color-text-tertiary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:14px;transition:all .15s;display:flex}.material-right-panel .material-right-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.material-right-panel .material-right-body{flex:1;padding:0;overflow:hidden}.knowledge-graph{width:100%;height:100%;display:block}.graph-link{stroke:var(--color-border-secondary);stroke-width:1.2px;stroke-opacity:.6}.graph-circle{fill:var(--color-link);stroke:var(--color-bg-primary);stroke-width:2px;cursor:grab;transition:fill .15s}.graph-circle:hover{fill:var(--color-link-hover,var(--color-link));filter:brightness(1.2)}.graph-label{fill:var(--color-text-secondary);text-anchor:middle;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:11px}.graph-node:active .graph-circle{cursor:grabbing}.graph-status{height:100%;color:var(--color-text-hint);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.graph-status p{margin:0;font-size:13px}.upload-panel,.upload-panel-mini{--upload-success:#52c41a}[data-theme=dark] .upload-panel,[data-theme=dark] .upload-panel-mini{--upload-success:#73d13d}.upload-panel{z-index:1500;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);width:360px;max-height:400px;box-shadow:0 6px 24px var(--color-shadow-strong);border-radius:10px;flex-direction:column;display:flex;position:fixed;bottom:16px;right:16px;overflow:hidden}.upload-panel-header{border-bottom:1px solid var(--color-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.upload-panel-title{color:var(--color-text-primary);font-size:13px;font-weight:600}.upload-panel-actions{gap:4px;display:flex}.upload-panel-btn{cursor:pointer;width:24px;height:24px;color:var(--color-text-tertiary);background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;transition:all .15s;display:flex}.upload-panel-btn:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.upload-panel-list{flex:1;padding:8px 0;overflow-y:auto}.upload-panel-list::-webkit-scrollbar{width:6px}.upload-panel-list::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}.upload-item{flex-wrap:wrap;align-items:center;gap:8px;padding:6px 14px;display:flex}.upload-item-info{justify-content:space-between;align-items:center;width:100%;min-width:0;display:flex}.upload-item-name{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.upload-item-status{color:var(--color-text-tertiary);flex-shrink:0;margin-left:8px;font-size:12px}.upload-item--done .upload-item-status{color:var(--upload-success)}.upload-item--error .upload-item-status{color:var(--color-danger)}.upload-item--cancelled .upload-item-status{color:var(--color-text-quaternary)}.upload-item-bar{background:var(--color-bg-tertiary);border-radius:2px;width:100%;height:3px;overflow:hidden}.upload-item-bar-fill{background:var(--color-link);border-radius:2px;height:100%;transition:width .2s}.upload-item--done .upload-item-bar-fill{background:var(--upload-success)}.upload-item--error .upload-item-bar-fill{background:var(--color-danger)}.upload-item-cancel{cursor:pointer;width:20px;height:20px;color:var(--color-text-quaternary);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.upload-item-cancel:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.upload-panel-mini{z-index:1500;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);box-shadow:0 4px 16px var(--color-shadow);cursor:pointer;color:var(--color-text-secondary);border-radius:20px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;transition:all .15s;display:flex;position:fixed;bottom:16px;right:16px}.upload-panel-mini:hover{box-shadow:0 6px 20px var(--color-shadow-strong);color:var(--color-text-primary)}.upload-mini-text{white-space:nowrap}@keyframes upload-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.upload-spin-path{transform-origin:8px 8px;animation:1s linear infinite upload-spin}.login-page{--login-brand:#a93a2c;--login-brand-soft:#fbeeeb;--login-good:#00a870}[data-theme=dark] .login-page{--login-brand:#e89b8f;--login-brand-soft:#e89b8f2e;--login-good:#34c187}.login-page{background:radial-gradient(circle at 16% 12%, color-mix(in srgb, var(--login-brand) 8%, transparent), transparent 28%), linear-gradient(90deg, color-mix(in srgb, var(--color-text-primary) 3.5%, transparent) 1px, transparent 1px), linear-gradient(color-mix(in srgb, var(--color-text-primary) 3.5%, transparent) 1px, transparent 1px), var(--color-bg-page);min-height:100vh;color:var(--color-text-primary);background-size:auto,32px 32px,32px 32px,auto;font-family:Inter,PingFang SC,HarmonyOS Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:relative;overflow:hidden}.login-page:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg, color-mix(in srgb, var(--color-text-primary) 2.4%, transparent) 0, color-mix(in srgb, var(--color-text-primary) 2.4%, transparent) 1px, transparent 1px, transparent 4px);mix-blend-mode:multiply;position:absolute;inset:0}.login-landing{z-index:1;flex-direction:column;min-height:100vh;padding:24px clamp(18px,5vw,64px) 32px;transition:filter .2s,transform .2s,opacity .2s;display:flex;position:relative}.login-landing.is-blurred{filter:blur(5px);opacity:.72;pointer-events:none;-webkit-user-select:none;user-select:none;transform:scale(.985)}.login-header{align-items:center;gap:20px;height:48px;display:flex}.login-brand,.login-nav,.login-hero-meta,.console-path,.console-kbd,.console-num,.login-card-eyebrow,.login-footer-grid span{font-family:JetBrains Mono,SF Mono,Cascadia Code,monospace}.login-brand{color:var(--color-text-primary);align-items:center;gap:9px;font-size:14px;font-weight:600;display:inline-flex}.login-logo-square{background:var(--login-brand);width:24px;height:24px;color:var(--color-spinner-on-dark);border-radius:6px;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.login-nav{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-quaternary);align-items:center;gap:18px;margin-left:auto;font-size:11px;display:flex}.login-ghost-btn,.login-primary-btn,.login-secondary-btn,.login-close-btn,.submit-btn,.login-tabs button,.console-input button{font:inherit;cursor:pointer}.login-ghost-btn{border:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-bg-primary) 72%, transparent);color:var(--color-text-secondary);border-radius:6px;padding:7px 14px;transition:border-color .15s,background .15s}.login-ghost-btn:hover{background:var(--color-bg-secondary);border-color:var(--color-border-primary)}.login-hero{flex:1;grid-template-columns:minmax(0,1fr) minmax(360px,520px);align-items:center;gap:clamp(32px,7vw,92px);width:min(1180px,100%);margin:0 auto;padding:48px 0;display:grid}.login-hero-copy{max-width:640px}.login-hero-meta{color:var(--color-text-tertiary);letter-spacing:.02em;align-items:center;gap:8px;margin-bottom:18px;font-size:11px;display:inline-flex}.login-pulse-dot{background:var(--login-brand);border-radius:50%;width:6px;height:6px;animation:2.4s ease-in-out infinite login-pulse}@keyframes login-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.42;transform:scale(1.45)}}.login-hero h1{color:var(--color-text-primary);letter-spacing:-.055em;margin:0;font-size:clamp(42px,7.4vw,88px);font-weight:500;line-height:1.04}.login-hero-sub{color:var(--color-text-quaternary);letter-spacing:.01em;margin:14px 0 0;font-size:16px}.login-hero-desc{max-width:560px;color:var(--color-text-tertiary);margin:28px 0 0;font-size:15px;line-height:1.9}.login-actions{align-items:center;gap:12px;margin-top:34px;display:flex}.login-primary-btn,.login-secondary-btn{border-radius:7px;min-height:42px;padding:0 18px;font-size:14px;font-weight:500;transition:transform .15s,box-shadow .15s,background .15s,opacity .15s}.login-primary-btn{border:1px solid var(--color-btn-primary-bg);background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);box-shadow:0 10px 28px var(--color-shadow-strong)}.login-primary-btn:hover{opacity:.92;transform:translateY(-1px)}.login-secondary-btn{border:1px solid var(--color-border-primary);background:color-mix(in srgb, var(--color-bg-primary) 76%, transparent);color:var(--color-text-secondary)}.login-secondary-btn:hover{background:var(--color-bg-secondary)}[data-theme=dark] .login-secondary-btn{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:var(--color-text-tertiary);opacity:.92}[data-theme=dark] .login-secondary-btn:hover{background:var(--color-btn-primary-bg-hover);opacity:1}.login-console{border:1px solid var(--color-border-primary);background:color-mix(in srgb, var(--color-bg-primary) 78%, transparent);box-shadow:0 24px 80px var(--color-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;overflow:hidden}.console-topbar{border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-secondary);align-items:center;gap:10px;height:46px;padding:0 16px;display:flex}.console-dot{background:var(--login-brand);border-radius:50%;width:8px;height:8px}.console-path{color:var(--color-text-tertiary);font-size:11px}.console-kbd{color:var(--color-text-quaternary);border:1px solid var(--color-border-primary);border-radius:4px;margin-left:auto;padding:2px 6px;font-size:10px}.console-body{padding:18px}.console-line{border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-secondary);grid-template-columns:58px 1fr 42px;align-items:center;gap:12px;padding:12px 8px;font-size:13px;display:grid}.console-line.is-strong{background:var(--login-brand-soft);box-shadow:0 0 0 1px color-mix(in srgb, var(--login-brand) 18%, transparent) inset;border-bottom-color:#0000;border-radius:8px}.console-chip{border:1px solid color-mix(in srgb, var(--login-good) 26%, transparent);background:color-mix(in srgb, var(--login-good) 10%, transparent);height:22px;color:var(--login-good);border-radius:4px;justify-content:center;align-items:center;font-size:11px;font-weight:500;display:inline-flex}.console-chip.muted{border-color:var(--color-border-primary);background:var(--color-bg-secondary);color:var(--color-text-tertiary)}.console-chip.danger{border-color:color-mix(in srgb, var(--color-danger) 24%, transparent);background:color-mix(in srgb, var(--color-danger) 8%, transparent);color:var(--color-danger)}.console-num{color:var(--color-text-tertiary);text-align:right;font-size:12px}.console-input{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);min-height:56px;color:var(--color-text-quaternary);box-shadow:0 4px 18px var(--color-shadow-subtle);border-radius:10px;align-items:center;gap:12px;margin-top:18px;padding:10px 10px 10px 16px;font-size:13px;display:flex}.console-input span{flex:1}.console-input button{background:var(--color-btn-primary-bg);width:32px;height:32px;color:var(--color-btn-primary-text);border:none;border-radius:7px;font-size:18px;line-height:1}.login-footer-grid{grid-template-columns:repeat(3,1fr);gap:16px;width:min(1180px,100%);margin:0 auto;display:grid}.login-footer-grid article{border:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-bg-primary) 58%, transparent);border-radius:10px;min-height:132px;padding:18px}.login-footer-grid span{color:var(--login-brand);font-size:11px}.login-footer-grid strong{color:var(--color-text-primary);margin-top:12px;font-size:15px;font-weight:600;display:block}.login-footer-grid p{color:var(--color-text-tertiary);margin:8px 0 0;font-size:13px;line-height:1.7}.login-modal-overlay{z-index:10;background:var(--color-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.login-card{background:var(--color-bg-primary);border:1px solid var(--color-border-subtle);width:min(420px,100%);box-shadow:0 18px 58px var(--color-shadow-strong);border-radius:14px;flex-direction:column;padding:26px;display:flex}.login-card-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.login-card-eyebrow{color:var(--color-text-quaternary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:10px}.login-title{color:var(--color-text-primary);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:600}.login-close-btn{width:30px;height:30px;color:var(--color-text-quaternary);background:0 0;border:none;border-radius:6px;font-size:24px;line-height:1}.login-close-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.login-tabs{background:var(--color-bg-tertiary);border-radius:8px;width:100%;margin-bottom:22px;padding:4px;display:flex}.login-tabs button{color:var(--color-text-tertiary);background:0 0;border:none;border-radius:6px;flex:1;padding:8px 0;font-size:13px;font-weight:500;transition:background .2s,color .2s}.login-tabs button.active{background:var(--color-bg-primary);color:var(--color-text-primary);box-shadow:0 1px 5px var(--color-shadow-subtle)}.login-form{flex-direction:column;gap:15px;width:100%;display:flex}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--color-text-tertiary);font-size:12px;font-weight:500}.form-group input{border:1px solid var(--color-border-primary);color:var(--color-text-primary);background:var(--color-bg-primary);border-radius:7px;outline:none;padding:10px 12px;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input::placeholder{color:var(--color-text-quaternary)}.form-group input:focus{border-color:var(--login-brand);box-shadow:0 0 0 3px var(--login-brand-soft)}.login-error{color:var(--color-danger);text-align:center;margin:-2px 0;font-size:13px}.submit-btn{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border:none;border-radius:7px;margin-top:4px;padding:11px 0;font-size:14px;font-weight:500;transition:opacity .2s,transform .2s}.submit-btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}@media (width<=900px){.login-hero{grid-template-columns:1fr;align-items:start;padding-top:56px}.login-console{max-width:560px}.login-footer-grid{grid-template-columns:1fr}}@media (width<=640px){.login-landing{padding:18px 16px 22px}.login-nav{display:none}.login-header{gap:12px}.login-hero{gap:28px;padding:40px 0 28px}.login-hero-desc{font-size:14px}.login-actions{flex-direction:column;align-items:stretch}.console-line{grid-template-columns:56px 1fr}.console-line .console-num{display:none}.login-card{padding:22px}}.shared-chat{background:var(--color-bg-page);flex-direction:column;max-width:860px;height:100vh;margin:0 auto;display:flex}.shared-chat .shared-chat-loading,.shared-chat .shared-chat-error{height:100%;color:var(--color-text-tertiary);justify-content:center;align-items:center;font-size:16px;display:flex}.shared-chat .shared-chat-error{color:var(--color-danger)}.shared-chat .shared-chat-header{border-bottom:1px solid var(--color-border-primary);align-items:center;gap:10px;padding:20px 24px;display:flex}.shared-chat .shared-chat-header .shared-logo{width:32px;height:32px;filter:var(--logo-filter)}.shared-chat .shared-chat-header .shared-title{color:var(--color-text-primary);flex:1;font-size:18px;font-weight:600}.shared-chat .shared-chat-header .go-chat-btn{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;align-items:center;gap:4px;padding:8px 18px;font-size:14px;font-weight:500;transition:background .2s;display:flex}.shared-chat .shared-chat-header .go-chat-btn:hover{background:var(--color-btn-primary-bg-hover)}.shared-chat .shared-chat-messages{flex-direction:column;flex:1;gap:4px;padding:32px 0 16px;display:flex;overflow-y:auto}.shared-chat .shared-chat-messages::-webkit-scrollbar{width:6px}.shared-chat .shared-chat-messages::-webkit-scrollbar-track{background:0 0}.shared-chat .shared-chat-messages::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}.shared-chat .shared-chat-messages::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}.shared-chat .shared-chat-messages .message-wrapper{flex-direction:column;width:100%;max-width:800px;margin:0 auto;padding:2px 24px;display:flex}.shared-chat .shared-chat-messages .message-wrapper.user{align-items:flex-end}.shared-chat .shared-chat-messages .message-wrapper.assistant{align-items:flex-start}.shared-chat .shared-chat-messages .message-wrapper .message-bubble{word-break:break-word;max-width:70%;padding:12px 16px;font-size:15px;line-height:1.6}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.user{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary);white-space:pre-wrap;border-radius:20px 20px 4px}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary);border-radius:20px 20px 20px 4px}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant p{margin:.4em 0}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant p:first-child{margin-top:0}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant p:last-child{margin-bottom:0}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h1,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h2,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h3,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h4,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h5,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h6{margin:.6em 0 .3em}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h1:first-child,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h2:first-child,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h3:first-child,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h4:first-child,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h5:first-child,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant h6:first-child{margin-top:0}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant ul,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant ol{margin:.4em 0;padding-left:1.5em}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant pre{background:var(--color-code-bg);color:var(--color-code-text);border-radius:8px;margin:.5em 0;font-size:15px;line-height:1.5;overflow-x:auto}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant code{font-family:SF Mono,Fira Code,Fira Mono,Menlo,monospace;font-size:1em}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant :not(pre)>code{background:var(--color-inline-code-bg);border-radius:4px;padding:2px 5px}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant blockquote{border-left:3px solid var(--color-border-secondary);color:var(--color-text-tertiary);margin:.5em 0;padding:.2em .8em}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant table{border-collapse:collapse;margin:.5em 0}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant table th,.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant table td{border:1px solid var(--color-border-secondary);padding:6px 12px}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant table th{background:var(--color-hover-bg)}.shared-chat .shared-chat-messages .message-wrapper .message-bubble.assistant a{color:var(--color-link);text-decoration:underline}.shared-chat .shared-chat-messages .message-wrapper .message-bubble .message-images{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.shared-chat .shared-chat-messages .message-wrapper .message-bubble .message-images .message-image{object-fit:cover;border-radius:8px;max-width:200px;max-height:200px}.shared-chat .shared-chat-footer{border-top:1px solid var(--color-border-primary);color:var(--color-text-quaternary);justify-content:center;padding:16px;font-size:13px;display:flex}.canvas-left-area{pointer-events:none;z-index:5;position:absolute;inset:0}.canvas-left-area>*{pointer-events:auto}.canvas-left-area--menu-open:before{content:"";pointer-events:auto;width:50px;height:260px;position:absolute;top:50%;left:50px;transform:translateY(-50%)}.canvas-left-menu{z-index:5;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);box-shadow:0 4px 16px var(--color-shadow-subtle);border-radius:16px;flex-direction:column;align-items:center;gap:10px;padding:10px 8px;display:flex;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.canvas-left-menu__btn{width:40px;height:40px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:10px;place-items:center;padding:0;transition:background .2s,color .2s;display:grid}.canvas-left-menu__btn:hover{background:var(--color-hover-bg);color:var(--color-text-primary)}.canvas-left-menu__icon{fill:currentColor;width:18px;height:18px;transition:transform .2s}.canvas-left-menu__btn[data-tool=add] .canvas-left-menu__icon{width:14px;height:14px}.canvas-left-menu__btn--primary,.canvas-left-menu__btn--primary:hover{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.canvas-left-menu__btn[data-tool=add].canvas-left-menu__btn--active .canvas-left-menu__icon{transform:rotate(45deg)}.canvas-left-menu__divider{background:var(--color-border-subtle);border:0;width:60%;height:1px;margin:4px auto}.canvas-add-node-menu{z-index:5;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);width:260px;box-shadow:0 8px 24px var(--color-shadow-subtle);transform-origin:0;border-radius:16px;flex-direction:column;padding:12px 10px;transition:opacity .18s,transform .18s;display:flex;position:absolute;top:50%;left:86px;transform:translateY(-50%)}.canvas-add-node-menu.canvas-add-node-menu--closed{opacity:0;pointer-events:none;transform:translate(-6px,-50%)scale(.98)}.canvas-add-node-menu__section-title{color:var(--color-text-tertiary);-webkit-user-select:none;user-select:none;padding:8px 8px 6px;font-size:13px}.canvas-add-node-menu__section-title:not(:first-child){margin-top:4px}.canvas-add-node-menu__row{color:var(--color-text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;padding:6px 8px;transition:background .15s;display:flex}.canvas-add-node-menu__row:hover{background:var(--color-hover-bg)}.canvas-add-node-menu__tile{background:var(--color-bg-tertiary);width:40px;height:40px;color:var(--color-text-secondary);border-radius:10px;flex:none;place-items:center;transition:background .15s;display:grid}.canvas-add-node-menu__row:hover .canvas-add-node-menu__tile{background:var(--color-active-bg);color:var(--color-text-primary)}.canvas-add-node-menu__tile-icon{width:20px;height:20px}.canvas-add-node-menu__text{flex-direction:column;flex:1;min-width:0;display:flex}.canvas-add-node-menu__label{color:var(--color-text-primary);font-size:15px;line-height:1.3}.canvas-add-node-menu__desc{color:var(--color-text-tertiary);opacity:0;max-height:0;margin-top:0;font-size:12px;line-height:1.4;transition:max-height .18s,opacity .18s,margin-top .18s;overflow:hidden}.canvas-add-node-menu__row:hover .canvas-add-node-menu__desc{opacity:1;max-height:20px;margin-top:2px}.canvas-add-node-menu__beta{color:var(--color-text-tertiary);background:var(--color-bg-tertiary);-webkit-user-select:none;user-select:none;border-radius:6px;flex:none;padding:2px 8px;font-size:11px;line-height:1.2}.canvas-context-menu{z-index:6;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);min-width:160px;box-shadow:0 8px 24px var(--color-shadow-subtle);transform-origin:0 0;border-radius:12px;flex-direction:column;padding:6px;animation:.14s ease-out canvas-context-menu-in;display:flex;position:absolute}.canvas-context-menu__section-title{color:var(--color-text-tertiary);-webkit-user-select:none;user-select:none;padding:6px 12px;font-size:12px}.canvas-context-menu__row{color:var(--color-text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:24px;padding:8px 12px;font-size:14px;transition:background .15s;display:flex}.canvas-context-menu__row-label{flex:1}.canvas-context-menu__row-shortcut{color:var(--color-text-quaternary);letter-spacing:.2px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.canvas-context-menu__row:hover{background:var(--color-hover-bg)}.canvas-context-menu__row:disabled{color:var(--color-text-quaternary);cursor:not-allowed;background:0 0}.canvas-context-menu__row--danger{color:var(--color-danger)}.canvas-context-menu__row--danger:hover{background:var(--color-danger-bg)}.canvas-context-menu__divider{background:var(--color-border-subtle);border:0;height:1px;margin:4px 6px}@keyframes canvas-context-menu-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.canvas-history-panel{z-index:5;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);width:280px;max-height:420px;box-shadow:0 8px 24px var(--color-shadow-subtle);transform-origin:0;border-radius:16px;flex-direction:column;padding:12px 10px;animation:.18s ease-out canvas-history-panel-in;display:flex;position:absolute;top:50%;left:86px;transform:translateY(-50%)}.canvas-history-panel__title{color:var(--color-text-primary);-webkit-user-select:none;user-select:none;padding:6px 8px 10px;font-size:14px;font-weight:600}.canvas-history-panel__empty{text-align:center;color:var(--color-text-hint);padding:24px 8px;font-size:13px}.canvas-history-panel__list{flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.canvas-history-panel__item{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:8px;transition:background .15s;display:flex}.canvas-history-panel__item:hover{background:var(--color-hover-bg)}.canvas-history-panel__item-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.canvas-history-panel__item-name{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.canvas-history-panel__item-time{color:var(--color-text-quaternary);font-size:12px}.canvas-history-panel__item-delete{cursor:pointer;width:24px;height:24px;color:var(--color-text-quaternary);opacity:0;background:0 0;border:none;border-radius:6px;flex:none;place-items:center;transition:opacity .15s,background .15s,color .15s;display:grid}.canvas-history-panel__item-delete svg{width:14px;height:14px}.canvas-history-panel__item-delete:hover{background:var(--color-danger-bg);color:var(--color-danger)}.canvas-history-panel__item:hover .canvas-history-panel__item-delete{opacity:1}@keyframes canvas-history-panel-in{0%{opacity:0;transform:translate(-6px,-50%)scale(.98)}to{opacity:1;transform:translateY(-50%)scale(1)}}.canvas-view-controls{background:color-mix(in srgb, var(--color-bg-primary) 90%, transparent);border:1px solid var(--color-border-subtle);box-shadow:0 4px 16px var(--color-shadow-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:10px;align-items:center;gap:2px;padding:4px;display:inline-flex}.canvas-view-controls__btn{width:30px;height:30px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s,transform .15s;display:inline-flex}.canvas-view-controls__btn svg{width:16px;height:16px}.canvas-view-controls__btn:hover{background:var(--color-hover-bg);color:var(--color-text-primary)}.canvas-view-controls__btn:active{transform:scale(.94)}.canvas-view-controls__btn--accent:hover{color:var(--color-brand)}.canvas-view-controls__divider{background:var(--color-border-subtle);width:1px;height:18px;margin:0 3px}.canvas-node-name{max-width:100%;color:var(--color-text-tertiary);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;z-index:2;background:0 0;border:none;border-radius:6px;padding:2px 8px;font-size:12px;line-height:1.4;transition:background .15s,color .15s;position:absolute;bottom:calc(100% + 6px);left:0;overflow:hidden}.canvas-node-name:hover{background:color-mix(in srgb, var(--color-bg-primary) 80%, transparent);color:var(--color-text-primary)}.react-flow__node.selected .canvas-node-name{color:var(--color-brand)}.c-select{display:inline-flex;position:relative}.c-select__trigger{border:1px solid var(--color-border-primary);height:28px;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;outline:none;align-items:center;gap:4px;padding:0 8px;font-family:inherit;font-size:12px;transition:border-color .15s,background .15s;display:inline-flex}.c-select__trigger:hover{border-color:var(--color-text-tertiary)}.c-select__trigger:disabled{opacity:.4;cursor:not-allowed}.c-select--open .c-select__trigger{border-color:var(--color-input-focus-border)}.c-select__arrow{flex-shrink:0;transition:transform .15s}.c-select--open .c-select__arrow{transform:rotate(180deg)}.c-select__dropdown{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);box-shadow:0 4px 12px var(--color-shadow);z-index:9999;border-radius:8px;flex-direction:column;max-height:240px;padding:4px;display:flex;position:fixed;overflow-y:auto}.c-select__option{width:100%;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;text-align:left;background:0 0;border:none;border-radius:5px;align-items:center;padding:7px 12px;font-family:inherit;font-size:12px;transition:background .1s,color .1s;display:flex}.c-select__option:hover{background:var(--color-hover-bg)}.c-select__option--active{color:var(--color-text-primary);font-weight:500}.c-select--disabled{pointer-events:none}.mention-input-wrapper,.mention-dropdown{--mention-color:#4f6ef7;--mention-success:#2db58a;--mention-warning:#b86b1d}[data-theme=dark] .mention-input-wrapper,[data-theme=dark] .mention-dropdown{--mention-color:#7c93ff;--mention-success:#4dd5a8;--mention-warning:#d99454}.mention-input-wrapper{width:100%;position:relative}.mention-input{width:100%;min-height:52px;max-height:120px;color:var(--color-text-primary);white-space:pre-wrap;word-break:break-word;background:0 0;border:none;outline:none;padding:10px 12px;font-family:inherit;font-size:13px;line-height:1.6;overflow-y:auto}.mention-input--disabled{opacity:.5;pointer-events:none}.mention-input__placeholder{color:var(--color-text-quaternary);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:13px;line-height:1.6;position:absolute;top:10px;left:12px}.mention-tag{height:20px;color:var(--mention-color);background:color-mix(in srgb, var(--mention-color) 10%, transparent);vertical-align:middle;white-space:nowrap;-webkit-user-select:all;user-select:all;cursor:default;border-radius:4px;align-items:center;margin:0 1px;padding:0 6px;font-size:12px;line-height:20px;display:inline-flex;position:relative;top:-2px}.mention-tag--image{gap:4px;padding:0 6px 0 2px}.mention-tag--variable{color:var(--mention-success);background:color-mix(in srgb, var(--mention-success) 12%, transparent);font-family:var(--font-mono-ui,monospace)}.mention-tag--code{color:var(--mention-warning);background:color-mix(in srgb, var(--mention-warning) 12%, transparent);font-family:var(--font-mono-ui,monospace)}.mention-tag__thumb{object-fit:cover;-webkit-user-select:none;user-select:none;pointer-events:none;border-radius:3px;flex-shrink:0;width:16px;height:16px}.mention-tag__label{font-size:12px;line-height:20px}.mention-dropdown{z-index:20;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);min-width:180px;max-width:280px;box-shadow:0 4px 16px var(--color-shadow-subtle);border-radius:8px;padding:4px;position:absolute}.mention-dropdown__title{color:var(--color-text-quaternary);-webkit-user-select:none;user-select:none;padding:4px 8px 2px;font-size:11px}.mention-dropdown__item{cursor:pointer;width:100%;color:var(--color-text-primary);text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 8px;font-family:inherit;font-size:13px;transition:background .12s;display:flex}.mention-dropdown__item:hover{background:var(--color-hover-bg)}.mention-dropdown__item-icon{width:20px;height:20px;color:var(--mention-color);background:color-mix(in srgb, var(--mention-color) 10%, transparent);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.mention-dropdown__item-icon--variable{color:var(--mention-success);background:color-mix(in srgb, var(--mention-success) 12%, transparent)}.mention-dropdown__item-icon--code{color:var(--mention-warning);background:color-mix(in srgb, var(--mention-warning) 12%, transparent)}.mention-dropdown__item-thumb{object-fit:cover;border-radius:4px;flex-shrink:0;width:20px;height:20px}.mention-dropdown__item-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.node-prompt-bar{z-index:10;pointer-events:none;opacity:0;width:420px;transition:opacity .2s,translate .2s,scale .2s;position:absolute;bottom:0;left:50%;transform:translate(-50%)translateY(calc(100% + 8px))translateY(-6px)scale(.97)}.node-prompt-bar--visible{pointer-events:auto;opacity:1;translate:0;scale:1}.node-prompt-bar__form{background:var(--color-bg-secondary);border:1.5px solid var(--color-border-primary);box-shadow:0 2px 12px var(--color-shadow-subtle);border-radius:12px;flex-direction:column;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.node-prompt-bar__form:focus-within{background:var(--color-bg-primary);border-color:var(--color-input-focus-border);box-shadow:0 0 0 3px var(--color-input-focus-ring)}.node-prompt-bar__overlay{z-index:5;background:var(--color-bg-secondary);opacity:.6;cursor:not-allowed;border-radius:12px;position:absolute;inset:0}.node-prompt-bar__attachments{scrollbar-width:thin;scrollbar-color:var(--color-text-quaternary) transparent;flex-flow:row;gap:8px;padding:10px 10px 8px;display:flex;overflow:auto hidden}.node-prompt-bar__attachments::-webkit-scrollbar{height:6px}.node-prompt-bar__attachments::-webkit-scrollbar-track{background:0 0}.node-prompt-bar__attachments::-webkit-scrollbar-thumb{background:var(--color-text-quaternary);border-radius:3px}.node-prompt-bar__attachment{cursor:grab;border-radius:6px;flex-shrink:0;width:56px;height:56px;transition:opacity .2s,box-shadow .15s;position:relative}.node-prompt-bar__attachment:active{cursor:grabbing}.node-prompt-bar__attachment:hover .node-prompt-bar__attachment-remove{opacity:1}.node-prompt-bar__attachment--dragging{opacity:.4}.node-prompt-bar__attachment--drag-over{box-shadow:-2px 0 0 0 var(--color-brand)}.node-prompt-bar__attachment-thumb{background:var(--color-bg-tertiary);border-radius:6px;width:100%;height:100%;position:relative;overflow:hidden}.node-prompt-bar__attachment-thumb img{object-fit:cover;width:100%;height:100%;display:block}.node-prompt-bar__attachment-spinner{background:color-mix(in srgb, var(--color-progress-overlay), transparent 22%);color:var(--color-spinner-on-dark);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.node-prompt-bar__attachment-spinner:after{content:"";border:2px solid color-mix(in srgb, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite node-prompt-spin}@keyframes node-prompt-spin{to{transform:rotate(360deg)}}.node-prompt-bar__attachment-link-badge{background:var(--color-media-overlay);width:16px;height:16px;color:var(--color-spinner-on-dark);pointer-events:none;z-index:2;border-radius:4px;justify-content:center;align-items:center;display:flex;position:absolute;bottom:2px;left:2px}.node-prompt-bar__attachment-link-badge svg{width:10px;height:10px}.node-prompt-bar__attachment-remove{border:1px solid var(--color-border-primary);background:var(--color-bg-secondary);cursor:pointer;width:18px;height:18px;color:var(--color-text-tertiary);opacity:0;z-index:3;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .15s,background .15s,color .15s;display:flex;position:absolute;top:-5px;right:-5px}.node-prompt-bar__attachment-remove svg{width:10px;height:10px}.node-prompt-bar__attachment-remove:hover{background:var(--color-hover-bg);color:var(--color-text-primary)}.node-prompt-bar__divider{background:var(--color-border-primary);height:1px;margin:0 10px}.node-prompt-bar__toolbar{justify-content:space-between;align-items:center;padding:4px 6px;display:flex}.node-prompt-bar__actions{align-items:center;gap:4px;display:flex}.node-prompt-bar__action-btn{cursor:pointer;width:28px;height:28px;color:var(--color-text-tertiary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.node-prompt-bar__action-btn:hover{background:var(--color-hover-bg);color:var(--color-text-secondary)}.node-prompt-bar__action-btn:disabled{opacity:.4;cursor:not-allowed}.node-prompt-bar__send{background:var(--color-send-btn-bg);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;width:28px;height:28px;margin:0;padding:0;transition:background .15s,opacity .15s;position:relative}.node-prompt-bar__send svg{width:14px;height:14px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.node-prompt-bar__send:disabled{opacity:.4;cursor:not-allowed}.node-prompt-bar__send:not(:disabled):hover{background:var(--color-send-btn-hover)}.node-prompt-bar__send:not(:disabled):active{transform:scale(.92)}.node-prompt-bar__hint{color:var(--color-text-quaternary);white-space:nowrap;margin-right:4px;font-size:11px}.canvas-node{background:color-mix(in srgb, var(--color-bg-primary) 92%, transparent);border:1px solid var(--color-border-subtle);width:100%;height:100%;box-shadow:0 8px 28px var(--color-shadow-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:10px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.react-flow__node:hover .canvas-node{border-color:var(--color-border-secondary);box-shadow:0 4px 16px var(--color-shadow)}.react-flow__node.selected .canvas-node,.canvas-node.selected{border-color:var(--color-brand);box-shadow:0 0 0 2px var(--color-input-focus-ring)}.canvas-node--running{border-color:var(--color-brand);animation:1.4s ease-in-out infinite canvas-node-running-glow}@keyframes canvas-node-running-glow{0%,to{box-shadow:0 0 0 2px color-mix(in srgb, var(--color-brand) 40%, transparent), 0 0 16px color-mix(in srgb, var(--color-brand) 35%, transparent)}50%{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-brand) 65%, transparent), 0 0 26px color-mix(in srgb, var(--color-brand) 55%, transparent)}}.canvas-node-handle{z-index:1;pointer-events:none!important;background:0 0!important;border:none!important;width:16px!important;height:16px!important}.canvas-node-handle.react-flow__handle-left{left:0!important;transform:translateY(-50%)!important}.canvas-node-handle.react-flow__handle-right{right:0!important;transform:translateY(-50%)!important}.canvas-handle-ball{background:var(--color-bg-primary);border:2px solid var(--color-border-secondary);pointer-events:auto;cursor:crosshair;opacity:0;will-change:transform, opacity;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;transition:transform .14s cubic-bezier(.34,1.4,.5,1),opacity .18s,background .15s,border-color .15s;display:flex;position:absolute;top:0;left:0}.canvas-handle-ball .canvas-handle-icon{width:8px;height:8px;color:var(--color-text-tertiary);transition:color .15s}.canvas-handle-ball:hover{background:var(--color-brand);border-color:var(--color-brand)}.canvas-handle-ball:hover .canvas-handle-icon{color:var(--color-spinner-on-dark)}.canvas-handle-ball--silent{pointer-events:none;opacity:0!important}.react-flow__node .react-flow__resize-control{display:none!important}.react-flow__node .react-flow__resize-control.bottom.right{cursor:nwse-resize;background:0 0!important;border:none!important;width:16px!important;height:16px!important;display:block!important}.react-flow__node .react-flow__resize-control.bottom.right:after{content:"";background:linear-gradient(135deg, transparent 30%, var(--color-text-quaternary) 30%, var(--color-text-quaternary) 35%, transparent 35%, transparent 55%, var(--color-text-quaternary) 55%, var(--color-text-quaternary) 60%, transparent 60%, transparent 80%, var(--color-text-quaternary) 80%, var(--color-text-quaternary) 85%, transparent 85%);opacity:0;width:10px;height:10px;transition:opacity .15s;position:absolute;bottom:3px;right:3px}.react-flow__node:hover .react-flow__resize-control.bottom.right:after{opacity:1}.canvas-text-node__inner{width:100%;height:100%;position:relative}.canvas-text-node__textarea{width:100%;height:100%;color:var(--color-text-primary);resize:none;background:0 0;border:none;outline:none;padding:12px;font-family:inherit;font-size:14px;line-height:1.6}.canvas-text-node__textarea::placeholder{color:var(--color-text-hint)}.canvas-text-node__textarea::-webkit-scrollbar{width:6px}.canvas-text-node__textarea::-webkit-scrollbar-track{background:0 0}.canvas-text-node__textarea::-webkit-scrollbar-thumb{background:var(--color-border-primary);border-radius:3px}.canvas-text-node__textarea::-webkit-scrollbar-thumb:hover{background:var(--color-text-quaternary)}.canvas-text-node__textarea{scrollbar-width:thin;scrollbar-color:var(--color-border-primary) transparent}.canvas-text-node__textarea--preview{pointer-events:none;cursor:default;-webkit-user-select:none;user-select:none}.canvas-text-node__progress{background:var(--color-progress-overlay);color:var(--color-spinner-on-dark);z-index:2;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex;position:absolute;inset:0}.canvas-text-node__progress-text{font-size:13px;font-weight:500}.canvas-text-node__progress-spinner{border:3px solid color-mix(in srgb, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;width:24px;height:24px;animation:.8s linear infinite text-node-spin}@keyframes text-node-spin{to{transform:rotate(360deg)}}.image-gallery-modal{flex-direction:column;width:560px;max-width:90vw;max-height:85vh;padding:0;display:flex;overflow:hidden}.image-gallery-modal__header{flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex}.image-gallery-modal__title{color:var(--color-text-primary);font-size:15px;font-weight:600}.image-gallery-modal__close{width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.image-gallery-modal__close svg{width:16px;height:16px}.image-gallery-modal__close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.image-gallery-modal__preview{flex:1;justify-content:center;align-items:center;min-height:0;padding:0 20px;display:flex;overflow:hidden}.image-gallery-modal__preview img{object-fit:contain;background:var(--color-bg-tertiary);border-radius:8px;max-width:100%;max-height:380px}.image-gallery-modal__thumbs{flex-shrink:0;justify-content:center;gap:8px;padding:14px 20px;display:flex}.image-gallery-modal__thumb{border:2px solid var(--color-border-primary);cursor:pointer;background:var(--color-bg-tertiary);border-radius:8px;flex-shrink:0;width:64px;height:64px;padding:0;transition:border-color .15s,box-shadow .15s;position:relative;overflow:hidden}.image-gallery-modal__thumb img{object-fit:cover;width:100%;height:100%;display:block}.image-gallery-modal__thumb:hover{border-color:var(--color-border-secondary)}.image-gallery-modal__thumb--active{border-color:var(--color-link);box-shadow:0 0 0 2px var(--color-input-focus-ring)}.image-gallery-modal__thumb-badge{color:var(--color-spinner-on-dark);background:var(--color-link);white-space:nowrap;border-radius:6px;padding:1px 6px;font-size:9px;font-weight:600;line-height:1.4;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.image-gallery-modal__actions{flex-shrink:0;justify-content:center;gap:8px;padding:4px 20px 16px;display:flex}.image-gallery-modal__action-btn{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;border-radius:8px;padding:7px 18px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s}.image-gallery-modal__action-btn:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary)}.image-gallery-modal__action-btn--primary{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:var(--color-btn-primary-bg)}.image-gallery-modal__action-btn--primary:hover{opacity:.9;background:var(--color-btn-primary-bg)}.image-gallery-modal__action-btn:disabled{opacity:.45;cursor:not-allowed}.canvas-node:has(>.canvas-image-node__input){position:relative}.canvas-image-node__input{display:none}.canvas-image-node__img{object-fit:contain;width:100%;height:100%;display:block}.canvas-image-node__stack-card{background:var(--color-bg-secondary);border:1.5px solid var(--color-border-primary);box-shadow:0 1px 4px var(--color-shadow-subtle);border-radius:12px;position:absolute;inset:0}.canvas-image-node__stack-card--2{transform-origin:50%;z-index:-1;transform:rotate(3deg)}.canvas-image-node__stack-card--3{transform-origin:50%;z-index:-2;opacity:.75;transform:rotate(-4deg)}.canvas-image-node__stack-main{cursor:pointer;width:100%;height:100%;position:relative}.canvas-image-node__stack-badge{z-index:2;color:var(--color-spinner-on-dark);background:var(--color-media-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;line-height:1.5;transition:background .15s;position:absolute;bottom:8px;left:8px}.canvas-image-node__stack-badge:hover{background:color-mix(in srgb, var(--color-media-overlay), #000 25%)}.canvas-image-node__empty{width:100%;height:100%;color:var(--color-text-hint);-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:13px;display:flex}.canvas-image-node__empty-icon{width:32px;height:32px}.canvas-image-node__progress{background:var(--color-progress-overlay);color:var(--color-spinner-on-dark);z-index:2;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex;position:absolute;inset:0}.canvas-image-node__progress-text{font-size:13px;font-weight:500}.canvas-image-node__progress-bar{background:color-mix(in srgb, currentColor 25%, transparent);border-radius:999px;width:70%;height:4px;overflow:hidden}.canvas-image-node__progress-bar-fill{background:currentColor;border-radius:999px;height:100%;transition:width .15s linear}.canvas-image-node__generating-spinner{border:3px solid color-mix(in srgb, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;width:24px;height:24px;animation:.8s linear infinite image-node-spin}@keyframes image-node-spin{to{transform:rotate(360deg)}}.canvas-image-node__actions{opacity:0;z-index:3;gap:4px;transition:opacity .15s;display:flex;position:absolute;top:6px;right:6px}.react-flow__node:hover .canvas-image-node__actions,.react-flow__node.selected .canvas-image-node__actions{opacity:1}.canvas-image-node__action-btn{background:var(--color-media-overlay);width:26px;height:26px;color:var(--color-spinner-on-dark);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .15s;display:flex}.canvas-image-node__action-btn svg{width:14px;height:14px}.canvas-image-node__action-btn:hover{background:var(--color-btn-primary-bg)}.canvas-image-node__action-btn--danger:hover{background:var(--color-danger-strong)}:is(.canvas-node:has(>.canvas-video-node__video),.canvas-node:has(>.canvas-video-node__empty),.canvas-node:has(>.canvas-video-node__progress)){position:relative}.canvas-video-node__video{object-fit:contain;background:var(--color-media-placeholder-bg);pointer-events:none;width:100%;height:100%;display:block}.canvas-video-node__play-btn{background:var(--color-media-overlay);width:56px;height:56px;color:var(--color-spinner-on-dark);cursor:pointer;pointer-events:auto;z-index:4;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .15s,opacity .2s,transform .18s cubic-bezier(.34,1.4,.5,1);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.canvas-video-node__play-btn svg{width:28px;height:28px;margin-left:3px}.canvas-video-node__play-btn:hover{background:color-mix(in srgb, var(--color-media-overlay), #000 25%);transform:translate(-50%,-50%)scale(1.05)}.canvas-video-node__play-btn--playing{opacity:0}.canvas-video-node__play-btn--playing svg{margin-left:0}.react-flow__node:hover .canvas-video-node__play-btn--playing{opacity:.85}.canvas-video-node__empty{width:100%;height:100%;color:var(--color-text-hint);-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:13px;display:flex}.canvas-video-node__empty-icon{width:32px;height:32px}.canvas-video-node__progress{background:var(--color-progress-overlay);color:var(--color-spinner-on-dark);z-index:2;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex;position:absolute;inset:0}.canvas-video-node__progress-text{font-size:13px;font-weight:500}.canvas-video-node__progress-bar{background:color-mix(in srgb, currentColor 25%, transparent);border-radius:999px;width:70%;height:4px;overflow:hidden}.canvas-video-node__progress-bar-fill{background:currentColor;border-radius:999px;height:100%;transition:width .15s linear}.canvas-video-node__generating-spinner{border:3px solid color-mix(in srgb, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;width:24px;height:24px;animation:.8s linear infinite video-node-spin}@keyframes video-node-spin{to{transform:rotate(360deg)}}.canvas-video-node__actions{opacity:0;z-index:3;gap:4px;transition:opacity .15s;display:flex;position:absolute;top:6px;right:6px}.react-flow__node:hover .canvas-video-node__actions,.react-flow__node.selected .canvas-video-node__actions{opacity:1}.canvas-video-node__action-btn{background:var(--color-media-overlay);width:26px;height:26px;color:var(--color-spinner-on-dark);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .15s;display:flex}.canvas-video-node__action-btn svg{width:14px;height:14px}.canvas-video-node__action-btn:hover{background:var(--color-btn-primary-bg)}.canvas-video-node__action-btn--danger:hover{background:var(--color-danger-strong)}.canvas-node.canvas-start-node{width:260px;height:auto}.canvas-start-node{flex-direction:column;gap:10px;padding:12px;display:flex}.canvas-start-node__header{color:var(--color-text-secondary);flex-shrink:0;align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.canvas-start-node__lock{width:14px;height:14px;color:var(--color-text-tertiary);flex-shrink:0}.canvas-start-node__title{flex:1}.canvas-start-node__list{flex-direction:column;flex:1;gap:6px;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.canvas-start-node__empty{color:var(--color-text-hint);text-align:center;padding:10px 0;font-size:12px}.canvas-start-node__row{align-items:center;gap:4px;display:flex}.canvas-start-node__type{flex-shrink:0}.canvas-start-node__type .c-select__trigger{border-radius:5px;height:26px;padding:0 6px;font-size:11px}.canvas-start-node__input{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);min-width:0;color:var(--color-text-primary);border-radius:5px;flex:1;padding:4px 8px;font-family:inherit;font-size:12px;transition:border-color .15s}.canvas-start-node__input:focus{border-color:var(--color-brand);outline:none}.canvas-start-node__input--key{max-width:32%;font-weight:500}.canvas-start-node__input[type=number]{-moz-appearance:textfield}.canvas-start-node__input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.canvas-start-node__input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.canvas-start-node__eq{color:var(--color-text-tertiary);flex-shrink:0;font-size:12px}.canvas-start-node__remove{width:22px;height:22px;color:var(--color-text-hint);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;transition:background .15s,color .15s;display:flex}.canvas-start-node__remove:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.canvas-start-node__add{border:1px dashed var(--color-border-secondary);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;margin-top:2px;padding:6px 10px;font-size:12px;transition:border-color .15s,color .15s}.canvas-start-node__add:hover{border-color:var(--color-brand);color:var(--color-brand)}.canvas-node.canvas-branch-node{width:460px;height:auto}.canvas-branch-node{flex-direction:column;gap:10px;padding:12px;display:flex}.canvas-branch-node__desc{color:var(--color-text-tertiary);flex-shrink:0;font-size:12px}.canvas-branch-node__section{background:color-mix(in srgb, var(--color-bg-secondary) 60%, transparent);border:1px solid var(--color-border-subtle);border-radius:8px;flex-direction:column;gap:6px;padding:10px;display:flex}.canvas-branch-node__section--if{flex:1;min-height:0}.canvas-branch-node__section--else{flex-shrink:0}.canvas-branch-node__section-header{color:var(--color-text-secondary);letter-spacing:.4px;font-size:13px;font-weight:600}.canvas-branch-node__list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex;overflow:visible}.canvas-branch-node__row{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.canvas-branch-node__select{flex:1;min-width:100px}.canvas-branch-node__select--var{flex:1.4}.canvas-branch-node__select--op{flex:1}.canvas-branch-node__input{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);min-width:80px;color:var(--color-text-primary);border-radius:5px;flex:1.2;padding:6px 8px;font-family:inherit;font-size:12px;transition:border-color .15s}.canvas-branch-node__input:focus{border-color:var(--color-brand);outline:none}.canvas-branch-node__remove{width:22px;height:22px;color:var(--color-text-hint);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;transition:background .15s,color .15s;display:flex}.canvas-branch-node__remove:hover:not(:disabled){background:var(--color-bg-secondary);color:var(--color-text-primary)}.canvas-branch-node__remove:disabled{opacity:.5;cursor:not-allowed}.canvas-branch-node__add{border:1px dashed var(--color-border-secondary);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:6px;align-self:flex-start;margin-top:2px;padding:5px 8px;font-size:12px;transition:border-color .15s,color .15s}.canvas-branch-node__add:hover:not(:disabled){border-color:var(--color-brand);color:var(--color-brand)}.canvas-branch-node__add:disabled{opacity:.5;cursor:not-allowed}.canvas-branch-node__else-hint{color:var(--color-text-hint);font-size:12px}.canvas-node.canvas-set-variable-node{width:400px;height:auto}.canvas-set-variable-node{flex-direction:column;gap:10px;padding:12px;display:flex}.canvas-set-variable-node__desc{color:var(--color-text-tertiary);flex-shrink:0;font-size:12px}.canvas-set-variable-node__list{flex-direction:column;flex:1;gap:10px;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.canvas-set-variable-node__card{border:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-bg-secondary) 35%, transparent);border-radius:8px;flex-direction:column;gap:10px;padding:10px 12px;transition:border-color .15s;display:flex;position:relative}.canvas-set-variable-node__card:hover{border-color:var(--color-border-secondary)}.canvas-set-variable-node__section{flex-direction:column;gap:6px;display:flex}.canvas-set-variable-node__label{color:var(--color-text-secondary);align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.canvas-set-variable-node__required{color:var(--color-danger,#e5484d);line-height:1}.canvas-set-variable-node__row{align-items:center;gap:6px;display:flex}.canvas-set-variable-node__select .c-select__trigger{width:100%}.canvas-set-variable-node__select--var,.canvas-set-variable-node__select--ref{flex:1;min-width:0}.canvas-set-variable-node__select--var .c-select__trigger,.canvas-set-variable-node__select--ref .c-select__trigger{height:32px;font-size:12px}.canvas-set-variable-node__select--mode .c-select__trigger{height:22px;color:var(--color-text-tertiary);border-radius:4px;padding:0 6px;font-size:11px}.canvas-set-variable-node__select--op{flex-shrink:0;width:56px}.canvas-set-variable-node__select--op .c-select__trigger{justify-content:space-between;height:32px;padding:0 8px;font-size:14px;font-weight:500}.canvas-set-variable-node__type-badge{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);color:var(--color-text-secondary);-webkit-user-select:none;user-select:none;border-radius:6px;flex-shrink:0;padding:4px 10px;font-size:12px;line-height:1.4}.canvas-set-variable-node__textarea{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);width:100%;min-height:72px;color:var(--color-text-primary);resize:vertical;border-radius:6px;padding:8px 10px;font-family:inherit;font-size:12px;transition:border-color .15s}.canvas-set-variable-node__textarea:focus{border-color:var(--color-brand);outline:none}.canvas-set-variable-node__textarea:disabled{opacity:.5;cursor:not-allowed}.canvas-set-variable-node__number-row{align-items:stretch;gap:6px;display:flex}.canvas-set-variable-node__input{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);min-width:0;color:var(--color-text-primary);border-radius:6px;flex:1;padding:6px 10px;font-family:inherit;font-size:13px;transition:border-color .15s}.canvas-set-variable-node__input:focus{border-color:var(--color-brand);outline:none}.canvas-set-variable-node__input:disabled{opacity:.5;cursor:not-allowed}.canvas-set-variable-node__input--number{-moz-appearance:textfield}.canvas-set-variable-node__input--number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.canvas-set-variable-node__input--number::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.canvas-set-variable-node__remove{width:22px;height:22px;color:var(--color-text-hint);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:11px;transition:background .15s,color .15s;display:flex;position:absolute;top:6px;right:6px}.canvas-set-variable-node__remove:hover:not(:disabled){background:var(--color-bg-secondary);color:var(--color-text-primary)}.canvas-set-variable-node__remove:disabled{opacity:0;pointer-events:none}.canvas-set-variable-node__add{border:1px dashed var(--color-border-secondary);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;margin-top:2px;padding:8px 10px;font-size:12px;transition:border-color .15s,color .15s}.canvas-set-variable-node__add:hover:not(:disabled){border-color:var(--color-brand);color:var(--color-brand)}.canvas-set-variable-node__add:disabled{opacity:.5;cursor:not-allowed}.canvas-node.canvas-code-node{width:480px;height:auto}.canvas-code-node{flex-direction:column;gap:12px;padding:12px;display:flex}.canvas-code-node__desc{color:var(--color-text-tertiary);flex-shrink:0;font-size:12px;line-height:1.5}.canvas-code-node__section{border:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-bg-secondary) 35%, transparent);border-radius:8px;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.canvas-code-node__section-bar{background:color-mix(in srgb, var(--color-bg-secondary) 50%, transparent);border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:6px;padding:8px 12px;display:flex}.canvas-code-node__section-bar-dot{background:var(--color-brand);border-radius:2px;width:3px;height:14px}.canvas-code-node__section-bar-dot--out{background:var(--color-success,#2dba6a)}.canvas-code-node__section-title{color:var(--color-text-primary);font-size:13px;font-weight:600}.canvas-code-node__section-body{flex-direction:column;gap:8px;padding:10px 12px;display:flex}.canvas-code-node__sub-title{color:var(--color-text-secondary);font-size:12px;font-weight:500}.canvas-code-node__table-head{color:var(--color-text-tertiary);align-items:center;gap:6px;padding:0 2px;font-size:11px;font-weight:500;display:flex}.canvas-code-node__list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex;overflow:visible}.canvas-code-node__row{align-items:center;gap:6px;display:flex}.canvas-code-node__col--name{flex:1.1;min-width:0}.canvas-code-node__col--source{flex:1.5;min-width:0}.canvas-code-node__col--type{flex:.9;min-width:0}.canvas-code-node__col--type-wide{flex:1;min-width:0}.canvas-code-node__col--del{flex:0 0 24px}.canvas-code-node__input{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);color:var(--color-text-primary);border-radius:6px;padding:6px 10px;font-family:inherit;font-size:12px;transition:border-color .15s}.canvas-code-node__input:focus{border-color:var(--color-brand);outline:none}.canvas-code-node__input[readonly]{opacity:.7;cursor:not-allowed}.canvas-code-node__select .c-select__trigger{width:100%;height:32px;font-size:12px}.canvas-code-node__type-badge{border:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-bg-secondary) 50%, transparent);height:32px;color:var(--color-text-secondary);-webkit-user-select:none;user-select:none;box-sizing:border-box;border-radius:6px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;display:inline-flex}.canvas-code-node__remove{width:24px;height:24px;color:var(--color-text-hint);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:11px;transition:background .15s,color .15s;display:flex}.canvas-code-node__remove:hover:not(:disabled){background:var(--color-bg-secondary);color:var(--color-text-primary)}.canvas-code-node__remove:disabled{opacity:.4;cursor:not-allowed}.canvas-code-node__add{border:1px dashed var(--color-border-secondary);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:6px;align-self:flex-start;margin-top:2px;padding:6px 10px;font-size:12px;transition:border-color .15s,color .15s}.canvas-code-node__add:hover:not(:disabled){border-color:var(--color-brand);color:var(--color-brand)}.canvas-code-node__add:disabled{opacity:.5;cursor:not-allowed}.canvas-code-node__code-head{background:color-mix(in srgb, var(--color-bg-secondary) 50%, transparent);border-bottom:1px solid var(--color-border-subtle);border-top-left-radius:8px;border-top-right-radius:8px;justify-content:space-between;align-items:center;padding:6px 12px;display:flex}.canvas-code-node__lang-pill{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);color:var(--color-text-secondary);border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.canvas-code-node__reset{color:var(--color-brand);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:12px;transition:background .15s}.canvas-code-node__reset:hover:not(:disabled){background:color-mix(in srgb, var(--color-brand) 12%, transparent)}.canvas-code-node__reset:disabled{opacity:.5;cursor:not-allowed}.canvas-code-node__code{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);border-top:none;border-radius:0 0 8px 8px;overflow:hidden}.canvas-edge-cut-anchor{pointer-events:none;position:absolute}.canvas-edge--running .react-flow__edge-path{stroke:var(--color-brand);stroke-width:2.5px;transition:stroke .18s}.canvas-edge__flow{stroke:var(--color-brand);stroke-width:3px;stroke-dasharray:8 12;stroke-linecap:round;filter:drop-shadow(0 0 4px color-mix(in srgb, var(--color-brand) 60%, transparent));animation:.8s linear infinite canvas-edge-flow}@keyframes canvas-edge-flow{to{stroke-dashoffset:-20px}}.canvas-edge-cut{pointer-events:none;background:var(--color-bg-primary);border:1.5px solid var(--color-border-secondary);width:26px;height:26px;color:var(--color-text-secondary);cursor:pointer;box-shadow:0 2px 8px var(--color-shadow-subtle);opacity:0;transform-origin:50%;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:opacity .18s,transform .24s cubic-bezier(.34,1.4,.5,1),background .15s,border-color .15s,color .15s,box-shadow .15s;display:flex;transform:scale(.55)}.canvas-edge-cut svg{pointer-events:none;width:14px;height:14px}.canvas-edge-cut--visible{pointer-events:auto;opacity:1;transform:scale(1)}.canvas-edge-cut:hover{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-spinner-on-dark);box-shadow:0 2px 12px color-mix(in srgb, var(--color-danger) 40%, transparent)}.canvas-edge-cut:active{transform:scale(.92)}.canvas-page{background:radial-gradient(circle at 18% 16%, var(--color-brand-soft), transparent 28%), var(--color-bg-page);width:100%;height:100vh;color:var(--color-text-primary);position:relative;overflow:hidden}.canvas-page .canvas-topbar{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;padding:14px 20px;display:flex;position:absolute;top:0;left:0;right:0}.canvas-page .canvas-topbar>*{pointer-events:auto}.canvas-page .canvas-topbar__left{align-items:center;gap:12px;display:flex}.canvas-page .canvas-topbar__right{align-items:center;gap:8px;display:flex}.canvas-page .canvas-back,.canvas-page .canvas-new-btn{border:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-bg-primary) 88%, transparent);color:var(--color-text-secondary);cursor:pointer;box-shadow:0 2px 8px var(--color-shadow-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:7px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;transition:background .2s,color .2s,border-color .2s,transform .2s;display:inline-flex}.canvas-page .canvas-back svg,.canvas-page .canvas-new-btn svg{width:16px;height:16px}.canvas-page .canvas-back:hover:not(:disabled),.canvas-page .canvas-new-btn:hover:not(:disabled){background:var(--color-hover-bg);color:var(--color-text-primary);border-color:var(--color-border-secondary)}.canvas-page .canvas-back:disabled,.canvas-page .canvas-new-btn:disabled,.canvas-page .canvas-title-btn:disabled{opacity:.5;cursor:not-allowed}.canvas-page .canvas-back:hover{transform:translate(-2px)}.canvas-page .canvas-new-btn:hover{transform:translate(2px)}.canvas-page .canvas-title-btn{color:var(--color-text-secondary);cursor:pointer;font-family:var(--font-mono-ui);background:0 0;border:1px solid #0000;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s,color .15s}.canvas-page .canvas-title-btn:hover{background:var(--color-bg-primary);border-color:var(--color-border-primary);color:var(--color-text-primary);box-shadow:0 2px 8px var(--color-shadow-subtle)}.canvas-page .canvas-save-btn{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);cursor:pointer;box-shadow:0 2px 8px var(--color-shadow-subtle);border:none;border-radius:7px;padding:8px 20px;font-size:14px;font-weight:500;transition:background .2s,opacity .2s}.canvas-page .canvas-save-btn:hover{background:var(--color-btn-primary-bg-hover)}.canvas-page .canvas-save-btn:disabled{opacity:.6;cursor:not-allowed}.canvas-page .canvas-save-btn .btn-spinner{width:14px;height:14px}.canvas-page .canvas-stop-btn{border:1px solid var(--color-danger);background:color-mix(in srgb, var(--color-danger) 14%, transparent);color:var(--color-danger);cursor:pointer;box-shadow:0 2px 8px var(--color-shadow-subtle);border-radius:7px;align-items:center;gap:8px;padding:8px 18px;font-size:14px;font-weight:500;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.canvas-page .canvas-stop-btn .btn-spinner{border-color:var(--color-danger);border-top-color:#0000;width:12px;height:12px}.canvas-page .canvas-stop-btn:hover{background:var(--color-danger);color:var(--color-spinner-on-dark)}.canvas-page .canvas-stop-btn:hover .btn-spinner{border-color:#0000 currentColor currentColor}.canvas-page .canvas-left-area--locked{pointer-events:none;opacity:.5}.canvas-page .canvas-run-btn{border:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-bg-primary) 88%, transparent);color:var(--color-text-secondary);cursor:pointer;box-shadow:0 2px 8px var(--color-shadow-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:7px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.canvas-page .canvas-run-btn svg{width:14px;height:14px}.canvas-page .canvas-run-btn:hover{background:var(--color-hover-bg);color:var(--color-brand);border-color:var(--color-brand)}.canvas-page .react-flow{background:0 0;width:100%;height:100%}.canvas-page .react-flow__background{background:0 0}.canvas-page .react-flow__background .react-flow__background-pattern{color:var(--color-text-hint);fill:var(--color-text-hint)}.canvas-page .react-flow__pane{cursor:grab}.canvas-page .react-flow__pane:active{cursor:grabbing}.canvas-page .canvas-pending-menu .canvas-add-node-menu{animation:.14s ease-out canvas-pending-menu-in;position:static;transform:none}@keyframes canvas-pending-menu-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.canvas-page .react-flow__node{color:var(--color-text-primary)}.canvas-page .react-flow__edge-path{stroke:var(--color-text-quaternary);stroke-width:2px}.canvas-page .react-flow__connection-path{stroke:var(--color-link);stroke-width:2px}.canvas-page svg.react-flow__connectionline{z-index:0!important}.canvas-unsaved-save-btn.confirm-modal-confirm{background:var(--color-link)}.canvas-unsaved-save-btn.confirm-modal-confirm:hover:not(:disabled){background:var(--color-link-hover)}.dcgo-v21-user-menu{display:inline-block;position:relative}.dcgo-v21-avatar-trigger{background:var(--color-text-primary);color:#fff;cursor:pointer;border:0;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;font-size:12px;font-weight:500;transition:opacity .15s;display:grid;overflow:hidden}.dcgo-v21-avatar-trigger:hover{opacity:.85}.dcgo-v21-avatar-trigger img{object-fit:cover;width:100%;height:100%}.dcgo-v21-user-dropdown{-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border,#00000014);z-index:100;color:#1f2329;background:#ffffffb3;border-radius:8px;min-width:220px;padding:6px;font-size:13px;animation:.16s ease-out dcgo-v21-user-menu-in;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #0000001f}[data-theme=dark] .dcgo-v21-user-dropdown{color:#e4e4e7;background:#1a1b1eb3;border-color:#ffffff14;box-shadow:0 8px 24px #0006}[data-theme=dark] .dcgo-v21-user-dropdown .dcgo-v21-user-header .name,[data-theme=dark] .dcgo-v21-user-dropdown .dcgo-v21-menu-item{color:#e4e4e7}[data-theme=dark] .dcgo-v21-user-dropdown .dcgo-v21-user-header .email,[data-theme=dark] .dcgo-v21-user-dropdown .theme-label{color:#9ca3af}[data-theme=dark] .dcgo-v21-user-dropdown .theme-option{color:#9ca3af;border-color:#ffffff1f}[data-theme=dark] .dcgo-v21-user-dropdown .theme-option:hover{color:#e4e4e7;border-color:#ffffff4d}@keyframes dcgo-v21-user-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dcgo-v21-user-header{border-bottom:1px solid var(--color-border,#00000014);margin-bottom:4px;padding:8px 10px}.dcgo-v21-user-header .name{color:var(--color-text-primary,#1f2329);font-weight:600}.dcgo-v21-user-header .email{color:var(--color-text-tertiary,#6b7280);word-break:break-all;margin-top:2px;font-size:11px}.dcgo-v21-menu-item{width:100%;color:var(--color-text-primary,#1f2329);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:7px 10px;font-size:13px;display:block}.dcgo-v21-menu-item:hover{background:var(--color-bg-secondary,#0000000a)}.dcgo-v21-menu-item.danger{color:var(--color-danger,#ef4444)}.dcgo-v21-menu-item.danger:hover{background:#ef444414}.dcgo-v21-menu-divider{background:var(--color-border);height:1px;margin:4px 0}.dcgo-v21-menu-theme{padding:6px 10px}.dcgo-v21-menu-theme .theme-label{color:var(--color-text-tertiary,#6b7280);margin-bottom:6px;font-size:11px}.dcgo-v21-menu-theme .theme-options{gap:4px;display:flex}.dcgo-v21-menu-theme .theme-option{border:1px solid var(--color-border,#00000014);color:var(--color-text-secondary,#4b5563);cursor:pointer;background:0 0;border-radius:4px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 4px;font-size:11px;display:flex}.dcgo-v21-menu-theme .theme-option svg{width:16px;height:16px}.dcgo-v21-menu-theme .theme-option:hover{border-color:var(--color-text-tertiary,#6b7280);color:var(--color-text-primary,#1f2329)}.dcgo-v21-menu-theme .theme-option.active{border-color:var(--color-brand);background:var(--color-brand);color:#fff}.dcgo-v21-canvas{flex:1;min-height:0;display:flex;overflow:hidden}.dcgo-v21-chat-pane{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.cgo-card{background:var(--color-bg-primary);border:1px solid var(--color-border-subtle);border-radius:12px;flex-direction:column;gap:12px;margin:8px 0;padding:16px 18px;font-size:13px;display:flex}.cgo-card-title{color:var(--color-text-secondary);letter-spacing:.2px;font-size:13px;font-weight:600}.cgo-card-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:4px;display:flex}.cgo-card-actions .cgo-card-meta{color:var(--color-text-tertiary);margin-right:auto;font-size:12px}.cgo-btn-primary,.cgo-btn-secondary{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;border-radius:6px;padding:6px 14px;font-family:inherit;font-size:12px;transition:background .15s,opacity .15s}.cgo-btn-primary:hover:not(:disabled),.cgo-btn-secondary:hover:not(:disabled){background:var(--color-hover-bg)}.cgo-btn-primary:disabled,.cgo-btn-secondary:disabled{opacity:.4;cursor:not-allowed}.cgo-btn-primary{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:var(--color-btn-primary-bg)}.cgo-btn-primary:hover:not(:disabled){background:var(--color-btn-primary-bg-hover)}[data-theme=dark] .cgo-btn-secondary{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:var(--color-text-tertiary);opacity:.92}[data-theme=dark] .cgo-btn-secondary:hover:not(:disabled){background:var(--color-btn-primary-bg-hover);opacity:1}.cgo-brief-rows{flex-direction:column;gap:10px;display:flex}.cgo-brief-row{grid-template-columns:60px 1fr;align-items:start;gap:10px;display:grid}.cgo-brief-row label{color:var(--color-text-tertiary);padding-top:6px;font-size:12px}.cgo-brief-row textarea{border:1px solid var(--color-border-primary);background:var(--color-bg-secondary);width:100%;color:var(--color-text-primary);resize:vertical;border-radius:6px;min-height:40px;padding:6px 10px;font-family:inherit;font-size:13px;line-height:1.5}.cgo-brief-row textarea:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-input-focus-ring);outline:0}.cgo-direction-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (width<=900px){.cgo-direction-grid{grid-template-columns:1fr}}.cgo-direction{background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.cgo-direction.recommended{border-color:var(--color-brand);box-shadow:0 2px 12px var(--color-shadow-subtle)}.cgo-direction .cgo-direction-head{align-items:baseline;gap:6px;display:flex}.cgo-direction .cgo-direction-head .cgo-direction-id{background:var(--color-text-primary);width:20px;height:20px;color:var(--color-btn-primary-text);border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid}.cgo-direction .cgo-direction-head h4{color:var(--color-text-primary);flex:1;margin:0;font-size:14px}.cgo-direction .cgo-direction-head .cgo-tag-rec{background:var(--color-brand);color:#fff;border-radius:8px;padding:1px 6px;font-size:10px}.cgo-direction .cgo-direction-summary{color:var(--color-text-secondary);margin:0;font-size:12px;line-height:1.5}.cgo-direction .cgo-direction-tags{flex-wrap:wrap;gap:4px;display:flex}.cgo-direction .cgo-direction-tags span{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border-radius:8px;padding:1px 6px;font-size:10px}.cgo-direction dl.cgo-direction-meta{flex-direction:column;gap:2px;margin:4px 0 0;font-size:11px;display:flex}.cgo-direction dl.cgo-direction-meta>div{gap:4px;display:flex}.cgo-direction dl.cgo-direction-meta dt{color:var(--color-text-tertiary);flex-shrink:0;width:28px}.cgo-direction dl.cgo-direction-meta dd{color:var(--color-text-secondary);flex:1;min-width:0;margin:0}.cgo-direction .cgo-editable{cursor:text;box-sizing:border-box;word-break:break-word;white-space:pre-wrap;border:1px solid #0000;border-radius:3px;margin:-1px -4px;padding:1px 4px;line-height:1.5;transition:background-color .15s,border-color .15s;display:inline-block}.cgo-direction .cgo-editable:hover{background:var(--color-bg-hover,#0000000a);box-shadow:inset 0 -1px 0 0 var(--color-border-subtle)}.cgo-direction .cgo-editable.cgo-editable-disabled{cursor:default}.cgo-direction .cgo-editable.cgo-editable-disabled:hover{box-shadow:none;background:0 0}.cgo-direction .cgo-editable.cgo-editable-dirty{border-left:2px solid var(--color-accent,#1677ff);padding-left:6px}.cgo-direction .cgo-editable.cgo-editable-input{box-sizing:border-box;width:100%;font:inherit;color:inherit;background:var(--color-bg-elevated,var(--color-bg-primary));border:1px solid var(--color-accent,var(--color-input-focus-border));resize:none;white-space:pre-wrap;word-break:break-word;outline:none;line-height:1.5;display:block;overflow:hidden}.cgo-direction .cgo-editable-placeholder{color:var(--color-text-tertiary);font-style:italic}.cgo-direction .cgo-direction-spec{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.cgo-direction .cgo-spec-row{align-items:center;gap:4px;line-height:1.4;display:inline-flex}.cgo-direction .cgo-spec-label{color:var(--color-text-tertiary);flex-shrink:0;font-size:12px}.cgo-direction .cgo-spec-slot{box-sizing:border-box;align-items:center;min-height:22px;display:inline-flex}.cgo-direction .cgo-spec-slot>.cgo-editable{border:1px solid #0000;align-items:center;min-height:22px;margin:0;padding:1px 6px;display:inline-flex}.cgo-direction .cgo-spec-slot>.cgo-editable:hover{border-color:var(--color-border-subtle)}.cgo-direction .cgo-spec-slot>.cgo-editable-number{border:1px solid var(--color-input-focus-border);box-sizing:border-box;border-radius:4px;width:100%;min-height:22px;padding:1px 6px}.cgo-direction .cgo-spec-slot--duration{min-width:56px}.cgo-direction .cgo-spec-slot--ratio{min-width:64px}.cgo-direction .cgo-editable-select,.cgo-direction .cgo-editable-select .c-select{width:100%;display:inline-flex}.cgo-direction .cgo-editable-select .c-select__trigger{width:100%;min-height:22px;font:inherit;line-height:inherit;background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);color:var(--color-text-primary);box-sizing:border-box;border-radius:4px;gap:4px;padding:1px 6px}.cgo-direction .cgo-editable-select .c-select__arrow{width:8px;height:8px}.cgo-direction .cgo-direction-count{border-top:1px solid var(--color-border-subtle);align-items:center;gap:6px;margin-top:auto;padding-top:8px;display:flex}.cgo-direction .cgo-direction-count button{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);width:24px;height:24px;color:var(--color-text-primary);cursor:pointer;border-radius:4px;font-size:14px;line-height:1}.cgo-direction .cgo-direction-count button:hover:not(:disabled){background:var(--color-hover-bg)}.cgo-direction .cgo-direction-count button:disabled{opacity:.3;cursor:not-allowed}.cgo-direction .cgo-direction-count span{text-align:center;min-width:22px;color:var(--color-text-primary);font-size:14px;font-weight:600}.cgo-video-summary{color:var(--color-text-tertiary);gap:16px;font-size:12px;display:flex}.cgo-video-summary b{color:var(--color-text-primary);margin-left:3px}.cgo-video-summary .danger b{color:var(--color-danger)}.dcgo-chat-msg.assistant .dcgo-chat-msg-bubble:has(.cgo-card){width:90%}.cgo-video-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-auto-flow:row;gap:12px;display:grid}.cgo-video-cell{background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.cgo-video-cell.status-failed{border-color:var(--color-danger)}.cgo-video-header{border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-primary);align-items:center;gap:6px;padding:8px 10px;font-size:11px;display:flex}.cgo-video-header .cgo-video-label{color:var(--color-text-primary);flex-shrink:0;font-weight:600}.cgo-video-header .cgo-video-title{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cgo-video-header .cgo-badge{flex-shrink:0}.cgo-video-footer{background:var(--color-bg-primary);flex-direction:column;gap:4px;padding:8px 10px;display:flex}.cgo-video-meta-line{color:var(--color-text-tertiary);align-items:center;gap:6px;font-size:11px;display:flex}.cgo-video-summary-text{color:var(--color-text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.5;display:-webkit-box;overflow:hidden}.cgo-video-thumb{aspect-ratio:9/16;background:var(--color-bg-tertiary);place-items:center;display:grid;position:relative;overflow:hidden}.cgo-video-thumb img,.cgo-video-thumb video{object-fit:cover;width:100%;height:100%;display:block}.cgo-video-thumb .cgo-video-placeholder{color:var(--color-text-quaternary);font-size:22px;font-weight:700}.cgo-video-thumb .cgo-video-placeholder.pulsing{animation:1.6s ease-in-out infinite cgo-video-pulse}.cgo-video-thumb .cgo-video-play{color:#fff;cursor:pointer;pointer-events:none;background:#0009;border:0;border-radius:50%;width:40px;height:40px;margin:auto;font-size:14px;position:absolute;inset:0}@keyframes cgo-video-pulse{0%,to{opacity:.45;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}@keyframes cgo-video-progress-stripes{0%{background-position:0 0}to{background-position:24px 0}}.cgo-video-progress{flex-direction:column;gap:4px;padding:6px 8px 2px;display:flex}.cgo-video-progress-bar{background:var(--color-bg-tertiary);border-radius:3px;height:6px;position:relative;overflow:hidden}.cgo-video-progress-fill{background:linear-gradient(90deg, var(--color-brand) 0%, var(--color-link-hover) 100%);background-image:linear-gradient(45deg, #ffffff2e 25%, transparent 25%, transparent 50%, #ffffff2e 50%, #ffffff2e 75%, transparent 75%, transparent), linear-gradient(90deg, var(--color-brand), var(--color-link-hover));background-size:24px 24px,100% 100%;border-radius:3px;height:100%;transition:width .4s ease-out;animation:1s linear infinite cgo-video-progress-stripes}.cgo-video-progress-meta{color:var(--color-text-tertiary);font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:11px;display:flex}.cgo-video-progress-meta .cgo-video-progress-stage{color:var(--color-text-secondary)}.cgo-video-progress-meta .cgo-video-progress-elapsed{font-family:var(--font-mono-ui);margin-left:auto}.cgo-video-dl{color:var(--color-link);font-size:11px;text-decoration:none}.cgo-video-dl:hover{color:var(--color-link-hover);text-decoration:underline}.cgo-video-fail{color:var(--color-danger);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.cgo-video-long-badge{background:color-mix(in srgb, var(--color-brand) 12%, transparent);color:var(--color-brand);border-radius:8px;margin-left:4px;padding:1px 6px;font-size:10px;font-weight:500;display:inline-block}.cgo-video-retry{border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-primary);cursor:pointer;border-radius:6px;margin-top:6px;padding:4px 10px;font-size:11px;transition:background .15s}.cgo-video-retry:hover:not(:disabled){background:var(--color-bg-tertiary)}.cgo-video-retry:disabled{opacity:.5;cursor:not-allowed}.cgo-long-video-estimate .cgo-long-estimate-text{color:var(--color-text-tertiary);font-size:11px;font-style:italic}.cgo-badge{border-radius:8px;padding:1px 6px;font-size:10px;font-weight:500;display:inline-block}.cgo-badge.queued{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.cgo-badge.running{background:var(--color-brand-soft);color:var(--color-brand)}.cgo-badge.done{color:#16a34a;background:#dcfce7}.cgo-badge.failed{background:var(--color-danger-bg);color:var(--color-danger)}.cgo-thinking{background:var(--color-bg-primary);border:1px solid var(--color-border-subtle);color:var(--color-text-secondary);border-radius:18px;align-items:center;gap:8px;margin:8px 0;padding:6px 12px;font-size:12px;display:inline-flex}.cgo-thinking-spinner{border:1.5px solid var(--color-border-secondary);border-top-color:var(--color-brand);border-radius:50%;width:12px;height:12px;animation:.9s linear infinite cgo-spin}@keyframes cgo-spin{to{transform:rotate(360deg)}}.cgo-video-modal{background:var(--color-overlay);z-index:1000;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.cgo-video-modal-inner{background:var(--color-bg-primary);border-radius:12px;flex-direction:column;max-width:min(720px,92vw);max-height:92vh;display:flex;position:relative;overflow:hidden}.cgo-video-modal-inner video{background:#000;width:100%;max-height:60vh;display:block}.cgo-video-modal-inner .cgo-video-close{color:#fff;cursor:pointer;z-index:2;background:#0000008c;border:0;border-radius:50%;width:32px;height:32px;font-size:14px;position:absolute;top:8px;right:8px}.cgo-video-modal-inner .cgo-video-close:hover{background:#000000d9}.cgo-video-modal-meta{color:var(--color-text-primary);border-top:1px solid var(--color-border-subtle);flex-direction:column;gap:10px;padding:16px 20px;font-size:13px;display:flex;overflow-y:auto}.cgo-video-modal-row{grid-template-columns:64px 1fr;align-items:start;gap:12px;display:grid}.cgo-video-modal-row .lbl{color:var(--color-text-tertiary);padding-top:2px;font-size:12px}.cgo-video-modal-row .val{color:var(--color-text-secondary);word-break:break-all;line-height:1.5}.cgo-video-modal-row .val.prompt{background:var(--color-bg-secondary);border-radius:6px;max-height:5em;padding:6px 10px;font-size:12px;overflow-y:auto}.cgo-video-modal-row .val.link{color:var(--color-link);font-size:12px;text-decoration:none}.cgo-video-modal-row .val.link:hover{color:var(--color-link-hover);text-decoration:underline}.cgo-video-modal-row .val.refs{flex-wrap:wrap;gap:6px;display:flex}.cgo-video-modal-row .val.refs a{border:1px solid var(--color-border-subtle);background:var(--color-bg-secondary);border-radius:6px;width:56px;height:56px;display:block;overflow:hidden}.cgo-video-modal-row .val.refs img{object-fit:cover;width:100%;height:100%}.url-asset-modal{flex-direction:column;gap:14px;min-width:420px;max-width:90vw;padding:20px;display:flex}.url-asset-modal-title{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:600}.url-asset-modal-hint{color:var(--color-text-tertiary);margin:0;font-size:12px}.url-asset-field{flex-direction:column;gap:6px;display:flex}.url-asset-field-label{color:var(--color-text-tertiary);font-size:12px}.url-asset-field-input{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-primary);border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.url-asset-field-input:focus{border-color:var(--color-input-focus-border);box-shadow:0 0 0 3px var(--color-input-focus-ring);outline:none}.url-asset-field-input:disabled{opacity:.6}.url-asset-modal-actions{justify-content:flex-end;gap:8px;display:flex}.url-asset-modal-cancel,.url-asset-modal-confirm{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;padding:6px 16px;font-family:inherit;font-size:13px}.url-asset-modal-cancel:disabled,.url-asset-modal-confirm:disabled{opacity:.5;cursor:not-allowed}.url-asset-modal-confirm{background:var(--color-btn-primary-bg);border-color:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.url-asset-modal-confirm:hover:not(:disabled){background:var(--color-btn-primary-bg-hover);border-color:var(--color-btn-primary-bg-hover)}.hero-ai-modal{flex-direction:column;gap:14px;min-width:540px;max-width:720px;max-height:90vh;padding:20px;display:flex;overflow:hidden}.hero-ai-modal-head{flex-direction:column;gap:4px;padding-right:32px;display:flex;position:relative}.hero-ai-modal-head h3{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:600}.hero-ai-modal-close{width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:20px;line-height:1;display:flex;position:absolute;top:-4px;right:-4px}.hero-ai-modal-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.hero-ai-candidate-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;max-height:220px;padding:4px;display:grid;overflow-y:auto}.hero-ai-candidate{aspect-ratio:1;border:2px solid var(--color-border-primary);cursor:pointer;background:var(--color-bg-secondary);border-radius:6px;justify-content:center;align-items:center;width:100%;padding:0;display:flex;position:relative;overflow:hidden}.hero-ai-candidate:hover{border-color:var(--color-brand)}.hero-ai-candidate.selected{border-color:var(--color-brand);box-shadow:0 0 0 2px var(--color-brand)}.hero-ai-candidate img{object-fit:cover;width:100%;height:100%}.hero-ai-candidate-add{color:var(--color-text-tertiary);border-style:dashed;font-family:inherit;font-size:28px}.hero-ai-candidate-add:disabled{opacity:.5;cursor:not-allowed}.hero-ai-candidate-remove{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;line-height:1;display:flex;position:absolute;top:2px;right:2px}.hero-ai-hint-inline{color:var(--color-text-tertiary);margin:0;font-size:11px}.hero-ai-template-grid{flex-wrap:wrap;gap:6px;display:flex}.hero-ai-template{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:999px;padding:4px 12px;font-family:inherit;font-size:12px}.hero-ai-template:hover{border-color:var(--color-brand);color:var(--color-brand)}.hero-ai-template.selected{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-btn-primary-text,#fff)}.hero-ai-modal-hint{color:var(--color-text-tertiary);margin:0;font-size:12px;line-height:1.5}.hero-ai-modal-body{flex-direction:column;gap:12px;padding-right:4px;display:flex;overflow-y:auto}.hero-ai-source{flex-direction:column;gap:6px;display:flex}.hero-ai-source label{color:var(--color-text-tertiary);font-size:12px}.hero-ai-source img{border:1px solid var(--color-border-primary);object-fit:contain;background:var(--color-bg-secondary);border-radius:6px;max-width:180px;max-height:180px}.hero-ai-source-empty{border:1px dashed var(--color-border-primary);width:180px;height:120px;color:var(--color-text-tertiary);border-radius:6px;justify-content:center;align-items:center;font-size:12px;display:flex}.hero-ai-field{flex-direction:column;gap:6px;display:flex}.hero-ai-field label{color:var(--color-text-tertiary);font-size:12px}.hero-ai-prompt-preview{background:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border-primary);border-radius:6px;max-height:120px;padding:10px 12px;font-size:12px;line-height:1.6;overflow-y:auto}.hero-ai-textarea{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);width:100%;min-height:88px;color:var(--color-text-primary);resize:vertical;border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.hero-ai-textarea:focus{border-color:var(--color-input-focus-border);box-shadow:0 0 0 3px var(--color-input-focus-ring);outline:none}.hero-ai-textarea:disabled{opacity:.6}.hero-ai-progress{border:1px dashed var(--color-border-primary);background:var(--color-bg-secondary);border-radius:6px;flex-direction:column;align-items:center;gap:6px;padding:18px;display:flex}.hero-ai-progress-bar{background:var(--color-bg-primary);border-radius:999px;width:100%;height:6px;overflow:hidden}.hero-ai-progress-bar span{background:var(--color-btn-primary-bg);height:100%;transition:width .3s;display:block}.hero-ai-progress-pct{color:var(--color-text-primary);font-size:13px;font-weight:500}.hero-ai-progress-hint{color:var(--color-text-tertiary);margin:0;font-size:11px}.hero-ai-result{flex-direction:column;gap:8px;display:flex}.hero-ai-result label{color:var(--color-text-tertiary);font-size:12px}.hero-ai-result img{object-fit:contain;border:1px solid var(--color-border-primary);background:var(--color-bg-secondary);border-radius:6px;max-width:100%;max-height:360px}.hero-ai-name-input{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-primary);border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.hero-ai-name-input:focus{border-color:var(--color-input-focus-border);box-shadow:0 0 0 3px var(--color-input-focus-ring);outline:none}.hero-ai-name-input:disabled{opacity:.6}.hero-ai-error{background:var(--color-bg-secondary);border:1px solid var(--color-border-danger,#fecaca);color:var(--color-text-danger,#b91c1c);border-radius:6px;padding:10px 12px;font-size:13px}.hero-ai-modal-actions{justify-content:flex-end;gap:8px;display:flex}.hero-ai-btn-secondary,.hero-ai-btn-primary{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;padding:6px 16px;font-family:inherit;font-size:13px}.hero-ai-btn-secondary:disabled,.hero-ai-btn-primary:disabled{opacity:.5;cursor:not-allowed}.hero-ai-btn-primary{background:var(--color-btn-primary-bg);border-color:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.hero-ai-btn-primary:hover:not(:disabled){background:var(--color-btn-primary-bg-hover);border-color:var(--color-btn-primary-bg-hover)}.asset-drawer-mask{background:var(--color-overlay);z-index:900;animation:.15s drawer-fade-in;position:fixed;inset:0}@keyframes drawer-fade-in{0%{opacity:0}to{opacity:1}}@keyframes drawer-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.asset-drawer{background:var(--color-bg-primary);border-left:1px solid var(--color-border-subtle);z-index:901;width:420px;max-width:90vw;color:var(--color-text-primary);flex-direction:column;animation:.2s ease-out drawer-slide-in;display:flex;position:fixed;top:0;bottom:0;right:0}.asset-drawer-header{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.asset-drawer-header h2{margin:0;font-size:16px;font-weight:600}.asset-drawer-close{width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:4px;font-family:inherit;font-size:20px}.asset-drawer-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.asset-drawer-body{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.asset-drawer-preview{background:var(--color-bg-tertiary);border-radius:8px;justify-content:center;align-items:center;width:100%;max-height:240px;display:flex;overflow:hidden}.asset-drawer-preview img,.asset-drawer-preview video{object-fit:contain;width:100%;height:auto;max-height:240px}.asset-drawer-preview audio{width:100%}.asset-drawer-preview a{color:var(--color-link);padding:24px}.asset-field{flex-direction:column;gap:6px;display:flex}.asset-field-label{color:var(--color-text-tertiary);font-size:12px}.asset-field-input{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-primary);border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.asset-field-input:focus{border-color:var(--color-input-focus-border);box-shadow:0 0 0 3px var(--color-input-focus-ring);outline:none}.asset-field-textarea{border:1px solid var(--color-border-primary);resize:vertical;background:var(--color-bg-primary);color:var(--color-text-primary);border-radius:6px;padding:8px 10px;font-family:inherit;font-size:13px;line-height:1.5}.asset-field-textarea:focus{border-color:var(--color-input-focus-border);box-shadow:0 0 0 3px var(--color-input-focus-ring);outline:none}.asset-meta-grid{background:var(--color-bg-secondary);border-radius:6px;grid-template-columns:1fr 1fr;gap:10px 16px;padding:12px;display:grid}.asset-meta-cell{flex-direction:column;gap:2px;display:flex}.asset-meta-label{color:var(--color-text-tertiary);font-size:11px}.asset-meta-value{color:var(--color-text-primary);word-break:break-all;font-size:13px}.asset-refs-section{border-top:1px solid var(--color-border-subtle);padding-top:16px}.asset-refs-section h3{color:var(--color-text-primary);margin:0 0 12px;font-size:14px;font-weight:600}.asset-refs-count{color:var(--color-text-tertiary);font-weight:400}.asset-refs-empty{color:var(--color-text-tertiary);margin:0;font-size:13px}.asset-refs-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.asset-ref-item{background:var(--color-bg-secondary);border-radius:6px;flex-direction:column;padding:8px 10px;font-size:12px;display:flex}.asset-ref-script{color:var(--color-text-primary);font-weight:500}.asset-ref-path{color:var(--color-text-tertiary);font-family:var(--font-mono-ui);margin-top:2px;font-size:11px}.asset-drawer-footer{border-top:1px solid var(--color-border-subtle);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.asset-drawer-cancel,.asset-drawer-save{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;padding:6px 16px;font-family:inherit;font-size:13px}.asset-drawer-cancel:disabled,.asset-drawer-save:disabled{opacity:.5;cursor:not-allowed}.asset-drawer-save{background:var(--color-btn-primary-bg);border-color:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.asset-drawer-save:hover:not(:disabled){background:var(--color-btn-primary-bg-hover);border-color:var(--color-btn-primary-bg-hover)}.ppe{flex-direction:column;gap:14px;display:flex}.ppe-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.ppe-title{color:var(--color-text-primary);margin:0;font-size:18px;font-weight:600}.ppe-ai-btn{border:1px solid var(--color-brand);background:var(--color-bg-secondary);color:var(--color-brand);cursor:pointer;border-radius:999px;padding:4px 14px;font-family:inherit;font-size:13px}.ppe-ai-btn:hover{background:var(--color-brand);color:var(--color-btn-primary-text,#fff)}.ppe-field{flex-direction:column;gap:6px;display:flex}.ppe-label{color:var(--color-text-tertiary);font-size:12px}.ppe-input,.ppe-textarea{color:var(--color-text-primary);resize:vertical;background:0 0;border:1px solid #0000;border-radius:4px;width:100%;padding:6px 8px;font-family:inherit;font-size:14px}.ppe-input:hover,.ppe-textarea:hover{background:var(--color-bg-secondary)}.ppe-input:focus,.ppe-textarea:focus{border-color:var(--color-input-focus-border);background:var(--color-bg-primary);outline:none}.ppe-input::placeholder,.ppe-textarea::placeholder{color:var(--color-text-tertiary);font-style:italic}.ppe-textarea{min-height:60px;line-height:1.5}.ppe-chip-box{cursor:text;border:1px solid #0000;border-radius:4px;flex-wrap:wrap;gap:6px;min-height:32px;padding:6px 8px;display:flex}.ppe-chip-box:hover{background:var(--color-bg-secondary)}.ppe-chip-box:focus-within{border-color:var(--color-input-focus-border);background:var(--color-bg-primary)}.ppe-chip{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;display:inline-flex}.ppe-chip-x{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;line-height:1}.ppe-chip-x:hover{color:var(--color-danger)}.ppe-chip-input{color:var(--color-text-primary);background:0 0;border:none;flex:1;min-width:100px;font-family:inherit;font-size:14px}.ppe-chip-input:focus{outline:none}.ppe-chip-input::placeholder{color:var(--color-text-tertiary);font-style:italic}.ppe-logo{display:inline-block;position:relative}.ppe-logo img{border:1px solid var(--color-border-subtle);object-fit:contain;background:var(--color-bg-secondary);border-radius:4px;max-width:80px;max-height:80px}.ppe-logo-clear{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;width:18px;height:18px;font-size:12px;line-height:1;position:absolute;top:-6px;right:-6px}.ppe-hero-thumb{cursor:pointer;flex-direction:column;gap:4px;display:flex}.ppe-hero-thumb img{border:1px solid var(--color-border-subtle);object-fit:cover;border-radius:4px;max-width:100px;max-height:100px}.ppe-hero-thumb small{color:var(--color-text-tertiary);font-size:11px}.ppe-hero-empty{border:1px dashed var(--color-border-primary);color:var(--color-text-tertiary);cursor:pointer;background:0 0;border-radius:6px;padding:16px;font-family:inherit;font-size:13px}.ppe-hero-empty:hover{border-color:var(--color-brand);color:var(--color-brand)}.ppe-ai-modal{flex-direction:column;gap:14px;min-width:520px;max-width:640px;padding:20px;display:flex}.ppe-ai-head{flex-direction:column;gap:4px;padding-right:32px;display:flex;position:relative}.ppe-ai-head h3{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:600}.ppe-ai-hint{color:var(--color-text-tertiary);margin:0;font-size:12px;line-height:1.5}.ppe-ai-close{width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:6px;font-size:20px;position:absolute;top:-4px;right:-4px}.ppe-ai-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.ppe-ai-textarea{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-primary);resize:vertical;border-radius:6px;padding:10px 12px;font-family:inherit;font-size:14px}.ppe-ai-textarea:focus{border-color:var(--color-input-focus-border);outline:none}.ppe-ai-progress{background:var(--color-bg-secondary);text-align:center;color:var(--color-text-secondary);border-radius:6px;padding:12px;font-size:13px}.ppe-ai-error{border:1px solid var(--color-border-danger,#fecaca);background:var(--color-bg-secondary);color:var(--color-text-danger,#b91c1c);border-radius:6px;padding:10px 12px;font-size:13px}.ppe-ai-actions{justify-content:flex-end;gap:8px;display:flex}.ppe-btn-secondary,.ppe-btn-primary{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;padding:6px 16px;font-family:inherit;font-size:13px}.ppe-btn-secondary:disabled,.ppe-btn-primary:disabled{opacity:.5;cursor:not-allowed}.ppe-btn-primary{background:var(--color-btn-primary-bg);border-color:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.ppe-btn-primary:hover:not(:disabled){background:var(--color-btn-primary-bg-hover);border-color:var(--color-btn-primary-bg-hover)}.project-detail-page{background:var(--color-bg-page);min-height:100vh;color:var(--color-text-primary);padding:24px 48px;font-family:inherit}.project-detail-page--three-column,.project-detail-page--two-column{flex-direction:column;display:flex}.project-workspace--embedded{background:0 0;padding:0}.project-workspace--embedded .project-detail-body{min-height:0;padding:16px}.project-workspace--embedded .project-detail-meta,.project-workspace--embedded .project-detail-main{max-height:none}.project-detail-body{grid-template-columns:220px 380px 1fr;align-items:stretch;gap:20px;min-height:calc(100vh - 100px);display:grid}.project-detail-body--two-column{grid-template-columns:380px 1fr}.project-main-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:0 0 12px;display:flex}.project-tabs--horizontal{border-bottom:none;gap:4px;display:flex}.project-tabs--horizontal .project-tab{border-radius:6px;padding:8px 16px;font-size:14px}.project-tabs--horizontal .project-tab.active{background:var(--color-brand-soft,color-mix(in srgb, var(--color-brand) 12%, transparent));color:var(--color-brand);font-weight:600}.project-main-summary{gap:8px;display:flex}.main-summary-pill{color:var(--color-text-secondary);background:var(--color-bg-secondary);border-radius:10px;padding:3px 10px;font-size:12px}.main-summary-pill b{color:var(--color-text-primary);margin-left:4px;font-weight:600}.output-tab{padding:8px 0}.output-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.output-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.output-card .output-thumb{aspect-ratio:9/16;background:#000;overflow:hidden}.output-card .output-thumb video{object-fit:cover;width:100%;height:100%}.output-card .output-meta{flex-direction:column;gap:6px;padding:10px 12px;display:flex}.output-card .output-title{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.output-card .output-meta-row{color:var(--color-text-tertiary);gap:8px;font-size:11px;display:flex}.output-card .output-saved-at{color:var(--color-text-quaternary);font-family:JetBrains Mono,monospace;font-size:11px}.output-card .output-actions{gap:8px;margin-top:4px;display:flex}.output-card .output-btn{text-align:center;border:1px solid var(--color-border);background:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;border-radius:6px;flex:1;padding:4px 10px;font-size:11px;text-decoration:none}.output-card .output-btn:hover{background:var(--color-bg-tertiary)}.output-card .output-btn--danger{color:var(--color-danger);border-color:var(--color-danger-bg)}.cgo-video-modal-actions{border-top:1px solid var(--color-border);align-items:center;gap:12px;margin-top:8px;padding-top:12px;display:flex}.cgo-video-save-btn{color:#fff;cursor:pointer;background:#dc2626;border:1px solid #dc2626;border-radius:6px;padding:7px 18px;font-size:13px;font-weight:500;transition:background .15s,color .15s,border-color .15s}.cgo-video-save-btn:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.cgo-video-save-btn:disabled{opacity:.5;cursor:not-allowed}.cgo-video-save-btn--saved{color:#dc2626;background:#fee2e2;border-color:#fca5a5}.cgo-video-save-btn--saved:hover:not(:disabled){background:#fecaca;border-color:#f87171}.cgo-video-save-hint{color:var(--color-text-tertiary);font-size:11px}.project-detail-left{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:10px;flex-direction:column;gap:16px;padding:12px 8px;display:flex}.project-tabs--vertical{border-bottom:none;flex-direction:column;gap:2px;display:flex}.project-tabs--vertical .project-tab{text-align:left;border-radius:6px;padding:8px 12px}.project-tabs--vertical .project-tab.active{background:var(--color-brand-soft,color-mix(in srgb, var(--color-brand) 10%, transparent));color:var(--color-brand)}.project-detail-left-summary{border-top:1px solid var(--color-border);flex-direction:column;gap:6px;padding:8px 12px;display:flex}.left-summary-row{color:var(--color-text-secondary);justify-content:space-between;font-size:12px;display:flex}.left-summary-row .left-summary-count{color:var(--color-text-quaternary)}.project-detail-meta{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:10px;flex-direction:column;gap:14px;max-height:calc(100vh - 120px);padding:20px;display:flex;overflow-y:auto}.project-detail-meta-title{color:var(--color-text-primary);margin:0 0 4px;font-size:16px;font-weight:600}.meta-field{flex-direction:column;gap:4px;display:flex}.meta-field-label{color:var(--color-text-tertiary);font-size:12px;font-weight:500}.meta-field-value{color:var(--color-text-primary);word-break:break-word;font-size:13px;line-height:1.5}.meta-field-value--empty{color:var(--color-text-quaternary);font-style:italic}.meta-field-value--mono{color:var(--color-text-secondary);font-family:JetBrains Mono,monospace;font-size:11px}.meta-field--multiline .meta-field-value{white-space:pre-wrap;min-height:40px}.project-detail-main{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:10px;max-height:calc(100vh - 120px);padding:20px;overflow-y:auto}@media (width<=1100px){.project-detail-body{grid-template-columns:1fr}.project-detail-meta,.project-detail-main{max-height:none}}.project-detail-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.back-btn{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:13px;transition:border-color .15s,color .15s}.back-btn:hover{border-color:var(--color-brand);color:var(--color-brand)}.project-title{flex:1;margin:0;font-size:22px;font-weight:600}.project-header-actions{gap:8px;display:flex}.header-action-btn{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:13px}.header-action-btn:hover{border-color:var(--color-brand);color:var(--color-brand)}.project-tabs{border-bottom:1px solid var(--color-border-subtle);gap:4px;margin-bottom:24px;display:flex}.project-tab{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-family:inherit;font-size:14px;transition:color .15s,border-color .15s}.project-tab:hover{color:var(--color-text-primary)}.project-tab.active{color:var(--color-brand);border-bottom-color:var(--color-brand);font-weight:500}.placeholder-tab{text-align:center;color:var(--color-text-tertiary);border:1px dashed var(--color-border-subtle);border-radius:8px;padding:48px}.placeholder-tab a{color:var(--color-link);cursor:pointer;text-decoration:underline}.script-tab{flex-direction:column;gap:12px;display:flex}.script-loading{text-align:center;color:var(--color-text-tertiary);padding:32px}.script-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.script-item{background:var(--color-bg-primary);border:1px solid var(--color-border-subtle);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 16px;transition:border-color .15s,box-shadow .15s;display:flex}.script-item:hover{border-color:var(--color-brand);box-shadow:0 2px 8px var(--color-shadow-subtle)}.script-title{color:var(--color-text-primary);font-size:14px}.script-meta{color:var(--color-text-tertiary);font-size:12px;font-family:var(--font-mono-ui)}.asset-tab{flex-direction:column;gap:32px;display:flex}.asset-section{background:var(--color-bg-primary);border:1px solid var(--color-border-subtle);border-radius:12px;padding:20px 24px}.asset-section-head{grid-template-columns:auto 1fr auto;grid-template-areas:"title title actions""hint hint actions";align-items:center;gap:8px 16px;margin-bottom:16px;display:grid}.asset-section-title{grid-area:title;align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.asset-section-icon{font-size:18px}.asset-section-count{color:var(--color-text-tertiary);font-size:13px;font-weight:400}.asset-section-hint{color:var(--color-text-tertiary);grid-area:hint;margin:0;font-size:12px}.asset-section-actions{grid-area:actions;align-items:center;gap:8px;display:flex}.asset-action-btn{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:13px;transition:border-color .15s,color .15s}.asset-action-btn:hover{border-color:var(--color-brand);color:var(--color-brand)}.asset-action-btn.asset-action-btn--ai{border-color:var(--color-brand);color:var(--color-brand);background:var(--color-bg-secondary)}.asset-action-btn.asset-action-btn--ai:hover{background:var(--color-brand);color:var(--color-btn-primary-text,#fff)}.asset-section-empty{text-align:center;color:var(--color-text-tertiary);padding:32px;font-size:13px}.asset-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.asset-card{border:1px solid var(--color-border-subtle);background:var(--color-bg-secondary);cursor:pointer;border-radius:8px;flex-direction:column;transition:border-color .15s,box-shadow .15s,opacity .15s;display:flex;position:relative;overflow:hidden}.asset-card:hover{border-color:var(--color-brand);box-shadow:0 2px 8px var(--color-shadow-subtle)}.asset-card:hover .asset-card-delete,.asset-card:hover .asset-card-ai-edit{opacity:1}.asset-card[draggable=true]{cursor:grab}.asset-card[draggable=true]:active{cursor:grabbing}.asset-card.asset-card--dragging{opacity:.4}.asset-card-thumb{aspect-ratio:1;background:var(--color-bg-tertiary);justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.asset-card-thumb img{object-fit:cover;width:100%;height:100%}.asset-thumb-icon{opacity:.6;font-size:32px}.asset-card-name{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;padding:8px 10px;font-size:12px;overflow:hidden}.asset-card-delete{color:#fff;cursor:pointer;opacity:0;background:#00000080;border:none;border-radius:50%;width:22px;height:22px;font-size:14px;line-height:1;transition:opacity .15s,background .15s;position:absolute;top:4px;right:4px}.asset-card-delete:hover{background:var(--color-danger)}.asset-card-ai-edit{color:#fff;cursor:pointer;opacity:0;background:#0000008c;border:none;border-radius:999px;padding:3px 8px;font-family:inherit;font-size:11px;line-height:1.2;transition:opacity .15s,background .15s;position:absolute;top:4px;left:4px}.asset-card-ai-edit:hover{background:var(--color-brand)}.hero-ai-task-box{border:1px dashed var(--color-brand)}.hero-ai-task-box .hero-ai-task-status{color:var(--color-text-tertiary);text-align:center;padding:4px 10px 8px;font-size:11px}.hero-ai-task-box--running .asset-card-thumb{background:var(--color-bg-tertiary)}.hero-ai-task-box--failed{border-color:var(--color-danger,#ef4444)}.hero-ai-task-spinner{border:3px solid var(--color-border-primary);border-top-color:var(--color-brand);border-radius:50%;width:28px;height:28px;animation:.9s linear infinite hero-ai-spin}@keyframes hero-ai-spin{to{transform:rotate(360deg)}}.digital-cgo{--dcgo-soft:#fafaf8;--dcgo-brand:#a93a2c;--dcgo-brand-soft:#fbeeeb;--dcgo-good:#00a870;--dcgo-good-soft:#e6f4ee;--dcgo-danger-soft:#fdeeed;--dcgo-info:#3370ff;--dcgo-hint:#f80}[data-theme=dark] .digital-cgo{--dcgo-soft:#2c2d31;--dcgo-brand:#e89b8f;--dcgo-brand-soft:#e89b8f2e;--dcgo-good:#34c187;--dcgo-good-soft:#34c18729;--dcgo-danger-soft:#f8717129;--dcgo-info:#6cb3ff;--dcgo-hint:#ffa940}.digital-cgo{background:var(--color-bg-primary);width:100%;height:100vh;color:var(--color-text-primary);font-family:Inter,PingFang SC,HarmonyOS Sans SC,-apple-system,system-ui,sans-serif;display:flex;overflow:hidden}.digital-cgo button,.digital-cgo textarea,.digital-cgo input{font:inherit}.digital-cgo button{cursor:pointer}.dcgo-sidebar{border-right:1px solid var(--color-border-subtle);background:var(--color-bg-primary);flex-direction:column;flex-shrink:0;width:256px;display:flex}.dcgo-logo{color:var(--color-text-primary);background:0 0;border:0;align-items:center;gap:9px;padding:14px 12px 8px;font-size:15px;font-weight:600;display:flex}.dcgo-logo-mark{background:var(--dcgo-brand);width:22px;height:22px;color:var(--color-spinner-on-dark);border-radius:5px;place-items:center;font-size:13px;display:grid}.dcgo-sidebar-actions{gap:8px;padding:8px 12px 12px;display:grid}.dcgo-icon{color:currentColor;flex-shrink:0;width:14px;height:14px}.flex-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dcgo-search,.dcgo-nav button,.dcgo-quicklinks button,.dcgo-sidebar-foot button{color:var(--color-text-secondary);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;font-size:13px;display:flex}.dcgo-quicklinks{gap:2px;padding:0 12px 4px;display:grid}.dcgo-quicklinks button{width:100%;min-height:28px;padding:5px 8px}.dcgo-quicklinks button .dcgo-icon{color:var(--color-text-tertiary)}.dcgo-quicklinks button:hover,.dcgo-quicklinks button.active{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-quicklinks button:hover .dcgo-icon,.dcgo-quicklinks button.active .dcgo-icon{color:var(--color-text-primary)}.dcgo-materials{height:100%;min-height:0;display:flex;overflow:hidden}.dcgo-materials .material-viewer,.dcgo-materials .material-right-panel{height:100%}.dcgo-side-tree{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.dcgo-side-tree .file-tree-panel{flex:1;height:auto;min-height:0}.dcgo-side-tree-back{color:var(--color-text-secondary);text-align:left;background:0 0;border:0;border-radius:6px;flex-shrink:0;align-items:center;gap:8px;margin:4px 12px 6px;padding:5px 8px;font-size:13px;display:flex}.dcgo-side-tree-back .dcgo-icon{color:var(--color-text-tertiary);transform:rotate(180deg)}.dcgo-side-tree-back:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-side-tree-back:hover .dcgo-icon{color:var(--color-text-primary)}.dcgo-search{background:var(--dcgo-soft);height:32px;color:var(--color-text-tertiary);padding:0 10px}.dcgo-search:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-search span,.dcgo-nav span,.dcgo-sidebar-foot span,.dcgo-dev-tabs span,.dcgo-crumb,.dcgo-meta,.dcgo-result .id,.dcgo-result .score,.dcgo-thinking,.dcgo-thinking-panel,.dcgo-stagebar,.dcgo-data-table,.dcgo-picker footer{font-family:JetBrains Mono,SF Mono,Cascadia Code,monospace}.dcgo-primary,.dcgo-chat-input .send{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border:0;border-radius:6px}.dcgo-primary{min-height:32px;padding:0 14px;font-weight:600}.dcgo-primary .dcgo-icon{color:var(--color-btn-primary-text)}.dcgo-nav{flex:1;padding:0 12px 14px;overflow-y:auto}.dcgo-nav button{width:100%;min-height:28px;margin:1px 0;padding:5px 8px;line-height:1.43}.dcgo-nav button .dcgo-icon{color:var(--color-text-tertiary)}.dcgo-nav button:hover,.dcgo-nav button.active{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-nav button:hover .dcgo-icon,.dcgo-nav button.active .dcgo-icon{color:var(--color-text-primary)}.dcgo-nav button.sub{padding-left:24px}.dcgo-nav button.muted{color:var(--color-text-tertiary)}.dcgo-nav .dcgo-unread-dot{background:var(--color-role-assistant);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-left:6px;display:inline-block}.dcgo-nav .dcgo-streaming-dot{border:2px solid var(--color-role-assistant);border-top-color:#0000;border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-left:6px;animation:.8s linear infinite dcgo-streaming-spin;display:inline-block}@keyframes dcgo-streaming-spin{to{transform:rotate(360deg)}}.dcgo-typewriter-char{animation:.25s cubic-bezier(.22,.61,.36,1) both dcgo-typewriter-fadein;display:inline-block}@keyframes dcgo-typewriter-fadein{0%{opacity:0;filter:blur(2px);transform:translate(-3px)}to{opacity:1;filter:blur();transform:translate(0)}}.dcgo-nav-title{color:var(--color-text-quaternary);letter-spacing:.08em;text-transform:uppercase;margin:18px 8px 4px;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-badge{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-radius:8px;padding:1px 6px;font-size:10px}.dcgo-sidebar-foot{border-top:1px solid var(--color-border-subtle);color:var(--color-text-tertiary);justify-content:space-between;align-items:center;padding:10px 12px;font-size:11px;display:flex}.dcgo-sidebar-foot button{justify-content:center;width:26px;height:26px;padding:0}.dcgo-sidebar-foot button:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-main{flex-direction:column;flex:1;min-width:0;display:flex}.dcgo-topbar{border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-primary);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;height:48px;padding:0 16px;display:flex}.dcgo-dev-tabs,.dcgo-top-actions,.dcgo-modebar,.dcgo-filterbar,.dcgo-asset-tabs{align-items:center;gap:4px;display:flex}.dcgo-dev-tabs{overflow-x:auto}.dcgo-dev-tabs>span{color:var(--color-text-quaternary);letter-spacing:.08em;text-transform:uppercase;margin-right:8px;font-size:10px}.dcgo-dev-tabs button{color:var(--color-text-tertiary);background:0 0;border:0;border-radius:4px;padding:4px 9px;font-size:12px}.dcgo-dev-tabs button span{color:var(--color-text-quaternary);margin-right:4px;font-size:10px}.dcgo-dev-tabs button.active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.dcgo-dev-tabs button.active span{color:color-mix(in srgb, var(--color-spinner-on-dark) 65%, transparent)}.dcgo-top-actions{flex-shrink:0}.dcgo-top-actions button{border:1px solid var(--color-border-subtle);color:var(--color-text-tertiary);background:0 0;border-radius:4px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;display:inline-flex}.dcgo-top-actions button.active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:var(--color-text-primary)}.dcgo-avatar{background:var(--color-btn-primary-bg);width:28px;height:28px;color:var(--color-btn-primary-text);border-radius:50%;place-items:center;font-size:12px;display:grid}.dcgo-content{background:var(--color-bg-primary);flex:1;min-height:0;overflow:hidden}.dcgo-s0,.dcgo-view.row,.dcgo-s2-body,.dcgo-assets{height:100%;min-height:0;display:flex}.dcgo-s0-main{flex:1;place-items:center;min-width:0;padding:0 56px;display:grid;overflow-y:auto}.dcgo-hero{text-align:center;width:min(640px,100%)}.dcgo-hero h1{letter-spacing:-.02em;margin:10px 0 4px;font-size:36px;font-weight:500;line-height:1.35}.dcgo-hero p{color:var(--color-text-quaternary);margin:0 0 28px}.dcgo-hero.compact h1{font-size:30px}.dcgo-meta{color:var(--color-text-tertiary);align-items:center;gap:8px;font-size:11px;display:inline-flex}.dcgo-pulse{background:var(--dcgo-brand);border-radius:50%;width:5px;height:5px;animation:2.4s ease-in-out infinite dcgo-pulse}@keyframes dcgo-pulse{50%{opacity:.35;transform:scale(1.5)}}.dcgo-chat-input{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);border-radius:12px;width:min(720px,100%);margin:14px auto 0;padding:12px 14px 8px;transition:border-color .1s}.dcgo-chat-input:focus-within{border-color:var(--color-text-primary)}.dcgo-chat-input.hero{margin-top:4px}.dcgo-chat-input textarea{resize:none;width:100%;min-height:24px;color:var(--color-text-primary);background:0 0;border:0;outline:0;font-size:14px}.dcgo-chat-input>div{align-items:center;gap:8px;margin-top:4px;display:flex}.dcgo-chat-input>div span{flex:1}.dcgo-chat-input>div button:not(.send){color:var(--color-text-tertiary);background:0 0;border:0;font-size:12px}.dcgo-chat-input small{color:var(--color-text-quaternary);font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-chat-input .send{border-radius:50%;width:26px;height:26px}.dcgo-link,.dcgo-muted-link{color:var(--color-text-tertiary);background:0 0;border:0;margin:14px auto 0;font-size:12px;display:block}.dcgo-muted-link{color:var(--color-text-quaternary);margin-top:2px}.dcgo-briefing{width:min(760px,100%);padding:12px 0 32px}.dcgo-briefing h2{margin:16px 0 6px;font-size:24px}.dcgo-briefing>p{color:var(--color-text-tertiary);margin:0 0 28px}.dcgo-briefing h3{color:var(--color-text-tertiary);letter-spacing:.08em;text-transform:uppercase;margin:30px 0 12px;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-result-list,.dcgo-news-list,.dcgo-notices{gap:2px;display:grid}.dcgo-result{border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:14px;padding:10px 8px;display:flex}.dcgo-result .status{background:var(--dcgo-soft);width:52px;color:var(--color-text-tertiary);text-align:center;border-radius:4px;padding:2px 8px;font-size:11px}.dcgo-result .status.good{background:var(--dcgo-good-soft);color:var(--dcgo-good)}.dcgo-result .status.danger{background:var(--dcgo-danger-soft);color:var(--color-danger)}.dcgo-result .id,.dcgo-result .score{color:var(--color-text-tertiary);font-size:12px}.dcgo-result div{flex:1;min-width:0}.dcgo-result strong,.dcgo-result small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dcgo-result small{color:var(--color-text-tertiary);font-size:12px}.dcgo-rec-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.dcgo-rec-grid article{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);border-radius:8px;flex-direction:column;gap:10px;min-height:162px;padding:16px;display:flex}.dcgo-rec-grid article.recommended{border-color:var(--dcgo-brand);box-shadow:0 0 0 3px var(--dcgo-brand-soft)}.dcgo-rec-grid h4,.dcgo-rec-grid p{margin:0}.dcgo-rec-grid p{color:var(--color-text-tertiary);font-size:12px}.dcgo-rec-grid button{color:var(--color-text-primary);background:0 0;border:0;align-self:flex-start;margin-top:auto;font-weight:600}.dcgo-chip{background:var(--dcgo-brand-soft);width:fit-content;color:var(--dcgo-brand);border-radius:4px;padding:2px 8px;font-size:11px}.dcgo-news-list button{color:var(--color-text-secondary);text-align:left;background:0 0;border:0;border-radius:6px;padding:12px 8px}.dcgo-news-list button:hover{background:var(--color-bg-secondary)}.dcgo-s0-aside,.dcgo-preview{border-left:1px solid var(--color-border-subtle);background:var(--dcgo-soft);flex-shrink:0;width:38%;max-width:460px}.dcgo-s0-aside{flex-direction:column;justify-content:center;gap:12px;padding:8px 28px 40px;display:flex}.dcgo-s0-aside.collapsed{justify-content:flex-start;width:58px;padding:14px 8px}.dcgo-s0-aside>button{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);color:var(--color-text-tertiary);border-radius:4px;align-self:center;padding:5px 8px}.dcgo-s0-aside section{border-top:1px solid var(--color-border-subtle);padding:18px 0}.dcgo-s0-aside section:first-child{border-top:0}.dcgo-s0-aside h3{color:var(--color-text-tertiary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-s0-aside p{margin:0;line-height:1.7}.dcgo-view{height:100%;overflow:hidden}.dcgo-view.padded{padding:28px 32px;overflow-y:auto}.dcgo-view.wide{max-width:1120px;margin:0 auto}.dcgo-chat-area{flex-direction:column;flex:1;min-width:0;display:flex}.dcgo-modebar,.dcgo-stagebar,.dcgo-filterbar,.dcgo-asset-tabs{border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-primary);flex-shrink:0;padding:12px 24px}.dcgo-modebar button,.dcgo-modebar span,.dcgo-stagebar button,.dcgo-stagebar span,.dcgo-filterbar button,.dcgo-filterbar span,.dcgo-asset-tabs button,.dcgo-asset-tabs span{color:var(--color-text-tertiary);background:0 0;border:0;border-radius:6px;padding:5px 10px;font-size:12px}.dcgo-modebar .active,.dcgo-modebar button.active,.dcgo-modebar .current,.dcgo-stagebar .active,.dcgo-stagebar button.active,.dcgo-stagebar .current,.dcgo-filterbar .active,.dcgo-filterbar button.active,.dcgo-filterbar .current,.dcgo-asset-tabs .active,.dcgo-asset-tabs button.active,.dcgo-asset-tabs .current{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.dcgo-modebar .done,.dcgo-stagebar .done,.dcgo-filterbar .done,.dcgo-asset-tabs .done{color:var(--dcgo-good)}.dcgo-chat-flow{flex:1;min-height:0;padding:24px 32px;overflow-y:auto}.dcgo-msg{width:min(720px,100%);margin:0 auto 24px;line-height:1.7}.dcgo-msg.user{background:var(--color-bg-secondary);border-radius:12px;width:fit-content;max-width:720px;margin-left:auto;margin-right:auto;padding:10px 14px}.dcgo-thinking{border:1px solid var(--color-border-subtle);background:var(--dcgo-soft);color:var(--color-text-tertiary);border-radius:12px;margin-bottom:12px;padding:4px 10px;font-size:11px}.dcgo-thinking-panel{border-left:1px solid var(--color-text-hint);color:var(--color-text-tertiary);margin-bottom:14px;padding:8px 12px;font-size:12px}.dcgo-decision-card{border:1px solid var(--color-border-primary);border-top:2px solid var(--dcgo-brand);background:var(--color-bg-primary);border-radius:8px;max-width:640px;margin:4px 0 18px;padding:18px 20px}.dcgo-decision-card h3,.dcgo-decision-card p{margin:0 0 10px}.dcgo-video-grid{grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;display:grid}.dcgo-video-card{aspect-ratio:9/16;border:1px solid var(--color-border-subtle);color:var(--color-text-primary);text-align:left;background:linear-gradient(135deg,#ecedf0,#dee0e3);border-radius:8px;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:3px;padding:10px;transition:border-color .1s,box-shadow .1s;display:flex;position:relative}.dcgo-video-card:hover{border-color:var(--color-text-hint);box-shadow:0 2px 8px var(--color-shadow-subtle)}.dcgo-video-card.selected{border:2px solid var(--color-text-primary)}.dcgo-video-card.gen{background:linear-gradient(135deg,#e8f1ff,#dce8ff)}.dcgo-video-card.queue{opacity:.72}.dcgo-video-card small,.dcgo-video-card .video-status{color:var(--color-text-tertiary);font-size:10px}.dcgo-video-card .video-status{background:color-mix(in srgb, var(--color-bg-primary) 90%, transparent);border-radius:4px;padding:2px 6px;position:absolute;top:8px;left:8px}.dcgo-video-card .video-score{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-radius:3px;margin-top:4px;padding:1px 6px;font-size:10px}.dcgo-preview{padding:18px 20px;overflow-y:auto}.dcgo-preview h3{margin:0 0 16px;font-size:14px}.dcgo-preview>button{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);border-radius:6px;width:100%;min-height:34px;margin-top:8px}.dcgo-phone{aspect-ratio:9/16;width:min(240px,100%);color:color-mix(in srgb, var(--color-spinner-on-dark) 75%, transparent);background:linear-gradient(135deg,#2b2f36,#51565e);border-radius:8px;place-items:center;margin:0 auto 18px;display:grid}.dcgo-phone.brew{background:linear-gradient(135deg,#f5e6d3,#c8956b)}.dcgo-phone.test{background:linear-gradient(135deg,#e8f4e8,#a8c8a8)}.dcgo-phone.office{background:linear-gradient(135deg,#f0efeb,#c8c4b8)}.dcgo-stats,.dcgo-kpi-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.dcgo-stats div,.dcgo-kpi-grid article{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);border-radius:6px;padding:12px}.dcgo-stats div small,.dcgo-kpi-grid article small{color:var(--color-text-tertiary);letter-spacing:.06em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;display:block}.dcgo-stats div strong,.dcgo-kpi-grid article strong{margin-top:4px;font-family:JetBrains Mono,monospace;font-size:22px;display:block}.dcgo-s2-body{height:calc(100% - 47px)}.dcgo-chat-area.split{border-right:1px solid var(--color-border-subtle)}.dcgo-storyboard{background:var(--dcgo-soft);flex-direction:column;flex:1;min-width:0;display:flex}.dcgo-storyboard header{border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-primary);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.dcgo-storyboard h3{margin:0;font-size:14px}.dcgo-storyboard table{border-collapse:collapse;background:var(--color-bg-primary);width:100%;font-size:12px}.dcgo-storyboard th,.dcgo-storyboard td{border-bottom:1px solid var(--color-border-subtle);vertical-align:top;text-align:left;padding:9px 10px}.dcgo-storyboard th{color:var(--color-text-tertiary);background:var(--dcgo-soft);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500}.dcgo-storyboard textarea{border:1px solid var(--color-text-primary);resize:vertical;border-radius:4px;width:100%;min-height:44px;padding:4px}.dcgo-storyboard button{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);color:var(--color-text-tertiary);white-space:nowrap;border-radius:4px;padding:3px 8px}.dcgo-panel{max-width:920px;margin:0 auto 28px}.dcgo-panel h3{margin:0 0 12px;font-size:14px}.dcgo-line-card,.dcgo-formula,.dcgo-avoid,.dcgo-notices article{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);border-radius:8px;align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;display:flex}.dcgo-line-card:hover,.dcgo-formula:hover,.dcgo-avoid:hover,.dcgo-notices article:hover{background:var(--color-bg-secondary)}.dcgo-line-card p{flex:1;margin:0}.dcgo-line-card span,.dcgo-line-card b{color:var(--color-text-tertiary);font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-line-card button{color:var(--color-text-primary);background:0 0;border:0;font-weight:600}.dcgo-formula span{background:var(--dcgo-soft);border-radius:4px;padding:2px 8px}.dcgo-formula strong{color:var(--dcgo-good);margin-left:auto}.dcgo-avoid{background:var(--dcgo-danger-soft);border-left:2px solid var(--color-danger)}.dcgo-avoid span{flex:1}.dcgo-kpi-grid{grid-template-columns:repeat(4,1fr);margin-bottom:28px}.dcgo-kpi-grid p{color:var(--color-text-tertiary);margin:6px 0 0;font-size:11px}.dcgo-sparkline{width:96px;height:28px;color:var(--dcgo-brand)}.dcgo-data-table{border-collapse:collapse;border:1px solid var(--color-border-subtle);border-radius:8px;width:100%;overflow:hidden}.dcgo-data-table th,.dcgo-data-table td{border-bottom:1px solid var(--color-border-subtle);text-align:left;padding:10px 14px}.dcgo-data-table th{background:var(--dcgo-soft);color:var(--color-text-tertiary);font-size:11px;font-weight:500}.dcgo-assets aside{border-right:1px solid var(--color-border-subtle);background:var(--dcgo-soft);flex-shrink:0;width:180px;padding:16px 12px}.dcgo-assets aside button{text-align:left;background:0 0;border:0;border-radius:6px;width:100%;padding:6px 8px;display:block}.dcgo-assets main{flex:1;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-content:start;gap:14px;min-width:0;padding:24px;display:grid;overflow-y:auto}.dcgo-asset-card{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);border-radius:8px;transition:border-color .1s,box-shadow .1s;overflow:hidden}.dcgo-asset-card:hover{border-color:var(--color-text-hint);box-shadow:0 2px 8px var(--color-shadow-subtle)}.dcgo-asset-card>div{aspect-ratio:16/10;color:var(--color-text-tertiary);background:linear-gradient(135deg,#ecedf0,#dee0e3);place-items:center;font-family:JetBrains Mono,monospace;display:grid}.dcgo-asset-card h3,.dcgo-asset-card p,.dcgo-asset-card small{margin:10px 12px;display:block}.dcgo-asset-card p,.dcgo-asset-card small{color:var(--color-text-tertiary)}.dcgo-empty-view{text-align:center;place-content:center;gap:12px;height:100%;display:grid}.dcgo-empty-view p{color:var(--color-text-tertiary)}.dcgo-filterbar button{text-transform:uppercase}.dcgo-notices{max-width:880px;margin:0 auto;padding:12px 24px}.dcgo-notices article{border:0;border-bottom:1px solid var(--color-border-subtle);border-radius:0}.dcgo-notices article p{flex:1;margin:0}.dcgo-notices article span,.dcgo-notices article b{color:var(--color-text-tertiary);font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-notices article button{background:0 0;border:0;font-weight:600}.dcgo-journey{height:100%;padding:32px 48px;overflow-y:auto}.dcgo-journey>*{max-width:960px;margin-left:auto;margin-right:auto}.dcgo-journey section{grid-template-columns:92px 1fr;gap:24px;margin-top:36px;display:grid}.dcgo-journey section>span{color:var(--dcgo-brand);text-align:right;font-family:JetBrains Mono,monospace;font-size:56px;font-weight:200}.dcgo-journey section article{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);border-radius:8px;padding:18px 20px}.dcgo-journey-hero{text-align:center}.dcgo-journey-hero small{color:var(--color-text-tertiary);font-family:JetBrains Mono,monospace}.dcgo-journey-hero h1{margin:12px 0 8px;font-size:28px}.dcgo-journey-hero p{color:var(--color-text-tertiary)}.dcgo-journey .recommended{border-color:var(--dcgo-brand);background:var(--dcgo-brand-soft)}.dcgo-thumb-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.dcgo-thumb-grid div{aspect-ratio:4/5;background:linear-gradient(135deg,#ecedf0,#dee0e3);border-radius:6px;flex-direction:column;justify-content:flex-end;padding:10px;display:flex}.dcgo-thumb-grid .brew{background:linear-gradient(135deg,#f5e6d3,#c8956b)}.dcgo-thumb-grid .test{background:linear-gradient(135deg,#e8f4e8,#a8c8a8)}.dcgo-thumb-grid .office{background:linear-gradient(135deg,#f0efeb,#c8c4b8)}.dcgo-modal{z-index:1000;background:var(--color-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:center;padding:5vh 5vw;display:grid;position:fixed;inset:0}.dcgo-picker{background:var(--color-bg-primary);width:min(600px,100%);height:min(500px,80vh);box-shadow:0 12px 48px var(--color-shadow-strong);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.dcgo-picker-search{border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:10px;padding:14px 16px;display:flex}.dcgo-picker-search>.dcgo-icon{color:var(--color-text-quaternary)}.dcgo-picker-search input{color:var(--color-text-primary);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:14px}.dcgo-picker-search input::placeholder{color:var(--color-text-quaternary)}.dcgo-picker-close{width:28px;height:28px;color:var(--color-text-tertiary);background:0 0;border:0;border-radius:4px;place-items:center;display:grid}.dcgo-picker-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-picker-body{flex:1;padding:8px 0;overflow-y:auto}.dcgo-picker-empty{color:var(--color-text-tertiary);text-align:center;padding:32px 24px;font-size:13px}.dcgo-picker-empty a{color:var(--color-link);cursor:pointer;text-decoration:underline}.dcgo-picker-section{margin-bottom:6px}.dcgo-picker-section-head{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-tertiary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:8px 16px 4px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.dcgo-picker-section-head:hover{color:var(--color-text-primary)}.dcgo-picker-section-head .dcgo-icon{width:11px;height:11px}.dcgo-picker-count{color:var(--color-text-quaternary);margin-left:auto;font-weight:400}.dcgo-picker-list{margin:0;padding:0;list-style:none}.dcgo-picker-item{cursor:pointer;align-items:center;gap:12px;padding:8px 16px;transition:background 50ms;display:flex}.dcgo-picker-item:hover{background:var(--color-bg-secondary)}.dcgo-picker-thumb{width:32px;height:32px;color:var(--color-text-tertiary);background:linear-gradient(135deg,#ecedf0 0%,#dee0e3 100%);border-radius:4px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.dcgo-picker-thumb .dcgo-icon{width:14px;height:14px}.dcgo-picker-thumb img{object-fit:cover;width:100%;height:100%}.dcgo-project-row{cursor:grab;position:relative}.dcgo-project-row:active{cursor:grabbing}.dcgo-project-row.dragging{opacity:.4}.dcgo-project-row.drop-before:before,.dcgo-project-row.drop-after:after{content:"";background:var(--color-brand);pointer-events:none;border-radius:1px;height:2px;position:absolute;left:4px;right:4px}.dcgo-project-row.drop-before:before{top:-1px}.dcgo-project-row.drop-after:after{bottom:-1px}.dcgo-project-row .dcgo-project-current-tag{color:var(--color-text-quaternary);margin-left:auto;font-size:11px}.dcgo-project-row .dcgo-project-menu-trigger{width:18px;height:18px;color:var(--color-text-quaternary);cursor:pointer;opacity:0;border-radius:4px;justify-content:center;align-items:center;margin-left:4px;transition:opacity .12s,background .12s;display:inline-flex}.dcgo-project-row .dcgo-project-menu-trigger:hover{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.dcgo-project-row:hover .dcgo-project-menu-trigger{opacity:1}.dcgo-project-row:has(.dcgo-project-action-menu) .dcgo-project-menu-trigger{opacity:1}.dcgo-project-action-menu{z-index:100;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;flex-direction:column;gap:1px;min-width:140px;margin-top:2px;padding:4px;display:flex;position:absolute;top:100%;right:4px;box-shadow:0 4px 12px #0000001f}.dcgo-project-action-menu button{color:var(--color-text-primary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:6px 10px;font-size:13px;display:flex}.dcgo-project-action-menu button:hover:not(:disabled){background:var(--color-bg-secondary)}.dcgo-project-action-menu button:disabled{color:var(--color-text-quaternary);cursor:not-allowed}.dcgo-project-action-menu button.danger{color:var(--color-danger)}.dcgo-project-action-menu button.danger:hover{background:var(--color-danger-bg,color-mix(in srgb, var(--color-danger) 12%, transparent))}.dcgo-project-action-divider{background:var(--color-border);height:1px;margin:4px 0}.dcgo-project-group{border-radius:6px;flex-direction:column;transition:background .12s;display:flex}.dcgo-project-group.drop-into{background:color-mix(in srgb, var(--color-brand) 8%, transparent);outline:2px dashed var(--color-brand);outline-offset:-2px}.dcgo-project-group-header{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:6px;padding:6px 8px;font-size:12px;font-weight:500;display:flex}.dcgo-project-group-header:hover{background:var(--color-bg-secondary)}.dcgo-project-group-header .dcgo-icon{flex-shrink:0;width:12px;height:12px}.dcgo-project-group-header .flex-label{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dcgo-project-group-count{color:var(--color-text-quaternary);margin-left:4px;font-size:11px}.dcgo-group-picker{background:var(--color-bg-primary);border-radius:12px;flex-direction:column;width:360px;max-height:70vh;display:flex;overflow:hidden;box-shadow:0 8px 32px #0000003d}.dcgo-group-picker-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.dcgo-group-picker-head h3{margin:0;font-size:15px;font-weight:600}.dcgo-group-picker-head button{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:16px}.dcgo-group-picker-head button:hover{color:var(--color-text-primary)}.dcgo-group-picker-list{flex-direction:column;gap:2px;margin:0;padding:8px;list-style:none;display:flex;overflow-y:auto}.dcgo-group-picker-empty{text-align:center;color:var(--color-text-quaternary);padding:16px;font-size:12px}.dcgo-group-picker-item{cursor:pointer;color:var(--color-text-primary);border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.dcgo-group-picker-item:hover{background:var(--color-bg-secondary)}.dcgo-group-picker-item.active{background:color-mix(in srgb, var(--color-brand) 8%, transparent);color:var(--color-brand)}.dcgo-group-picker-item--remove{color:var(--color-danger)}.dcgo-group-picker-item--remove:hover{background:var(--color-danger-bg,color-mix(in srgb, var(--color-danger) 12%, transparent))}.dcgo-group-picker-item--new{color:var(--color-brand);font-weight:500}.dcgo-group-picker-current{color:var(--color-text-tertiary);margin-left:auto;font-size:11px}.dcgo-group-picker-create{cursor:default;gap:6px;display:flex}.dcgo-group-picker-create input{border:1px solid var(--color-border);background:var(--color-bg-primary);color:var(--color-text-primary);border-radius:4px;flex:1;padding:4px 8px;font-size:13px}.dcgo-group-picker-create button{border:1px solid var(--color-brand);background:var(--color-brand);color:#fff;cursor:pointer;border-radius:4px;padding:4px 12px;font-size:12px}.dcgo-group-picker-create button:disabled{opacity:.5;cursor:not-allowed}.dcgo-picker-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.dcgo-picker-name{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.dcgo-picker-type{color:var(--color-text-tertiary);font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-picker-time{color:var(--color-text-quaternary);flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-picker-arrow{color:var(--color-text-quaternary);flex-shrink:0}.dcgo-picker-arrow .dcgo-icon{width:14px;height:14px}.dcgo-picker-keys{border-top:1px solid var(--color-border-subtle);background:var(--dcgo-soft);color:var(--color-text-tertiary);gap:16px;padding:10px 16px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.dcgo-picker-keys span{align-items:center;gap:4px;display:inline-flex}.dcgo-picker-keys kbd{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);color:var(--color-text-secondary);border-radius:3px;padding:1px 5px;font-family:inherit;font-size:10px}.dcgo-settings{background:var(--color-bg-primary);width:min(880px,100%);height:min(640px,80vh);box-shadow:0 12px 48px var(--color-shadow-strong);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.dcgo-settings-head{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.dcgo-settings-head h2{margin:0;font-size:16px;font-weight:600}.dcgo-settings-head>div{align-items:center;gap:8px;display:flex}.dcgo-settings-head button{width:28px;height:28px;color:var(--color-text-tertiary);background:0 0;border:0;border-radius:4px;place-items:center;display:grid}.dcgo-settings-head button:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-settings-esc{color:var(--color-text-quaternary);font-family:JetBrains Mono,monospace;font-size:10px}.dcgo-settings-body{flex:1;display:flex;overflow:hidden}.dcgo-settings-nav{border-right:1px solid var(--color-border-subtle);background:var(--dcgo-soft);flex-direction:column;flex-shrink:0;gap:2px;width:180px;padding:16px 12px;display:flex}.dcgo-settings-nav button{color:var(--color-text-secondary);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.dcgo-settings-nav button .dcgo-icon{color:var(--color-text-quaternary)}.dcgo-settings-nav button:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-settings-nav button.active{background:var(--color-bg-secondary);color:var(--color-text-primary);font-weight:500}.dcgo-settings-nav button.active .dcgo-icon{color:var(--color-text-primary)}.dcgo-settings-content{flex:1;padding:28px 32px;overflow-y:auto}.dcgo-settings-content h3{margin:0 0 8px;font-size:18px;font-weight:500}.dcgo-settings-content p{color:var(--color-text-secondary);margin:0 0 12px;font-size:13.5px;line-height:1.7}.dcgo-settings-empty{border:1px dashed var(--color-border-primary);background:var(--dcgo-soft);color:var(--color-text-tertiary);text-align:center;border-radius:8px;margin-top:32px;padding:28px;font-size:13px}.dcgo-chat-page{background:var(--color-bg-primary);flex-direction:column;height:100%;display:flex;overflow:hidden}.dcgo-chat-flow-wrap{flex:1;min-height:0;padding:24px 0 8px;overflow-y:auto}.dcgo-chat-flow-inner{flex-direction:column;gap:18px;width:min(760px,100%);margin:0 auto;padding:0 24px;display:flex}.dcgo-chat-empty{text-align:center;color:var(--color-text-tertiary);flex-direction:column;align-items:center;gap:10px;margin:80px auto;display:flex}.dcgo-chat-empty .dcgo-pulse{background:var(--dcgo-brand);border-radius:50%;width:6px;height:6px;animation:2.4s ease-in-out infinite dcgo-pulse}.dcgo-chat-empty p{margin:0;font-size:13px}.dcgo-chat-msg-wrapper{flex-direction:column;gap:6px;display:flex}.dcgo-chat-msg-wrapper.user{align-items:flex-end}.dcgo-chat-msg-wrapper.assistant{align-items:flex-start}.dcgo-chat-msg{width:100%;display:flex}.dcgo-chat-msg.user{justify-content:flex-end}.dcgo-chat-msg.user .dcgo-chat-msg-bubble{background:var(--color-bg-secondary);max-width:78%;color:var(--color-text-primary);border-radius:12px;padding:10px 14px}.dcgo-chat-msg.assistant{justify-content:flex-start}.dcgo-chat-msg.assistant .dcgo-chat-msg-bubble{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);max-width:90%;color:var(--color-text-primary);white-space:pre-wrap;word-break:break-word;border-radius:12px;padding:14px 18px;line-height:1.7}.dcgo-tool-trace{border:1px solid var(--color-border-subtle);background:var(--dcgo-soft);border-radius:8px;margin-bottom:12px;overflow:hidden}.dcgo-tool-trace-summary{width:100%;color:var(--color-text-secondary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:flex}.dcgo-tool-trace-summary:hover{background:var(--color-bg-secondary)}.dcgo-tool-trace-main{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dcgo-tool-trace-toggle{color:var(--color-text-quaternary);flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-tool-trace-list{border-top:1px solid var(--color-border-subtle);background:var(--color-bg-primary);flex-direction:column;gap:4px;padding:8px 12px;display:flex}.dcgo-tool-trace-item{color:var(--dcgo-ink-70,var(--color-text-secondary));word-break:break-all;font-family:JetBrains Mono,monospace;font-size:11px;line-height:1.6}.dcgo-tool-trace-item:before{content:"• ";color:var(--color-text-quaternary)}.dcgo-msg-toolbar{align-items:center;gap:4px;padding-left:4px;display:inline-flex}.dcgo-msg-btn{width:26px;height:26px;color:var(--color-text-quaternary);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;transition:color .1s,background .1s;display:grid}.dcgo-msg-btn .dcgo-icon{width:14px;height:14px}.dcgo-msg-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-msg-btn.active-like{color:var(--dcgo-good)}.dcgo-msg-btn.active-dislike{color:var(--color-danger)}.dcgo-chat-page-input{border-top:1px solid var(--color-border-subtle);background:var(--color-bg-primary);flex-shrink:0;padding:12px 24px 20px}.dcgo-chat-page-input .dcgo-chat-input{width:min(760px,100%);margin:0 auto}.dcgo-chat-attachments{border-bottom:1px dashed var(--color-border-subtle);flex-wrap:wrap;gap:8px;margin-bottom:8px;padding-bottom:8px;display:flex}.dcgo-chat-attachment{border:1px solid var(--color-border-subtle);background:var(--color-bg-secondary);border-radius:8px;flex-direction:column;width:72px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.dcgo-chat-attachment:hover{border-color:var(--dcgo-info);box-shadow:0 1px 4px color-mix(in srgb, var(--dcgo-info) 15%, transparent)}.dcgo-chat-attachment:hover .dcgo-chat-attachment-remove{opacity:1}.dcgo-chat-attachment-thumb{aspect-ratio:1;background:var(--color-bg-tertiary);place-items:center;width:100%;display:grid;overflow:hidden}.dcgo-chat-attachment-thumb img{object-fit:cover;width:100%;height:100%;display:block}.dcgo-chat-attachment-icon{opacity:.7;font-size:22px}.dcgo-chat-attachment-label{color:var(--color-text-secondary);text-align:center;font-variant-numeric:tabular-nums;background:var(--color-bg-primary);padding:4px 6px;font-size:11px}.dcgo-chat-attachment-remove{background:var(--color-media-overlay);width:18px;height:18px;color:var(--color-spinner-on-dark);cursor:pointer;opacity:0;border:none;border-radius:50%;font-size:12px;line-height:1;transition:opacity .15s,background .15s;position:absolute;top:2px;right:2px}.dcgo-chat-attachment-remove:hover{background:var(--color-danger)}.dcgo-chat-input-images{border-bottom:1px dashed var(--color-border-subtle);flex-wrap:wrap;gap:8px;margin-bottom:8px;padding-bottom:8px;display:flex}.dcgo-chat-input-image{border:1px solid var(--color-border-subtle);border-radius:6px;width:56px;height:56px;position:relative;overflow:hidden}.dcgo-chat-input-image img{object-fit:cover;width:100%;height:100%;display:block}.dcgo-chat-input-image-uploading{background:color-mix(in srgb, var(--color-bg-primary) 70%, transparent);color:var(--color-text-tertiary);place-items:center;font-size:14px;display:grid;position:absolute;inset:0}.dcgo-chat-input-image-remove{background:var(--color-media-overlay);width:16px;height:16px;color:var(--color-spinner-on-dark);cursor:pointer;border:0;border-radius:50%;place-items:center;font-size:12px;line-height:1;display:grid;position:absolute;top:2px;right:2px}.dcgo-msg-images{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.dcgo-msg-image{border:1px solid var(--color-border-subtle);cursor:zoom-in;border-radius:8px;max-width:220px;max-height:220px;display:block}.dcgo-msg-text{white-space:pre-wrap;word-break:break-word}.dcgo-markdown{color:var(--color-text-primary);word-break:break-word;font-size:14px;line-height:1.6}.dcgo-markdown>:first-child{margin-top:0}.dcgo-markdown>:last-child{margin-bottom:0}.dcgo-markdown p{margin:0 0 8px}.dcgo-markdown h1,.dcgo-markdown h2,.dcgo-markdown h3,.dcgo-markdown h4{margin:14px 0 6px;font-weight:600;line-height:1.35}.dcgo-markdown h1{font-size:20px}.dcgo-markdown h2{font-size:17px}.dcgo-markdown h3{font-size:15px}.dcgo-markdown h4{font-size:14px}.dcgo-markdown ul,.dcgo-markdown ol{margin:6px 0;padding-left:22px}.dcgo-markdown li,.dcgo-markdown li>p{margin:0}.dcgo-markdown li>p+p{margin-top:4px}.dcgo-markdown li+li{margin-top:2px}.dcgo-markdown blockquote{border-left:3px solid var(--color-border-primary);color:var(--color-text-tertiary);background:var(--color-bg-secondary);border-radius:0 4px 4px 0;margin:8px 0;padding:4px 12px}.dcgo-markdown code{background:var(--dcgo-soft);border-radius:4px;padding:1px 5px;font-family:JetBrains Mono,ui-monospace,Menlo,monospace;font-size:12.5px}.dcgo-markdown pre{background:var(--dcgo-soft);border-radius:8px;margin:10px 0;padding:12px 14px;font-size:12.5px;line-height:1.6;overflow-x:auto}.dcgo-markdown pre code{font-size:inherit;background:0 0;padding:0}.dcgo-markdown table{border-collapse:collapse;width:100%;margin:10px 0;font-size:13px}.dcgo-markdown th,.dcgo-markdown td{border:1px solid var(--color-border-subtle);text-align:left;padding:6px 10px}.dcgo-markdown th{background:var(--color-bg-secondary);font-weight:600}.dcgo-markdown a{color:var(--dcgo-brand);text-underline-offset:2px;text-decoration:underline}.dcgo-markdown hr{border:0;border-top:1px solid var(--color-border-subtle);margin:14px 0}.dcgo-markdown img{border-radius:6px;max-width:100%}.dcgo-chat-input>div button:not(.send) .dcgo-icon{vertical-align:middle}.dcgo-nav-title-toggle{width:100%;color:inherit;font-family:inherit;font-size:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:flex}.dcgo-nav-title-toggle .dcgo-icon{width:11px;height:11px}.dcgo-nav-title-toggle:hover{color:var(--color-text-secondary)}.dcgo-nav-title-count{color:var(--color-text-quaternary);margin-left:auto;font-weight:400}.dcgo-nav-empty{color:var(--color-text-quaternary);margin:6px 8px 4px;font-size:12px}.dcgo-long-video-row{width:100%;color:var(--color-text-primary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:flex}.dcgo-long-video-row:hover{background:var(--color-bg-secondary)}.dcgo-long-video-row .flex-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dcgo-long-video-status{border-radius:8px;flex-shrink:0;padding:1px 6px;font-size:10px;font-weight:500;display:inline-block}.dcgo-long-video-status.status-pending,.dcgo-long-video-status.status-running{background:color-mix(in srgb, var(--color-brand) 12%, transparent);color:var(--color-brand)}.dcgo-long-video-status.status-done{color:#16a34a;background:#dcfce7}.dcgo-long-video-status.status-failed{background:var(--color-danger-bg);color:var(--color-danger)}.dcgo-long-video-meta{color:var(--color-text-quaternary);flex-shrink:0;font-size:11px}.dcgo-crumb{color:var(--color-text-tertiary);align-items:center;gap:4px;font-size:13px;display:flex}.dcgo-crumb strong{color:var(--color-text-primary);font-weight:500}.dcgo-crumb-back{color:var(--color-text-tertiary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:4px;padding:4px 8px;display:inline-flex}.dcgo-crumb-back:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-crumb-back .dcgo-icon{width:12px;height:12px;transform:rotate(180deg)}.dcgo-news-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.dcgo-news-item{border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:12px;padding:10px 8px;display:flex}.dcgo-news-item>button{color:var(--color-text-tertiary);background:0 0;border:0;border-radius:4px;padding:4px 8px;font-size:12px}.dcgo-news-item>button:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.dcgo-news-bar{background:var(--color-text-hint);border-radius:2px;flex-shrink:0;width:3px;height:28px}.dcgo-news-bar.tiance{background:var(--color-btn-primary-bg)}.dcgo-news-bar.comp{background:var(--dcgo-info)}.dcgo-news-bar.data{background:var(--dcgo-good)}.dcgo-news-bar.asset{background:var(--dcgo-hint)}.dcgo-news-body{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.dcgo-news-label{background:var(--dcgo-soft);color:var(--color-text-tertiary);border-radius:4px;flex-shrink:0;padding:1px 8px;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-news-content{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.dcgo-result .body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.dcgo-result .body strong{font-size:13px}.dcgo-result .body .metas{color:var(--color-text-tertiary);flex-wrap:wrap;gap:8px 12px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.dcgo-result .body .metas .pos{color:var(--dcgo-good)}.dcgo-result .bar{width:130px;color:var(--color-text-tertiary);flex-shrink:0;align-items:center;gap:8px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.dcgo-result .bar-track{background:var(--dcgo-soft);border-radius:3px;flex:1;height:6px;overflow:hidden}.dcgo-result .bar-fill{background:var(--color-text-quaternary);border-radius:3px;height:100%;display:block}.dcgo-result .bar-fill.bar-good{background:var(--dcgo-good)}.dcgo-result .bar-fill.bar-normal{background:var(--dcgo-info)}.dcgo-result .bar-fill.bar-danger{background:var(--color-danger)}.dcgo-result .bar-disabled{color:var(--color-text-quaternary)}.dcgo-chip{align-items:center;gap:6px;display:inline-flex}.dcgo-chip-dot{background:var(--dcgo-brand);border-radius:50%;width:5px;height:5px}.dcgo-briefing-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.dcgo-briefing-actions button{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);color:var(--color-text-secondary);border-radius:6px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;display:inline-flex}.dcgo-briefing-actions button.dcgo-primary{border-color:var(--color-text-primary);background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);font-weight:600}.dcgo-briefing-actions button.ghost{color:var(--color-text-tertiary);background:0 0;border:0}.dcgo-briefing-foot{color:var(--color-text-tertiary);margin-top:20px;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-briefing-collapse{align-items:center;gap:10px;margin-top:24px;display:flex}.dcgo-briefing-collapse button{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);color:var(--color-text-secondary);border-radius:6px;align-items:center;gap:6px;padding:4px 12px;font-size:12px;display:inline-flex}.dcgo-briefing-collapse span{color:var(--color-text-quaternary);font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-panel-sub{color:var(--color-text-tertiary);margin:-12px 0 16px;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-panel-count{color:var(--color-text-quaternary);margin-left:8px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:400}.dcgo-line-card .label-radar{color:var(--dcgo-info)}.dcgo-line-card .label-match{color:var(--dcgo-good)}.dcgo-line-card .label-simulate{color:var(--dcgo-hint)}.dcgo-line-card .label-dissect{color:var(--dcgo-brand)}.dcgo-line-card .label-distill{color:var(--color-text-primary)}.dcgo-line-card>button .dcgo-icon{width:12px;height:12px;margin-left:4px}.dcgo-formula{flex-wrap:wrap;gap:8px}.dcgo-formula .elements{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.dcgo-formula .el-row{align-items:center;gap:6px;display:inline-flex}.dcgo-formula .chip{background:var(--dcgo-soft);color:var(--color-text-primary);border-radius:4px;padding:2px 8px;font-size:12px}.dcgo-formula .plus{color:var(--color-text-quaternary);background:0 0;padding:0}.dcgo-asset-tabs-meta{color:var(--color-text-tertiary);margin-left:auto;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-asset-tabs button{align-items:center;gap:4px;display:inline-flex}.dcgo-asset-tabs button .count{background:var(--dcgo-soft);color:var(--color-text-tertiary);border-radius:8px;margin-left:4px;padding:0 5px;font-family:JetBrains Mono,monospace;font-size:10px}.dcgo-asset-tabs button.active .count{background:color-mix(in srgb, var(--color-spinner-on-dark) 18%, transparent);color:color-mix(in srgb, var(--color-spinner-on-dark) 85%, transparent)}.dcgo-asset-aside-title{color:var(--color-text-tertiary);letter-spacing:.06em;text-transform:uppercase;margin:16px 0 6px;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-asset-aside-title:first-child{margin-top:4px}.dcgo-assets aside button{align-items:center;gap:8px;display:flex}.dcgo-assets aside button .count{color:var(--color-text-quaternary);margin-left:auto;font-family:JetBrains Mono,monospace;font-size:10px}.dcgo-assets aside button.active{background:var(--color-bg-secondary);color:var(--color-text-primary);font-weight:500}.dcgo-asset-thumb{aspect-ratio:16/10;color:var(--color-text-tertiary);background:linear-gradient(135deg,#ecedf0,#dee0e3);place-items:center;font-family:JetBrains Mono,monospace;display:grid;position:relative}.dcgo-asset-thumb .caption{color:color-mix(in srgb, var(--color-text-primary) 65%, transparent);font-size:11px}.dcgo-asset-thumb .chip{background:color-mix(in srgb, var(--color-bg-primary) 90%, transparent);color:var(--color-text-primary);border-radius:3px;padding:1px 6px;font-size:10px;position:absolute;top:8px;left:8px}.dcgo-asset-thumb.thumb-lab{background:linear-gradient(135deg,#e8f1ff,#dce8ff)}.dcgo-asset-thumb.thumb-user{background:linear-gradient(135deg,#fbeeeb,#f5d4cc)}.dcgo-asset-thumb.thumb-product{background:linear-gradient(135deg,#f5e6d3,#e3c8a8)}.dcgo-asset-thumb.thumb-music{background:linear-gradient(135deg,#f0efeb,#c8c4b8)}.dcgo-asset-thumb.thumb-doc{background:linear-gradient(135deg,#fafaf8,#e8eaec)}.dcgo-asset-thumb.thumb-office{background:linear-gradient(135deg,#f0efeb,#c8c4b8)}.dcgo-asset-card p{flex-wrap:wrap;gap:4px;margin:0;padding:0 12px;display:flex}.dcgo-asset-tag{background:var(--dcgo-soft);color:var(--color-text-tertiary);border-radius:3px;padding:1px 6px;font-size:11px}.dcgo-table-head{margin:28px 0 12px;font-size:14px}.dcgo-table-head span{color:var(--color-text-quaternary);margin-left:8px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:400}.dcgo-data-table td.num,.dcgo-data-table td.id-cell{font-family:JetBrains Mono,monospace}.dcgo-data-table td.id-cell{color:var(--color-text-tertiary);font-size:11px}.dcgo-data-table td.trend{color:var(--dcgo-brand)}.dcgo-data-table .row-tag{border-radius:3px;margin-left:6px;padding:1px 5px;font-family:JetBrains Mono,monospace;font-size:10px}.dcgo-data-table .row-tag.tag-good{color:var(--dcgo-good);background:var(--dcgo-good-soft)}.dcgo-data-table .row-tag.tag-danger{color:var(--color-danger);background:var(--dcgo-danger-soft)}.dcgo-data-table .row-score{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-radius:3px;padding:1px 6px;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-data-table .row-empty{color:var(--color-text-quaternary)}.dcgo-kpi-grid article p .delta{color:var(--dcgo-brand);margin-right:6px;font-weight:500}.dcgo-filterbar{flex-wrap:wrap}.dcgo-filterbar button{align-items:center;gap:6px;display:inline-flex}.dcgo-filterbar button .dot{background:var(--color-text-quaternary);border-radius:50%;width:6px;height:6px}.dcgo-filterbar button .count{color:var(--color-text-quaternary);font-family:JetBrains Mono,monospace;font-size:10px}.dcgo-filterbar button.type-good .dot{background:var(--dcgo-good)}.dcgo-filterbar button.type-danger .dot{background:var(--color-danger)}.dcgo-filterbar button.type-info .dot{background:var(--dcgo-info)}.dcgo-filterbar button.type-hint .dot{background:var(--dcgo-hint)}.dcgo-filterbar button.type-tiance .dot{background:var(--color-btn-primary-bg)}.dcgo-filterbar button.active .count{color:color-mix(in srgb, var(--color-spinner-on-dark) 75%, transparent)}.dcgo-notices article{align-items:center;gap:12px;padding:12px 16px 12px 20px;display:flex;position:relative}.dcgo-notices article .bar{background:var(--color-text-hint);border-radius:0 2px 2px 0;width:3px;position:absolute;top:12px;bottom:12px;left:0}.dcgo-notices article .bar-good{background:var(--dcgo-good)}.dcgo-notices article .bar-danger{background:var(--color-danger)}.dcgo-notices article .bar-info{background:var(--dcgo-info)}.dcgo-notices article .bar-hint{background:var(--dcgo-hint)}.dcgo-notices article .bar-tiance{background:var(--color-btn-primary-bg)}.dcgo-notices article .time{width:40px;color:var(--color-text-tertiary);flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:11px}.dcgo-notices article .cat{background:var(--dcgo-soft);color:var(--color-text-secondary);border-radius:3px;flex-shrink:0;padding:1px 6px;font-size:11px}.dcgo-notices article .cat.cat-good{color:var(--dcgo-good);background:var(--dcgo-good-soft)}.dcgo-notices article .cat.cat-danger{color:var(--color-danger);background:var(--dcgo-danger-soft)}.dcgo-notices article .cat.cat-info{color:var(--dcgo-info);background:color-mix(in srgb, var(--dcgo-info) 12%, transparent)}.dcgo-notices article .cat.cat-hint{color:var(--dcgo-hint);background:color-mix(in srgb, var(--dcgo-hint) 12%, transparent)}.dcgo-notices article .cat.cat-tiance{color:var(--color-text-primary);background:var(--dcgo-soft)}.dcgo-notices article>button{flex-shrink:0}@media (width<=1024px){.dcgo-sidebar{width:220px}.dcgo-s0,.dcgo-view.row,.dcgo-s2-body{flex-direction:column}.dcgo-s0-aside,.dcgo-preview{border-left:0;border-top:1px solid var(--color-border-subtle);width:100%;max-width:none}.dcgo-preview{max-height:360px}.dcgo-rec-grid,.dcgo-kpi-grid,.dcgo-video-grid,.dcgo-thumb-grid{grid-template-columns:repeat(2,1fr)}.dcgo-storyboard{min-height:420px;overflow:auto}}@media (width<=720px){.digital-cgo{flex-direction:column}.dcgo-sidebar{width:100%;height:auto;max-height:180px}.dcgo-sidebar-foot,.dcgo-nav-title:nth-of-type(n+2),.dcgo-nav button:nth-of-type(n+5){display:none}.dcgo-topbar{flex-direction:column;align-items:stretch;height:auto;padding:8px}.dcgo-s0-main,.dcgo-chat-flow,.dcgo-view.padded,.dcgo-journey{padding:20px}.dcgo-hero h1{font-size:30px}.dcgo-rec-grid,.dcgo-kpi-grid,.dcgo-video-grid,.dcgo-thumb-grid{grid-template-columns:1fr}.dcgo-assets{flex-direction:column}.dcgo-assets aside{width:100%}.dcgo-journey section{grid-template-columns:1fr}.dcgo-journey section>span{text-align:left;font-size:42px}}.project-list-page{background:var(--color-bg-page);min-height:100vh;color:var(--color-text-primary);padding:32px 48px;font-family:inherit}.project-list-header{margin-bottom:32px}.project-list-header h1{color:var(--color-text-primary);margin:0 0 8px;font-size:28px;font-weight:600}.project-list-subtitle{color:var(--color-text-tertiary);margin:0;font-size:14px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.project-card{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);cursor:pointer;text-align:left;min-height:160px;color:inherit;border-radius:12px;flex-direction:column;gap:8px;padding:20px;font-family:inherit;transition:border-color .15s,box-shadow .15s,transform .1s;display:flex;position:relative}.project-card:hover{border-color:var(--color-brand);box-shadow:0 4px 16px var(--color-shadow-subtle)}.project-card:hover .project-card-delete{opacity:1}.project-card:active{transform:scale(.99)}.project-card-name{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:600}.project-card-brief{color:var(--color-text-tertiary);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:13px;display:-webkit-box;overflow:hidden}.project-card-meta{flex-wrap:wrap;gap:6px;margin-top:auto;display:flex}.project-card-tag{background:var(--color-bg-tertiary);color:var(--color-text-tertiary);border-radius:4px;padding:2px 8px;font-size:11px}.project-card-delete{background:var(--color-bg-tertiary);width:24px;height:24px;color:var(--color-text-tertiary);cursor:pointer;opacity:0;border:none;border-radius:50%;font-size:18px;line-height:1;transition:background .15s,color .15s,opacity .15s;position:absolute;top:8px;right:8px}.project-card-delete:hover{background:var(--color-danger-bg);color:var(--color-danger)}.project-card-new{color:var(--color-text-tertiary);background:0 0;border-style:dashed;justify-content:center;align-items:center;gap:4px;min-height:160px}.project-card-new:hover{color:var(--color-brand)}.project-card-new-icon{font-size:32px;font-weight:300;line-height:1}.project-list-empty{text-align:center;color:var(--color-text-tertiary);grid-column:1/-1;padding:48px}.project-list-template-cta{border:1px dashed var(--color-border-secondary);background:color-mix(in srgb, var(--color-brand) 8%, var(--color-bg-secondary));cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;border-radius:12px;align-items:center;gap:16px;margin-bottom:16px;padding:16px 20px;transition:border-color .15s,background .15s,transform .15s;display:flex}.project-list-template-cta:hover{border-color:var(--color-brand);transform:translateY(-1px)}.project-list-template-cta-text{flex-direction:column;flex:1;gap:4px;display:flex}.project-list-template-cta-text strong{color:var(--color-text-primary);font-size:14px;font-weight:600}.project-list-template-cta-text span{color:var(--color-text-tertiary);font-size:12px}.project-list-template-cta-arrow{color:var(--color-brand);font-size:18px}.project-list-drawer{background:var(--color-bg-primary);border-radius:12px;flex-direction:column;width:min(720px,92vw);max-height:80vh;display:flex;overflow:hidden}.project-list-drawer-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.project-list-drawer-header h2{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:600}.project-list-drawer-close{width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;font-size:20px;line-height:1}.project-list-drawer-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.project-list-drawer-body{flex:1;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding:20px;display:grid;overflow-y:auto}.project-list-drawer-body .project-card{border:1px solid var(--color-border);background:var(--color-bg-secondary);cursor:pointer;border-radius:10px;padding:14px;transition:border-color .15s,box-shadow .15s;position:relative}.project-list-drawer-body .project-card:hover{border-color:var(--color-brand)}.project-list-drawer-body .project-card--current{border-color:var(--color-brand);box-shadow:0 0 0 1px var(--color-brand)}.project-list-drawer-body .project-card-new{color:var(--color-text-tertiary);border:1px dashed var(--color-border);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.project-list-drawer-body .project-card-new:hover{color:var(--color-brand);border-color:var(--color-brand)}.project-list-drawer-body .project-card-new-icon{font-size:24px;line-height:1}.project-list-drawer-body .project-card-name{color:var(--color-text-primary);margin:0 0 6px;font-size:14px;font-weight:600}.project-list-drawer-body .project-card-current-tag{background:var(--color-brand);color:var(--color-bg-primary);border-radius:8px;padding:1px 6px;font-size:10px;position:absolute;top:12px;right:36px}.project-list-drawer-body .project-card-brief{color:var(--color-text-secondary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 8px;font-size:12px;display:-webkit-box;overflow:hidden}.project-list-drawer-body .project-card-meta{flex-wrap:wrap;gap:4px;display:flex}.project-list-drawer-body .project-card-tag{background:var(--color-bg-tertiary);color:var(--color-text-tertiary);border-radius:6px;padding:1px 6px;font-size:10px}.project-list-drawer-body .project-card-delete{width:22px;height:22px;color:var(--color-text-quaternary);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;font-size:16px;line-height:1;transition:opacity .15s;position:absolute;top:8px;right:8px}.project-card:hover .project-list-drawer-body .project-card-delete{opacity:1}.project-list-drawer-body .project-card-delete:hover{background:var(--color-danger-bg);color:var(--color-danger)}.project-list-empty{text-align:center;color:var(--color-text-tertiary);grid-column:1/-1;padding:40px 0;font-size:13px}.template-list-page{background:var(--color-bg-page);height:100vh;color:var(--color-text-primary);flex:1;padding:32px 40px;overflow-y:auto}.template-list-header{margin-bottom:24px}.template-list-header h1{margin:0 0 6px;font-size:22px;font-weight:600}.template-list-subtitle{color:var(--color-text-tertiary);margin:0;font-size:13px}.template-filters{background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);border-radius:10px;flex-direction:column;gap:10px;margin-bottom:24px;padding:16px;display:flex}.template-filter-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.template-filter-label{width:40px;color:var(--color-text-tertiary);flex-shrink:0;font-size:12px}.template-filter-chip{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:14px;padding:4px 12px;font-size:12px;transition:background .15s,border-color .15s,color .15s}.template-filter-chip:hover{border-color:var(--color-border-secondary);color:var(--color-text-primary)}.template-filter-chip.active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:var(--color-btn-primary-bg)}.template-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.template-grid-empty{text-align:center;color:var(--color-text-tertiary);grid-column:1/-1;padding:60px 0;font-size:13px}.template-card{background:var(--color-bg-primary);border:1px solid var(--color-border-subtle);cursor:pointer;border-radius:12px;flex-direction:column;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;overflow:hidden}.template-card:hover{border-color:var(--color-border-secondary);box-shadow:0 8px 24px var(--color-shadow);transform:translateY(-2px)}.template-card-cover{aspect-ratio:16/9;background:var(--color-bg-tertiary);width:100%;position:relative;overflow:hidden}.template-card-cover img{object-fit:cover;width:100%;height:100%;transition:opacity .2s}.template-card-duration{background:var(--color-media-overlay);color:var(--color-spinner-on-dark);border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;position:absolute;bottom:8px;right:8px}.template-card-body{flex-direction:column;gap:8px;padding:14px 16px 16px;display:flex}.template-card-title{color:var(--color-text-primary);margin:0;font-size:14px;font-weight:600;line-height:1.4}.template-card-subtitle{color:var(--color-text-tertiary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.template-card-tags{flex-wrap:wrap;gap:4px;display:flex}.template-card-tag{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border-radius:4px;padding:1px 6px;font-size:10px}.template-card-footer{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.template-card-usage{color:var(--color-text-quaternary);font-size:11px}.template-card-cta{border:1px solid var(--color-btn-primary-bg);background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);cursor:pointer;border-radius:6px;padding:5px 12px;font-size:12px;transition:background .15s,opacity .15s}.template-card-cta:hover{background:var(--color-btn-primary-bg-hover)}.template-detail-page{background:var(--color-bg-page);height:100vh;color:var(--color-text-primary);flex:1;padding:24px 40px 40px;overflow-y:auto}.template-detail-loading{text-align:center;color:var(--color-text-tertiary);padding:60px 0;font-size:13px}.template-detail-back{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:6px;margin-bottom:16px;padding:4px 10px;font-size:12px;transition:background .15s,border-color .15s}.template-detail-back:hover{border-color:var(--color-border-secondary);color:var(--color-text-primary)}.template-detail-body{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:32px;display:grid}@media (width<=900px){.template-detail-body{grid-template-columns:1fr}}.template-detail-preview{flex-direction:column;gap:12px;display:flex}.template-detail-poster{aspect-ratio:16/9;background:var(--color-media-placeholder-bg);border-radius:12px;width:100%;position:relative;overflow:hidden}.template-detail-poster img{object-fit:contain;width:100%;height:100%}.template-detail-poster-hint{background:var(--color-media-overlay);color:var(--color-spinner-on-dark);border-radius:6px;padding:4px 10px;font-size:11px;position:absolute;bottom:12px;left:12px}.template-detail-stills{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.template-detail-still{background:var(--color-bg-tertiary);cursor:pointer;border:2px solid #0000;border-radius:6px;flex-shrink:0;width:88px;height:50px;padding:0;transition:border-color .15s;overflow:hidden}.template-detail-still img{object-fit:cover;width:100%;height:100%}.template-detail-still:hover{border-color:var(--color-border-secondary)}.template-detail-still.active{border-color:var(--color-link)}.template-detail-info{flex-direction:column;gap:14px;display:flex}.template-detail-title{margin:0;font-size:22px;font-weight:600;line-height:1.3}.template-detail-subtitle{color:var(--color-text-tertiary);margin:0;font-size:13px;line-height:1.6}.template-detail-meta{color:var(--color-text-secondary);align-items:center;gap:10px;font-size:12px;display:flex}.template-detail-meta-divider{background:var(--color-border-secondary);width:1px;height:12px}.template-detail-tags{flex-wrap:wrap;gap:6px;display:flex}.template-detail-tag{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border-radius:5px;padding:2px 8px;font-size:11px}.template-detail-description{color:var(--color-text-secondary);white-space:pre-wrap;font-size:13px;line-height:1.7}.template-detail-cta{border:1px solid var(--color-btn-primary-bg);background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);cursor:pointer;border-radius:8px;margin-top:4px;padding:10px 16px;font-size:14px;font-weight:500;transition:background .15s,opacity .15s}.template-detail-cta:hover:not(:disabled){background:var(--color-btn-primary-bg-hover)}.template-detail-cta:disabled{opacity:.6;cursor:not-allowed}.template-detail-script{border:1px solid var(--color-border-subtle);background:var(--color-bg-secondary);border-radius:8px;margin-top:4px}.template-detail-script summary{color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;padding:8px 12px;font-size:12px}.template-detail-script-list{flex-direction:column;gap:4px;margin:0;padding:0 12px 12px 28px;font-size:12px;display:flex}.template-detail-script-list li{color:var(--color-text-secondary);align-items:center;gap:8px;display:flex}.template-detail-script-type{background:var(--color-bg-tertiary);color:var(--color-text-tertiary);border-radius:3px;padding:1px 6px;font-size:10px}.template-detail-script-label{flex:1}.template-detail-script-duration{color:var(--color-text-quaternary);font-size:11px}.template-detail-related{margin-top:40px}.template-detail-related h2{margin:0 0 12px;font-size:15px;font-weight:600}.template-detail-related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}@media (width<=700px){.template-detail-related-grid{grid-template-columns:1fr}}.template-detail-related-card{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);cursor:pointer;text-align:left;font:inherit;color:inherit;border-radius:8px;flex-direction:column;gap:6px;padding:0;transition:border-color .15s,transform .15s;display:flex;overflow:hidden}.template-detail-related-card:hover{border-color:var(--color-border-secondary);transform:translateY(-1px)}.template-detail-related-card img{aspect-ratio:16/9;object-fit:cover;background:var(--color-bg-tertiary);width:100%}.template-detail-related-card span{color:var(--color-text-primary);padding:8px 12px;font-size:12px}.onboarding-modal{background:var(--color-bg-primary);border:1px solid var(--color-border-subtle);width:560px;max-width:92vw;box-shadow:0 20px 60px var(--color-shadow-strong);border-radius:14px;padding:0;overflow:hidden}.onboarding-flow{flex-direction:column;display:flex}.onboarding-flow-progress{border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-secondary);align-items:center;gap:8px;padding:14px 20px;display:flex}.onboarding-flow-dot{background:var(--color-bg-tertiary);width:22px;height:22px;color:var(--color-text-tertiary);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.onboarding-flow-dot.active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.onboarding-flow-dot.done{background:color-mix(in srgb, var(--color-btn-primary-bg) 25%, transparent);color:var(--color-text-primary)}.onboarding-flow-skip{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:4px 10px;font-size:12px;transition:color .15s}.onboarding-flow-skip:hover{color:var(--color-text-primary)}.onboarding-flow-step{padding:24px 28px 22px}.onboarding-flow-step h2{color:var(--color-text-primary);margin:0 0 6px;font-size:18px;font-weight:600}.onboarding-flow-intro{color:var(--color-text-tertiary);margin:0 0 18px;font-size:13px;line-height:1.6}.onboarding-flow-points{flex-direction:column;gap:6px;margin:0 0 22px;padding:0;list-style:none;display:flex}.onboarding-flow-points li{color:var(--color-text-secondary);font-size:13px;line-height:1.6}.onboarding-flow-industries{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:18px;display:grid}.onboarding-flow-industry{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);cursor:pointer;text-align:left;color:inherit;border-radius:10px;align-items:center;gap:12px;padding:14px 16px;transition:border-color .15s,background .15s,transform .15s;display:flex}.onboarding-flow-industry:hover{border-color:var(--color-border-secondary);background:var(--color-hover-bg);transform:translateY(-1px)}.onboarding-flow-industry.active{border-color:var(--color-btn-primary-bg);background:color-mix(in srgb, var(--color-btn-primary-bg) 12%, transparent)}.onboarding-flow-industry-icon{font-size:24px}.onboarding-flow-industry-name{font-size:14px;font-weight:500}.onboarding-flow-templates{flex-direction:column;gap:10px;max-height:380px;margin-bottom:18px;display:flex;overflow-y:auto}.onboarding-flow-templates-empty{text-align:center;color:var(--color-text-tertiary);padding:40px 0;font-size:13px}.onboarding-flow-template{border:1px solid var(--color-border-subtle);background:var(--color-bg-primary);cursor:pointer;text-align:left;color:inherit;border-radius:10px;gap:12px;padding:10px;transition:border-color .15s,transform .15s,background .15s;display:flex}.onboarding-flow-template:hover{border-color:var(--color-border-secondary);background:var(--color-hover-bg);transform:translateY(-1px)}.onboarding-flow-template-cover{aspect-ratio:16/9;background:var(--color-bg-tertiary);border-radius:6px;flex-shrink:0;width:120px;position:relative;overflow:hidden}.onboarding-flow-template-cover img{object-fit:cover;width:100%;height:100%}.onboarding-flow-template-duration{background:var(--color-media-overlay);color:var(--color-spinner-on-dark);border-radius:3px;padding:1px 6px;font-size:10px;font-weight:600;position:absolute;bottom:4px;right:4px}.onboarding-flow-template-body{flex-direction:column;flex:1;justify-content:center;gap:4px;min-width:0;display:flex}.onboarding-flow-template-title{color:var(--color-text-primary);font-size:13px;font-weight:600}.onboarding-flow-template-subtitle{color:var(--color-text-tertiary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.onboarding-flow-template-cta{color:var(--color-link);margin-top:2px;font-size:11px;font-weight:500}.onboarding-flow-actions{align-items:center;gap:10px;margin-top:4px;display:flex}.onboarding-flow-primary{border:1px solid var(--color-btn-primary-bg);background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);cursor:pointer;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:500;transition:background .15s}.onboarding-flow-primary:hover{background:var(--color-btn-primary-bg-hover)}.onboarding-flow-secondary{border:1px solid var(--color-border-primary);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;border-radius:8px;padding:8px 14px;font-size:12px;transition:background .15s,color .15s}.onboarding-flow-secondary:hover{background:var(--color-hover-bg);color:var(--color-text-primary)}.onboarding-flow-link{color:var(--color-link);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;margin-left:auto;padding:4px 8px;font-size:12px;text-decoration:underline}.onboarding-flow-link:hover{color:var(--color-link-hover)}
