.re-wrapper {
    border: 1px solid var(--panel-border);
    border-radius: 6px;
    overflow: hidden;
    margin-top: 0.25rem;
}
.re-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    padding: 0.5rem;
    background: var(--bg);
    border-bottom: 1px solid var(--panel-border);
}
.re-btn {
    background: var(--panel);
    border: 1px solid var(--panel-border);
    color: var(--text);
    border-radius: 4px;
    padding: 0.3rem 0.55rem;
    font-size: 0.82rem;
    cursor: pointer;
    line-height: 1;
}
.re-btn:hover { background: rgba(108, 92, 231, 0.15); }
.re-btn--active { background: var(--accent); border-color: var(--accent); color: #fff; }
.re-content {
    min-height: 260px;
    max-height: 520px;
    overflow-y: auto;
    padding: 0.75rem 1rem;
    background: var(--panel);
    color: var(--text);
    font-size: 0.92rem;
    line-height: 1.6;
}
.re-content:focus { outline: none; }
.re-content h2, .re-content h3 { margin-top: 1rem; margin-bottom: 0.5rem; }
.re-content p { margin: 0 0 0.75rem; }
.re-content ul, .re-content ol { padding-left: 1.5rem; margin: 0 0 0.75rem; }
.re-content blockquote {
    border-left: 3px solid var(--accent);
    margin: 0 0 0.75rem;
    padding: 0.25rem 0 0.25rem 1rem;
    color: var(--text-dim);
}
.re-content a { color: var(--accent-2); }
textarea.re-raw {
    border: none;
    border-radius: 0;
    min-height: 260px;
    font-family: monospace;
    margin-top: 0;
}
