.storage-image-node{position:relative;display:flex;align-items:center;max-width:100%;margin:1em 0}.storage-image-node__image-wrapper{position:relative;display:inline-block;max-width:100%}.storage-image-node__toolbar-wrapper{position:absolute;top:-40px;left:50%;transform:translate(-50%);display:flex;gap:4px;padding:4px;background:#fff;border-radius:6px;box-shadow:0 2px 8px #00000026;z-index:5}.storage-image-node__separator{width:1px;height:24px;background:#d9d9d9;margin:auto 4px}.storage-image-node__object-fit-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #d9d9d9;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s ease;color:#000000a6}.storage-image-node__object-fit-button:hover{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500)}.storage-image-node__object-fit-button--active{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500);background:#e6f7ff}.storage-image-node--align-left{justify-content:flex-start}.storage-image-node--align-center{justify-content:center}.storage-image-node--align-right{justify-content:flex-end}.storage-image-node__image{max-width:100%;height:auto;display:block;border-radius:4px;transition:box-shadow .2s ease}.storage-image-node--selected .storage-image-node__image{box-shadow:0 0 0 2px #1890ff;outline:none}.ProseMirror:not([contenteditable=true]) .storage-image-node--selected .storage-image-node__image{box-shadow:none;cursor:default}.ProseMirror:not([contenteditable=true]) .storage-image-node .storage-image-node__image{cursor:default;user-select:none}.storage-image-node--resizing .storage-image-node__image{transition:none;user-select:none}@media (prefers-color-scheme: dark){.storage-image-node__toolbar-wrapper{background:#1f1f1f;box-shadow:0 2px 8px #00000073}.storage-image-node__object-fit-button{background:#1f1f1f;border-color:#434343;color:#a6a6a6}.storage-image-node__object-fit-button:hover{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500)}.storage-image-node__object-fit-button--active{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500);background:#111b26}}.project-image-node{position:relative;display:flex;align-items:center;max-width:100%;margin:1em 0}.project-image-node__image-wrapper{position:relative;display:inline-block;max-width:100%}.project-image-node__toolbar-wrapper{position:absolute;top:-40px;left:50%;transform:translate(-50%);display:flex;gap:4px;padding:4px;background:#fff;border-radius:6px;box-shadow:0 2px 8px #00000026;z-index:5}.project-image-node__alignment-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #d9d9d9;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s ease;color:#000000a6}.project-image-node__alignment-button:hover{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500)}.project-image-node__alignment-button--active{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500);background:#e6f7ff}.project-image-node__separator{width:1px;height:24px;background:#d9d9d9;margin:auto 4px}.project-image-node__object-fit-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #d9d9d9;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s ease;color:#000000a6}.project-image-node__object-fit-button:hover{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500)}.project-image-node__object-fit-button--active{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500);background:#e6f7ff}.project-image-node__url-editor{display:flex;gap:4px;padding:4px;background:#fff;border-radius:6px;box-shadow:0 2px 8px #00000026}.project-image-node__url-input{min-width:280px;height:32px;padding:0 12px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px;outline:none;transition:all .2s ease}.project-image-node__url-input:focus{border-color:var(--tt-brand-color-500);box-shadow:0 0 0 2px #1890ff1a}.project-image-node__url-input::placeholder{color:#00000040}.project-image-node__url-action-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #d9d9d9;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s ease;color:#000000a6}.project-image-node__url-action-button:hover{border-color:var(--tt-brand-color-500)}.project-image-node__url-action-button--confirm{color:#52c41a}.project-image-node__url-action-button--confirm:hover{color:#73d13d;border-color:#52c41a;background:#f6ffed}.project-image-node__url-action-button--cancel{color:#ff4d4f}.project-image-node__url-action-button--cancel:hover{color:#ff7875;border-color:#ff4d4f;background:#fff2f0}.project-image-node--align-left{justify-content:flex-start}.project-image-node--align-center{justify-content:center}.project-image-node--align-right{justify-content:flex-end}.project-image-node__image{max-width:100%;height:auto;display:block;border-radius:4px;transition:box-shadow .2s ease;object-fit:cover}.project-image-node--selected .project-image-node__image{box-shadow:0 0 0 2px var(--tt-brand-color-500);outline:none}.ProseMirror:not([contenteditable=true]) .project-image-node--selected .project-image-node__image{box-shadow:none;cursor:default}.ProseMirror:not([contenteditable=true]) .project-image-node .project-image-node__image{cursor:default;user-select:none}.project-image-node--resizing .project-image-node__image{transition:none;user-select:none}.project-image-node__resize-handle{position:absolute;width:12px;height:12px;background:var(--tt-brand-color-500);border:2px solid white;border-radius:50%;box-shadow:0 1px 3px #0003;z-index:5;cursor:pointer}.project-image-node__resize-handle--nw{top:-6px;left:-6px;cursor:nw-resize}.project-image-node__resize-handle--ne{top:-6px;right:-6px;cursor:ne-resize}.project-image-node__resize-handle--sw{bottom:-6px;left:-6px;cursor:sw-resize}.project-image-node__resize-handle--se{bottom:-6px;right:-6px;cursor:se-resize}.project-image-node__resize-handle:hover{background:var(--tt-brand-color-500);transform:scale(1.2)}.project-image-node__placeholder{height:50px;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:8px;position:relative;overflow:hidden;width:100%;background:#f9f9f9;color:#888a92}.project-image-node__icon{position:absolute;left:-28px;bottom:-28px;opacity:.06}.project-image-node__upload-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center;color:inherit}.project-image-node__progress-wrapper{position:absolute;bottom:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.project-image-node__progress-circle{width:20px;height:20px;border:2px solid rgba(24,144,255,.3);border-top-color:var(--tt-brand-color-500);border-radius:50%;animation:project-image-spin .8s linear infinite}.project-image-node__progress-text{font-size:14px;font-weight:500;text-align:center;color:inherit}.project-image-node__error-content{display:flex;align-items:center;gap:8px}.project-image-node__error-title{font-size:14px;font-weight:500;color:inherit}.project-image-node__retry-button{font-size:14px;color:var(--tt-brand-color-500);background:transparent;border:none;padding:0;cursor:pointer;text-decoration:underline;transition:opacity .2s ease}.project-image-node__retry-button:hover{opacity:.8}.project-image-node__retry-button:active{opacity:.6}.project-image-node__loading-spinner{width:24px;height:24px;border:3px solid #f0f0f0;border-top-color:var(--tt-brand-color-500);border-radius:50%;animation:project-image-spin .8s linear infinite}.project-image-node__error-icon{font-size:32px}.project-image-node__error-message{font-size:14px;text-align:center}@keyframes project-image-spin{to{transform:rotate(360deg)}}@media (prefers-color-scheme: dark){.project-image-node__alignment-toolbar,.project-image-node__url-editor{background:#1f1f1f;box-shadow:0 2px 8px #00000073}.project-image-node__alignment-button{background:#1f1f1f;border-color:#434343;color:#a6a6a6}.project-image-node__alignment-button:hover,.project-image-node__alignment-button--active{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500);background:#111b26}.project-image-node__object-fit-button{background:#1f1f1f;border-color:#434343;color:#a6a6a6}.project-image-node__object-fit-button:hover{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500)}.project-image-node__object-fit-button--active{color:var(--tt-brand-color-500);border-color:var(--tt-brand-color-500);background:#111b26}.project-image-node__url-input{background:#1f1f1f;border-color:#434343;color:#e8e8e8}.project-image-node__url-input:focus{border-color:var(--tt-brand-color-500);box-shadow:0 0 0 2px #40a9ff33}.project-image-node__url-input::placeholder{color:#ffffff40}.project-image-node__url-action-button{background:#1f1f1f;border-color:#434343;color:#a6a6a6}.project-image-node__url-action-button:hover{border-color:var(--tt-brand-color-500)}.project-image-node__url-action-button--confirm{color:#95de64}.project-image-node__url-action-button--confirm:hover{color:#b7eb8f;border-color:#52c41a;background:#162312}.project-image-node__url-action-button--cancel{color:#ff7875}.project-image-node__url-action-button--cancel:hover{color:#ffa39e;border-color:#ff4d4f;background:#2a1215}.project-image-node__placeholder--loading{background:#eef3fdcc;color:var(--tt-brand-color-500)}.project-image-node__placeholder--error{background:#fff8ebcc;border-color:#fa8c1633;color:#ffa940}.project-image-node__progress-circle{border-color:#40a9ff4d;border-top-color:var(--tt-brand-color-500)}.project-image-node__loading-spinner{border-color:#434343;border-top-color:var(--tt-brand-color-500)}}
