/* Quill snow theme aligned with the app's FluentUI tokens (light + dark). */
.w4l-rte .ql-toolbar.ql-snow,
.w4l-rte .ql-container.ql-snow {
    border-color: var(--neutral-stroke-rest);
    background: var(--neutral-layer-1);
    color: var(--neutral-foreground-rest);
}

.w4l-rte .ql-toolbar.ql-snow {
    border-radius: 6px 6px 0 0;
}

.w4l-rte .ql-container.ql-snow {
    border-radius: 0 0 6px 6px;
    font-family: inherit;
    font-size: 0.95rem;
}

.w4l-rte .ql-editor {
    min-height: 320px;
}

.w4l-rte .ql-snow .ql-stroke { stroke: var(--neutral-foreground-rest); }
.w4l-rte .ql-snow .ql-fill { fill: var(--neutral-foreground-rest); }
.w4l-rte .ql-snow .ql-picker { color: var(--neutral-foreground-rest); }
.w4l-rte .ql-snow .ql-picker-options {
    background: var(--neutral-layer-1);
    border-color: var(--neutral-stroke-rest);
}

.w4l-rte .ql-snow.ql-toolbar button:hover .ql-stroke,
.w4l-rte .ql-snow.ql-toolbar button.ql-active .ql-stroke { stroke: var(--accent-fill-rest); }
.w4l-rte .ql-snow.ql-toolbar button:hover .ql-fill,
.w4l-rte .ql-snow.ql-toolbar button.ql-active .ql-fill { fill: var(--accent-fill-rest); }

.w4l-rte .ql-editor.ql-blank::before { color: var(--neutral-foreground-hint); }

/* Table toolbar group — custom buttons (Quill has no built-in table controls). */
.ql-toolbar .ql-table-insert::before { content: "⊞"; }
.ql-toolbar .ql-table-row::before { content: "⤵"; }
.ql-toolbar .ql-table-col::before { content: "⤷"; }
.ql-toolbar .ql-table-row-del::before { content: "⌫r"; font-size: 11px; }
.ql-toolbar .ql-table-col-del::before { content: "⌫c"; font-size: 11px; }
.ql-toolbar .ql-table-del::before { content: "⌫⊞"; font-size: 11px; }

.ql-toolbar .ql-table-insert::before,
.ql-toolbar .ql-table-row::before,
.ql-toolbar .ql-table-col::before {
    font-size: 15px;
}

/* Editable table cells need visible borders inside the editor too. */
.ql-editor table { border-collapse: collapse; width: 100%; }
.ql-editor td { border: 1px solid var(--neutral-stroke-rest); padding: 6px 10px; }
