.editor-page{width:100%;height:100vh;display:flex;flex-direction:column;background:#fff}.editor-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:16px 24px}.header-content{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto}.editor-header h1{font-size:18px;font-weight:600;color:#111827;letter-spacing:-.01em}.user-menu{display:flex;align-items:center;gap:12px}.user-name{font-size:14px;font-weight:500;color:#374151}.editor-container{flex:1;display:flex;overflow:hidden;max-width:1400px;margin:0 auto;width:100%}.editor-sidebar{width:240px;background:#f9fafb;border-right:1px solid #e5e7eb;display:flex;flex-direction:column}.sidebar-header{padding:20px 16px 16px;border-bottom:1px solid #e5e7eb}.sidebar-header h3{font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.users-list{flex:1;overflow-y:auto;padding:8px}.user-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;margin-bottom:2px}.user-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:12px}.user-name{font-size:14px;color:#111827;font-weight:500}.editor-main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#fff}.connection-status{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500}.connection-status:before{content:"";width:6px;height:6px;border-radius:50%}.status-connecting{color:#9ca3af}.status-connecting:before{background:#9ca3af}.status-connected{color:#10b981}.status-connected:before{background:#10b981}.status-disconnected{color:#ef4444}.status-disconnected:before{background:#ef4444}.status-error{color:#ef4444}.status-error:before{background:#ef4444}.editor-content{flex:1;overflow-y:auto;padding:24px}.prosemirror-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;min-height:400px}.ProseMirror{padding:24px;outline:none;min-height:400px;font-size:16px;line-height:1.6}.ProseMirror p{margin-bottom:1em}.ProseMirror h1,.ProseMirror h2,.ProseMirror h3{margin-top:1.5em;margin-bottom:.5em;font-weight:600}.ProseMirror h1{font-size:2em}.ProseMirror h2{font-size:1.5em}.ProseMirror h3{font-size:1.25em}.ProseMirror blockquote{border-left:3px solid #e5e7eb;padding-left:1em;margin:0;color:#6b7280}.ProseMirror pre{background:#f3f4f6;border-radius:4px;padding:1em;font-family:monospace}.ProseMirror code{background:#f3f4f6;padding:.2em .4em;border-radius:3px;font-family:monospace}.ProseMirror hr{border:none;border-top:1px solid #e5e7eb;margin:2em 0}.ProseMirror-yjs-cursor{position:relative;margin-left:-1px;margin-right:-1px;border-left:1px solid black;border-right:1px solid black;border-color:orange;word-break:normal;pointer-events:none}.ProseMirror-yjs-cursor>div{position:absolute;top:-1.05em;left:-1px;font-size:13px;background-color:#fa8100;font-family:sans-serif;-webkit-user-select:none;user-select:none;color:#fff;padding:0 2px;white-space:nowrap}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:#fafafa;min-height:100vh;color:#111827;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh}#root{width:100%;height:100vh}.login-page{width:100%;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:#fff}.login-container{width:100%;max-width:420px}.login-header{text-align:center;margin-bottom:48px}.login-header h1{font-size:28px;font-weight:600;color:#111827;margin-bottom:8px;letter-spacing:-.02em}.login-header p{font-size:14px;color:#6b7280;font-weight:400}
