/* Shared rich-content styles: public pages render HTML without loading CKEditor. */
.rich-content { min-width: 0; max-width: 100%; color: var(--ink-soft); font-size: 16px; line-height: 1.95; overflow-wrap: anywhere; }
.rich-content > :first-child { margin-top: 0; }
.rich-content p { margin: 1em 0; }
.rich-content h2, .rich-content h3 { color: var(--ink); line-height: 1.4; margin: 1.5em 0 .65em; }
.rich-content h2 { font-size: 1.5em; }
.rich-content h3 { font-size: 1.2em; }
.rich-content ul, .rich-content ol { padding-left: 1.7em; }
.rich-content li { margin: .35em 0; }
.rich-content li > p { margin: .3em 0; }
.rich-content a { color: var(--link); text-decoration: underline; text-underline-offset: .2em; }
.studio .rich-content a { color: var(--studio-accent); }
.rich-content blockquote { margin: 1.5em 0; padding: .25em 1.25em; border-left: 3px solid var(--control-line); color: var(--muted); }
.rich-content code { font-family: var(--mono); font-size: .875em; background: var(--surface-soft); padding: .15em .35em; border-radius: 3px; }
.rich-content pre { max-width: 100%; overflow-x: auto; padding: 18px; border: 1px solid var(--line); border-radius: 4px; background: var(--card, var(--studio-subtle)); line-height: 1.65; white-space: pre; overflow-wrap: normal; }
.rich-content pre code { padding: 0; background: transparent; color: inherit; }
.rich-content figure.table { margin: 1.5em 0; max-width: 100%; overflow-x: auto; }
.rich-content table { border-collapse: collapse; width: 100%; font-size: .9em; }
.rich-content th, .rich-content td { border: 1px solid var(--line); padding: 10px 14px; text-align: left; min-width: 100px; }
.rich-content th { color: var(--ink); background: var(--surface-soft); font-weight: 650; }
.rich-content figcaption, .rich-content caption { margin-top: .5em; color: var(--muted); font-size: .85em; text-align: left; }
.rich-content hr { border: 0; border-top: 1px solid var(--line); margin: 2em 0; }
.rich-content figure.image { display: table; max-width: 100%; margin: 1.5em auto; }
.rich-content figure.image figcaption { display: table-caption; caption-side: bottom; }
.rich-content img { display: block; max-width: 100%; height: auto; border-radius: 4px; }
.rich-content video { display: block; width: 100%; max-height: 80vh; margin: 1.5em 0; border-radius: 4px; background: var(--panel); }
