.comment-editor[data-v-c83cc152]{position:relative;border:1px solid var(--line-divider, #e5e7eb);border-radius:.75rem;overflow:visible;transition:border-color .2s}.comment-editor[data-v-c83cc152]:focus-within{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.comment-toolbar[data-v-c83cc152]{display:flex;align-items:center;gap:2px;padding:6px 8px;border-bottom:1px solid var(--line-divider, #f3f4f6);background:var(--card-bg, #fafbfc);border-radius:.75rem .75rem 0 0;flex-wrap:wrap}.comment-toolbar button[data-v-c83cc152]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:0;background:0 0;color:var(--text-50, #6b7280);cursor:pointer;transition:all .15s}.comment-toolbar button[data-v-c83cc152]:hover{background:var(--hover-bg, #f3f4f6);color:var(--text-90, #111827)}.comment-toolbar button.active[data-v-c83cc152]{background:#dbeafe;color:#2563eb}.comment-color-input[data-v-c83cc152]{width:28px;height:28px;padding:2px;border:0;border-radius:6px;background:0 0;cursor:pointer}.divider[data-v-c83cc152]{width:1px;height:18px;background:var(--line-divider, #e5e7eb);margin:0 2px}.comment-editor-content[data-v-c83cc152] .comment-prosemirror{min-height:80px;max-height:200px;overflow-y:auto;padding:10px 14px;outline:0;font-size:.875rem;line-height:1.6;color:var(--text-90, #111827)}.comment-editor-content[data-v-c83cc152] .comment-prosemirror p{margin:0 0 .25em}.comment-editor-content[data-v-c83cc152] .comment-prosemirror p:last-child{margin-bottom:0}.comment-editor-content[data-v-c83cc152] .comment-prosemirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:#9ca3af;pointer-events:none;height:0}.comment-editor-content[data-v-c83cc152] .comment-prosemirror code{background:#f3f4f6;color:#2563eb;padding:.1rem .3rem;border-radius:4px;font-size:.8em;font-family:JetBrains Mono,monospace}.comment-editor-content[data-v-c83cc152] .comment-prosemirror pre{background:#1e293b;color:#e2e8f0;padding:.75rem;border-radius:.5rem;overflow-x:auto;font-size:.8rem;margin:.5em 0}.comment-editor-content[data-v-c83cc152] .comment-prosemirror pre code{background:0 0;color:inherit;padding:0}.comment-editor-content[data-v-c83cc152] .comment-prosemirror blockquote{border-left:3px solid #3b82f6;padding-left:.75rem;color:#6b7280;margin:.5em 0}.comment-editor-content[data-v-c83cc152] .comment-prosemirror .emoji{font-size:1.15em;line-height:1}.comment-editor-content[data-v-c83cc152] .comment-prosemirror a{color:#2563eb;text-decoration:underline}.comment-editor-content[data-v-c83cc152] .comment-prosemirror ul{list-style:disc;padding-left:1.25rem;margin:.25em 0}.comment-editor-content[data-v-c83cc152] .comment-prosemirror ol{list-style:decimal;padding-left:1.25rem;margin:.25em 0}.emoji-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:9999}.emoji-modal{background:var(--card-bg, white);border-radius:.75rem;box-shadow:0 20px 50px -12px #00000040;width:560px;max-width:calc(100vw - 2rem);max-height:min(78vh,720px);display:flex;flex-direction:column;overflow:hidden}.emoji-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line-divider, #e5e7eb);flex-shrink:0}.emoji-modal-title{font-size:.9rem;font-weight:600;color:var(--text-90, #111827)}.emoji-modal-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:0;background:0 0;color:var(--text-50, #6b7280);cursor:pointer;transition:all .15s}.emoji-modal-close:hover{background:var(--hover-bg, #f3f4f6);color:var(--text-90, #111827)}.emoji-modal .emoji-tabs{display:flex;gap:4px;padding:8px 14px;border-bottom:1px solid var(--line-divider, #e5e7eb);overflow-x:auto;flex-shrink:0}.emoji-modal .emoji-tab{padding:4px 10px;font-size:12px;border-radius:6px;border:0;background:0 0;color:var(--text-50, #6b7280);cursor:pointer;white-space:nowrap;transition:all .15s;width:auto;height:auto}.emoji-modal .emoji-tab:hover{background:var(--hover-bg, #f3f4f6)}.emoji-modal .emoji-tab.active{background:var(--btn-regular-bg, #dbeafe);color:var(--primary, #2563eb)}.emoji-modal .emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px;padding:12px;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0}.emoji-modal .emoji-item{width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:16px;border-radius:6px;cursor:pointer;border:0;background:0 0;transition:all .1s;padding:2px}.emoji-modal .emoji-item:hover{background:#eff6ff;transform:scale(1.08)}.emoji-modal .custom-emoji-btn img{pointer-events:none}.emoji-modal .emoji-item.is-failed{background:#f3f4f6;border:1px solid #d1d5db}.emoji-modal .emoji-item .emoji-img-failed{width:0;height:0}