.rich-editor{background:linear-gradient(90deg,transparent 46px,rgba(139,92,246,.16) 0,rgba(139,92,246,.16) 47px,transparent 0),repeating-linear-gradient(transparent,transparent 27px,rgba(139,92,246,.05) 0,rgba(139,92,246,.05) 28px),#faf9f6;border:1px solid rgba(139,92,246,.16);border-radius:16px;-webkit-box-shadow:0 10px 30px rgba(17,24,39,.05);box-shadow:0 10px 30px rgba(17,24,39,.05);min-height:280px;position:relative;-webkit-transition:border-color .2s,-webkit-box-shadow .2s;transition:border-color .2s,-webkit-box-shadow .2s;transition:border-color .2s,box-shadow .2s;transition:border-color .2s,box-shadow .2s,-webkit-box-shadow .2s}.rich-editor--focused{border-color:var(--sps-primary,#8b5cf6);-webkit-box-shadow:0 0 0 3px rgba(139,92,246,.12),0 12px 34px rgba(17,24,39,.07);box-shadow:0 0 0 3px rgba(139,92,246,.12),0 12px 34px rgba(17,24,39,.07)}.rich-editor__content .ProseMirror{word-wrap:break-word;color:var(--sps-text-strong,#1f2937);font-size:15px;line-height:28px;min-height:280px;outline:none;overflow-wrap:break-word;padding:20px 24px 20px 58px;white-space:normal}.rich-editor__content .ProseMirror>*+*{margin-top:.6em}.rich-editor__content .ProseMirror h1{font-size:1.7em;font-weight:700;margin-top:.4em}.rich-editor__content .ProseMirror h2{font-size:1.4em;font-weight:700;margin-top:.4em}.rich-editor__content .ProseMirror h3{font-size:1.2em;font-weight:600;margin-top:.4em}.rich-editor__content .ProseMirror ol,.rich-editor__content .ProseMirror ul{padding-left:1.4em}.rich-editor__content .ProseMirror blockquote{border-left:3px solid var(--sps-primary,#8b5cf6);color:var(--sps-text-default,#6b7280);font-style:italic;padding-left:12px}.rich-editor__content .ProseMirror pre{background:#1e1e2e;border-radius:8px;color:#f8f8f2;font-family:SFMono-Regular,Consolas,Menlo,monospace;font-size:13px;overflow-x:auto;padding:12px 14px}.rich-editor__content .ProseMirror pre code{background:none;color:inherit;padding:0}.rich-editor__content .ProseMirror code{background:rgba(139,92,246,.1);border-radius:4px;color:#6d28d9;font-family:SFMono-Regular,Consolas,Menlo,monospace;font-size:.92em;padding:1px 5px}.rich-editor__content .ProseMirror hr{border:none;border-top:1px solid var(--sps-primary-soft,#e5e7eb);margin:1em 0}.rich-editor__content .ProseMirror a{color:var(--sps-primary,#8b5cf6);text-decoration:underline}.rich-editor__content .ProseMirror.is-empty:first-child:before{color:var(--sps-text-soft,#adb5bd);content:attr(data-placeholder);float:left;height:0;pointer-events:none}.rich-bubble{background:#fff;border:1px solid #e5e7eb;border-radius:8px;-webkit-box-shadow:0 4px 14px rgba(0,0,0,.12);box-shadow:0 4px 14px rgba(0,0,0,.12);display:-webkit-box;display:-ms-flexbox;display:flex;gap:2px;padding:4px}.rich-bubble,.rich-bubble .rich-bubble-btn{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.rich-bubble .rich-bubble-btn{-webkit-box-pack:center;-ms-flex-pack:center;background:transparent;border:none;border-radius:6px;color:#374151;cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:12px;font-weight:600;height:30px;justify-content:center;min-width:30px;padding:0 6px;-webkit-transition:background .15s,color .15s;transition:background .15s,color .15s}.rich-bubble .rich-bubble-btn .material-icons{font-size:18px}.rich-bubble .rich-bubble-btn:hover{background:rgba(139,92,246,.1)}.rich-bubble .rich-bubble-btn.is-active{background:var(--sps-primary,#8b5cf6);color:#fff}.rich-bubble .rich-bubble-sep{background:#e5e7eb;height:20px;margin:0 2px;width:1px}.rich-toolbar{background:var(--sps-bg-surface,#fff);border-bottom:1px solid var(--sps-border-default,#e5e7eb);border-radius:16px 16px 0 0;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:2px;padding:6px 8px;position:sticky;top:var(--rich-toolbar-top,0);z-index:4}.rich-toolbar,.rich-toolbar .rich-toolbar__btn{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.rich-toolbar .rich-toolbar__btn{-webkit-box-pack:center;-ms-flex-pack:center;background:transparent;border:none;border-radius:6px;color:var(--sps-text-default,#4b5563);cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:13px;font-weight:600;height:32px;justify-content:center;min-width:32px;padding:0 6px;-webkit-transition:background .15s,color .15s;transition:background .15s,color .15s}.rich-toolbar .rich-toolbar__btn .material-icons{font-size:20px}.rich-toolbar .rich-toolbar__btn:hover:not(:disabled){background:rgba(139,92,246,.1)}.rich-toolbar .rich-toolbar__btn.is-active{background:rgba(139,92,246,.14);color:var(--sps-primary,#8b5cf6)}.rich-toolbar .rich-toolbar__btn:disabled{cursor:not-allowed;opacity:.35}.rich-toolbar .rich-toolbar__sep{background:var(--sps-border-default,#e5e7eb);height:20px;margin:0 6px;width:1px}.rich-block-handle{-webkit-box-orient:vertical;-webkit-box-direction:normal;background:#fff;border:1px solid #e5e7eb;border-radius:8px;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.1);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:2px;left:6px;padding:2px;position:absolute;z-index:15}.rich-block-handle .rich-block-handle__btn{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:26px;justify-content:center;-webkit-transition:background .15s,color .15s;transition:background .15s,color .15s;width:26px}.rich-block-handle .rich-block-handle__btn .material-icons{font-size:16px}.rich-block-handle .rich-block-handle__btn:hover:not(:disabled){background:rgba(139,92,246,.12);color:var(--sps-primary,#8b5cf6)}.rich-block-handle .rich-block-handle__btn--danger:hover:not(:disabled){background:hsla(0,95%,71%,.12);color:#fb6e6e}.rich-block-handle .rich-block-handle__btn:disabled{cursor:not-allowed;opacity:.35}.rich-slash{background:#fff;border:1px solid #e5e7eb;border-radius:8px;-webkit-box-shadow:0 6px 20px rgba(0,0,0,.15);box-shadow:0 6px 20px rgba(0,0,0,.15);max-height:280px;overflow-y:auto;padding:6px;position:fixed;width:220px;z-index:50}.rich-slash__search{border-bottom:1px solid #f3f4f6;color:#9ca3af;font-size:11px;margin-bottom:4px;padding:2px 8px 6px}.rich-slash__item{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:transparent;border:none;border-radius:6px;color:#374151;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:13px;gap:10px;padding:7px 8px;text-align:left;-webkit-transition:background .15s;transition:background .15s;width:100%}.rich-slash__item:hover{background:rgba(139,92,246,.1)}.rich-slash__icon{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:#f3f4f6;border-radius:6px;color:#6b7280;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:28px;justify-content:center;width:28px}.rich-slash__icon .material-icons{font-size:18px}.rich-editor--plain{background:#fff;border-color:#e5e7eb;-webkit-box-shadow:none;box-shadow:none}.rich-editor--plain.rich-editor--focused{border-color:var(--sps-primary,#8b5cf6);-webkit-box-shadow:0 0 0 3px rgba(139,92,246,.12);box-shadow:0 0 0 3px rgba(139,92,246,.12)}.rich-editor--plain .rich-editor__content .ProseMirror{padding-left:24px}.dark-mode .rich-editor.rich-editor--plain{background:#1f1b2e}.dark-mode .rich-editor{background:linear-gradient(90deg,transparent 46px,rgba(167,139,250,.28) 0,rgba(167,139,250,.28) 47px,transparent 0),repeating-linear-gradient(transparent,transparent 27px,rgba(167,139,250,.08) 0,rgba(167,139,250,.08) 28px),#1f1b2e;border-color:#4c1d95}.dark-mode .rich-editor__content .ProseMirror{color:var(--sps-text-strong,#e5e7eb)}.dark-mode .rich-block-handle,.dark-mode .rich-bubble,.dark-mode .rich-slash{background:#2a2a3a;border-color:#4c1d95;color:#e5e7eb}.dark-mode .rich-block-handle .rich-block-handle__btn,.dark-mode .rich-block-handle .rich-bubble-btn,.dark-mode .rich-block-handle .rich-slash__item,.dark-mode .rich-bubble .rich-block-handle__btn,.dark-mode .rich-bubble .rich-bubble-btn,.dark-mode .rich-bubble .rich-slash__item,.dark-mode .rich-slash .rich-block-handle__btn,.dark-mode .rich-slash .rich-bubble-btn,.dark-mode .rich-slash .rich-slash__item{color:#e5e7eb}.dark-mode .rich-block-handle .rich-slash__icon,.dark-mode .rich-bubble .rich-slash__icon,.dark-mode .rich-slash .rich-slash__icon{background:#3a3a4a}