.shared-rich-editor.ql-container { height: auto; font-family: var(--font-body, sans-serif); font-size: 1rem; border-radius: 0 0 12px 12px; background: var(--surface, #fff); color: var(--ink, #1e2723); }
.shared-rich-editor .ql-editor { height: auto; min-height: 160px; max-height: 420px; line-height: 1.8; overflow-y: auto; }
.shared-rich-editor .ql-editor.ql-blank::before { color: var(--muted, #707a75); }
.ql-toolbar.ql-snow { border-radius: 12px 12px 0 0; background: var(--bg-soft, #f7f4ec); }
.ql-toolbar.ql-snow, .ql-container.ql-snow { border-color: var(--border-soft, #ddd); }
[data-bs-theme="dark"] .ql-snow .ql-stroke { stroke: #dce9e2; }
[data-bs-theme="dark"] .ql-snow .ql-fill { fill: #dce9e2; }
[data-bs-theme="dark"] .ql-snow .ql-picker { color: #dce9e2; }
[data-bs-theme="dark"] .ql-snow .ql-picker-options, [data-bs-theme="dark"] .ql-snow .ql-tooltip { background: #1e3028; color: #dce9e2; }
.rich-content-display, .up-bio, .area-story, .np-bio { overflow-wrap: anywhere; }
.rich-content-display li[data-list="bullet"], .up-bio li[data-list="bullet"], .area-story li[data-list="bullet"], .np-bio li[data-list="bullet"] { list-style-type: disc; }
.rich-content-display blockquote, .up-bio blockquote, .area-story blockquote, .np-bio blockquote { border-left: 4px solid var(--brand-green, #0e6e4c); padding-left: 1rem; margin: 1rem 0; }
.page-activity { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem; padding: 1rem; margin: 1.5rem auto; border: 1px solid var(--border-soft, #ddd); border-radius: 14px; background: var(--surface, #fff); }
.page-views { display: inline-flex; align-items: center; gap: .4rem; font-size: .88rem; color: var(--muted, #6b6255); }
.site-notifications { position: fixed; right: 16px; bottom: 88px; z-index: 1040; }
.notification-bell { display: flex; align-items: center; gap: .4rem; border: 1px solid #0e6e4c; border-radius: 999px; padding: .7rem 1rem; background: #0a4f37; color: #fff; box-shadow: 0 4px 16px #0002; cursor: pointer; }
.notification-bell .badge { background: #8a3b2b; }
.notification-panel { position: absolute; right: 0; bottom: calc(100% + 10px); width: min(370px, calc(100vw - 32px)); max-height: min(560px, 75vh); overflow-y: auto; background: var(--surface, #fff); color: var(--ink, #1e2723); border: 1px solid var(--border-soft, #ddd); border-radius: 16px; padding: 1rem; box-shadow: 0 8px 36px #0003; }
.notification-panel[hidden] { display: none; }
.notification-actions { display: flex; flex-wrap: wrap; gap: .4rem; margin: .7rem 0; }
.notification-item { display: block; color: inherit; border-top: 1px solid var(--border-soft, #ddd); padding: .8rem 0; text-decoration: none; overflow-wrap: anywhere; }
.notification-item b { display: block; font-size: .92rem; }
.notification-item small { display: block; color: var(--muted, #6b6255); }
.notification-item.is-new b::before { content: '● '; color: #0e6e4c; }
.notification-live { font-size: .76rem; color: var(--muted, #6b6255); }
@media (min-width: 992px) { .site-notifications { bottom: 24px; } }
