.rich-source-field { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }
.rich-editor-shell { margin-top: 6px; border: 1px solid #cfd6df; border-radius: 6px; background: #fff; color: #20242b; }
.rich-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; padding: 6px; border-bottom: 1px solid #d9dee5; background: #f4f6f8; }
.rich-toolbar label { display: inline-flex; align-items: center; gap: 3px; margin: 0; font-size: 10px; }
.rich-toolbar select { width: 100px; min-height: 28px; padding: 2px 4px; }
.rich-toolbar input[type="number"] { width: 52px; min-height: 28px; padding: 2px 4px; }
.rich-toolbar input[type="color"] { width: 30px; min-height: 28px; padding: 2px; }
.rich-tool { min-width: 30px; min-height: 28px; padding: 0 7px; border: 1px solid #c8ced6; border-radius: 4px; background: #fff; color: #303844; font-size: 12px; line-height: 1; }
.rich-tool:hover, .rich-tool:focus-visible { border-color: #8f99a6; background: #e9edf1; }
.rich-align-center { text-align: center; }
.rich-align-right { text-align: right; }
.rich-tool-separator { width: 1px; height: 22px; margin: 0 2px; background: #d4d9df; }
.rich-editor { min-height: 300px; padding: 16px; outline: 0; overflow: auto; color: #20242b; font-family: "Malgun Gothic", sans-serif; font-size: 15px; font-weight: 400; line-height: 1.75; white-space: pre-wrap; overflow-wrap: anywhere; }
.rich-editor:empty::before { content: attr(data-placeholder); color: #949ca7; }
.rich-editor p { min-height: 1.5em; margin: 0 0 10px; font-weight: 400; white-space: pre-wrap; }
.rich-editor-note { margin: 0; padding: 5px 9px; border-top: 1px solid #e0e4e8; background: #fafbfc; color: #747e89; font-size: 10px; }
.rich-image { position: relative; clear: both; width: 480px; max-width: 100%; margin: 18px auto; }
.rich-image img { display: block; width: 100%; max-width: 100%; object-fit: fill; }
.rich-image-remove { position: absolute; top: 4px; right: 4px; width: 25px; height: 25px; padding: 0; border: 1px solid rgba(255,255,255,.8); border-radius: 50%; background: rgba(30,35,42,.72); color: #fff; }
.rich-image-resize { position: absolute; right: -5px; bottom: -5px; width: 15px; height: 15px; border: 2px solid #fff; background: #475569; cursor: nwse-resize; }
.post-content .rich-image { max-width: 100%; }
.post-content p, .post-content div { white-space: pre-wrap; }
.post-content .rich-image-remove, .post-content .rich-image-resize { display: none; }
@media (max-width: 720px) { .rich-editor { min-height: 240px; padding: 12px; } }
