.rich-editor{--editor-radius:9px;position:relative;border:1px solid var(--editor-border,var(--line,#30343b));border-radius:var(--editor-radius);overflow:visible;background:var(--editor-bg,var(--panel2,#17191d));box-shadow:0 3px 12px rgba(0,0,0,.12)}
.rich-editor-toolbar{position:relative;z-index:5;display:flex;align-items:center;flex-wrap:wrap;gap:3px;min-height:42px;padding:6px 7px;border-bottom:1px solid var(--editor-border,var(--line,#30343b));border-radius:var(--editor-radius) var(--editor-radius) 0 0;background:var(--editor-toolbar,var(--panel,#121417));color:var(--editor-text,var(--text,#eee))}
.rich-tool-group{display:inline-flex;align-items:center;gap:2px}.rich-toolbar-separator{width:1px;height:23px;margin:0 5px;background:var(--editor-border,var(--line,#30343b));opacity:.9;flex:0 0 1px}
.rich-tool,.rich-editor-toolbar select{position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:31px;min-width:31px;padding:0 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--editor-text,var(--text,#eee));font:inherit;font-size:14px;line-height:1;cursor:pointer;transition:background .14s,border-color .14s,color .14s,transform .08s}
.rich-tool i{font-size:13px;pointer-events:none}.rich-tool-letter{font-size:15px}.rich-tool-letter b,.rich-tool-letter i,.rich-tool-letter u,.rich-tool-letter s{font-family:Arial,sans-serif}.rich-tool:hover,.rich-editor-toolbar select:hover{background:var(--editor-hover,rgba(255,255,255,.08));border-color:var(--editor-control-border,var(--line,#30343b))}.rich-tool:active{transform:translateY(1px)}.rich-tool.active{background:var(--editor-active,rgba(255,255,255,.13));border-color:var(--editor-control-border,var(--line,#30343b))}.rich-tool:focus-visible,.rich-editor-toolbar select:focus-visible,.rich-color-popup button:focus-visible,.rich-color-popup input:focus-visible{outline:2px solid var(--editor-accent,var(--accent,#4aa8cf));outline-offset:1px}
.rich-fallback-icon{display:none}.rich-caret{width:0;height:0;margin-left:5px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.65}.rich-tool-mini{font-size:9px;font-weight:800;position:absolute;right:5px;bottom:5px}.rich-tool-clear{margin-left:auto}.rich-tool-clear i{margin-right:5px}.rich-editor-toolbar select.rich-size{min-width:103px;padding:0 9px;background:var(--editor-control-bg,var(--panel2,#17191d));border-color:var(--editor-control-border,var(--line,#30343b));font-size:12px}.rich-editor-toolbar select option{background:var(--editor-control-bg,var(--panel2,#17191d));color:var(--editor-text,var(--text,#eee))}
.rich-color-wrap{position:relative;z-index:20}.rich-color-button{gap:4px}.rich-color-icon{position:relative;font-family:Georgia,serif;font-weight:800;font-size:16px;line-height:1}.rich-color-icon:after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:3px;border-radius:2px;background:var(--rich-current-color,var(--editor-text,#fff))}.rich-color-caret{width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid currentColor;opacity:.65}
.rich-color-popup{position:absolute;top:calc(100% + 7px);left:50%;transform:translateX(-50%);width:246px;padding:10px;border:1px solid #25282e;border-radius:8px;background:#17191d;box-shadow:0 12px 32px rgba(0,0,0,.45);color:#e7e9ec}.rich-color-popup[hidden]{display:none}.rich-color-grid{display:grid;grid-template-columns:repeat(7,24px);gap:0;width:max-content;margin:0 auto 8px}.rich-color-swatch{width:24px;height:24px;padding:0;border:0;border-radius:0;background:var(--swatch);cursor:pointer;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}.rich-color-swatch:hover{position:relative;z-index:1;box-shadow:inset 0 0 0 2px rgba(255,255,255,.85),0 0 0 1px rgba(0,0,0,.45)}.rich-color-clear{display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin:-2px 0 7px auto;padding:0;border:0;border-radius:4px;background:transparent;color:#d7d9dd;cursor:pointer}.rich-color-clear:hover{background:rgba(255,255,255,.08)}.rich-color-hex-label{margin:1px 0 4px;font-size:11px;color:#8c929b}.rich-color-hex-row{display:flex;gap:7px}.rich-color-hex-row input{box-sizing:border-box;flex:1;min-width:0;height:34px;padding:0 10px;border:1px solid #27425a;border-radius:4px;background:#121417;color:#f2f4f7;font:13px/1 Arial,sans-serif}.rich-color-ok{width:31px;height:34px;border:1px solid #2e78ac;border-radius:3px;background:#2f78a9;color:#fff;font-weight:700;cursor:pointer}.rich-color-ok:hover{background:#3a89bd}
.rich-editor-area{min-height:150px;padding:15px 16px;outline:none;line-height:1.65;overflow:auto;border-radius:0 0 var(--editor-radius) var(--editor-radius);background:var(--editor-bg,var(--panel2,#17191d));color:var(--editor-text,var(--text,#eee));caret-color:var(--editor-accent,var(--accent,#4aa8cf))}.rich-editor-area:empty:before{content:attr(data-placeholder);color:var(--editor-muted,var(--muted,#888));pointer-events:none}.rich-editor-area p{margin:.45em 0}.rich-editor-area h2,.rich-editor-area h3,.rich-editor-area h4{margin:.7em 0 .4em}.rich-editor-area h2{font-size:1.45em}.rich-editor-area h3{font-size:1.2em}.rich-editor-area ul,.rich-editor-area ol{padding-left:25px}.rich-editor-area blockquote{margin:10px 0;padding:8px 12px;border-left:3px solid var(--editor-accent,var(--accent,#b63a46));background:rgba(127,127,127,.07);opacity:.95}.rich-editor-area a{color:var(--editor-link,var(--accent2,#3b82f6))}.rich-editor-help{font-size:11px;color:var(--editor-muted,var(--muted,#888));margin-top:5px}
.admin-page .rich-editor{--editor-bg:var(--admin-panel-2);--editor-toolbar:var(--admin-panel);--editor-control-bg:var(--admin-panel-2);--editor-border:var(--admin-border);--editor-control-border:var(--admin-border);--editor-text:var(--admin-text);--editor-muted:var(--admin-muted);--editor-accent:var(--admin-accent);--editor-hover:rgba(255,255,255,.07);--editor-active:rgba(255,255,255,.12);--editor-link:#ff9da7;box-shadow:none}
body:has(.rich-editor) .rich-editor{--editor-bg:var(--panel2);--editor-toolbar:var(--panel);--editor-control-bg:var(--panel2);--editor-border:var(--line);--editor-control-border:var(--line);--editor-text:var(--text);--editor-muted:var(--muted);--editor-accent:var(--accent);--editor-hover:rgba(255,255,255,.06);--editor-active:rgba(255,255,255,.10);--editor-link:var(--accent2)}
body:has(.rich-editor) .admin-page .rich-editor{--editor-bg:var(--admin-panel-2);--editor-toolbar:var(--admin-panel);--editor-control-bg:var(--admin-panel-2);--editor-border:var(--admin-border);--editor-control-border:var(--admin-border);--editor-text:var(--admin-text);--editor-muted:var(--admin-muted);--editor-accent:var(--admin-accent);--editor-hover:rgba(255,255,255,.07);--editor-active:rgba(255,255,255,.12);--editor-link:#ff9da7}
@media(max-width:700px){.rich-editor-toolbar{gap:2px;padding:5px}.rich-toolbar-separator{margin:0 2px}.rich-tool{height:34px;min-width:32px}.rich-tool-clear{margin-left:0}.rich-color-popup{position:fixed;left:50%;top:auto;transform:translateX(-50%);width:246px}.rich-editor-toolbar select.rich-size{min-width:95px}}
@media(max-width:420px){.rich-toolbar-separator{display:none}.rich-tool-group-extra{display:none}.rich-editor-area{min-height:130px;padding:12px}.rich-color-popup{width:238px}.rich-color-grid{grid-template-columns:repeat(7,23px)}.rich-color-swatch{width:23px;height:23px}}

/* Размер шрифта — собственное меню вместо нативного select */
.rich-size-wrap{position:relative;z-index:20}
.rich-size-button{gap:4px;min-width:38px}
.rich-size-letter{font-family:Georgia,'Times New Roman',serif;font-size:17px;font-weight:700;line-height:1}
.rich-size-button[aria-expanded="true"]{background:var(--editor-active,rgba(255,255,255,.13));border-color:var(--editor-control-border,var(--line,#30343b))}
.rich-size-popup{position:absolute;top:calc(100% + 7px);left:50%;transform:translateX(-50%);width:238px;padding:6px;border:1px solid #25282e;border-radius:8px;background:#17191d;box-shadow:0 12px 32px rgba(0,0,0,.45);color:#e7e9ec}
.rich-size-popup[hidden]{display:none}
.rich-size-option{width:100%;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;min-height:38px;padding:5px 8px;border:1px solid transparent;border-radius:5px;background:transparent;color:#e7e9ec;text-align:left;cursor:pointer}
.rich-size-option:hover{background:rgba(255,255,255,.08);border-color:#30343b}
.rich-size-option.active{background:rgba(255,255,255,.12);border-color:#3b4550}
.rich-size-preview{display:flex;align-items:center;justify-content:center;font-family:Georgia,'Times New Roman',serif;font-weight:700;line-height:1;min-width:30px}
.rich-size-label{font-size:13px;white-space:nowrap}
.rich-size-px{font-size:11px;color:#858b94}
@media(max-width:700px){.rich-size-popup{position:fixed;top:auto;left:50%;bottom:12px;transform:translateX(-50%);width:238px}.rich-size-option{min-height:40px}}
