.platform-announcement-heading { display: block; max-width: 100%; overflow-wrap: anywhere; word-break: break-word; line-height: 1.5; }
.platform-announcement.has-font-color, .platform-announcement.has-font-color .platform-announcement-body, .platform-announcement.has-font-color .platform-announcement-body * { color: var(--announcement-font-color) !important; }
.platform-announcement { box-sizing: border-box; width: 100%; min-width: 0; overflow: hidden; border: 1px solid hsl(var(--border, 220 13% 91%)); border-radius: 14px; color: inherit; }
.platform-announcement-body { min-height: 100px; padding: 24px 28px; font-size: 15px; font-weight: 400; line-height: 1.85; overflow-wrap: anywhere; word-break: break-word; }
.platform-announcement-body * { box-sizing: border-box; max-width: 100%; overflow-wrap: anywhere; }
.platform-announcement-body img, .platform-announcement-body video { max-width: 100% !important; height: auto !important; }
.platform-announcement-body table { display: block; max-width: 100% !important; overflow-x: auto; border-collapse: collapse; }
.platform-announcement-body td, .platform-announcement-body th { padding: 6px 10px; border: 1px solid #a0a8b84d; }
.platform-announcement-body p { margin: 0 0 12px; }
.platform-announcement-body h1, .platform-announcement-body h2, .platform-announcement-body h3 { margin: 20px 0 12px; font-weight: 650; }
.platform-announcement-body ul { padding-left: 24px; list-style: disc; }
.platform-announcement-body ol { padding-left: 24px; list-style: decimal; }
.platform-announcement-body a { color: #5478e8; text-decoration: underline; }
.platform-announcement-body pre { overflow-x: auto; padding: 12px; white-space: pre-wrap; background: #9099aa12; border-radius: 8px; }
.platform-announcement-tools, .platform-announcement-color-control { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.platform-announcement-tools { margin-bottom: 18px; }
.platform-announcement-notes { color: #7b8494; font-size: 13px; }
.platform-announcement-color-control input[type="color"] { width: 44px; height: 34px; padding: 3px; border: 1px solid hsl(var(--border, 220 13% 91%)); border-radius: 6px; background: transparent; cursor: pointer; }
/* The header and actions stay visible; only the reading/editing area scrolls. */
.platform-announcement-dialog.ant-modal { margin: 0 auto; max-width: calc(100vw - 32px) !important; padding-bottom: 0; }
.platform-announcement-dialog .ant-modal-content { box-sizing: border-box; display: flex; flex-direction: column; max-height: calc(96vh - 16px); max-height: calc(96dvh - 16px); min-width: 0; overflow: hidden; }
.platform-announcement-dialog .ant-modal-header, .platform-announcement-dialog .ant-modal-footer { flex: 0 0 auto; }
.platform-announcement-dialog .ant-modal-body { flex: 1 1 auto; min-height: 0; overflow: auto; overscroll-behavior: contain; }
.platform-announcement-dialog.ant-modal-confirm .ant-modal-body { display: flex; flex-direction: column; overflow: hidden; }
.platform-announcement-dialog.ant-modal-confirm .ant-modal-confirm-body-wrapper { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; }
.platform-announcement-dialog.ant-modal-confirm .ant-modal-confirm-body { display: grid !important; grid-template-columns: 22px minmax(0, 1fr); grid-template-rows: auto minmax(0, 1fr); gap: 12px; align-items: start !important; flex: 1 1 auto; min-height: 0; overflow: hidden; }
.platform-announcement-dialog.ant-modal-confirm .ant-modal-confirm-body > .anticon { grid-column: 1; grid-row: 1; margin: 0; }
.platform-announcement-dialog.ant-modal-confirm .ant-modal-confirm-title { grid-column: 2; grid-row: 1; align-self: center; min-width: 0; }
.platform-announcement-dialog.ant-modal-confirm .ant-modal-confirm-content { grid-column: 1 / -1; grid-row: 2; margin: 0 !important; min-height: 0; max-height: calc(96vh - 180px); max-height: calc(96dvh - 180px); overflow: auto; overscroll-behavior: contain; padding-left: 0; white-space: normal; }
.platform-announcement-dialog.ant-modal-confirm .ant-modal-confirm-btns { flex: 0 0 auto; }
.platform-announcement-editor .editor-frame { display: block; width: 100%; height: 400px; border: 1px solid #e0e4ec; border-radius: 10px; }
@media(max-width:600px) {
  .platform-announcement-body { padding: 18px; }
  .platform-announcement-dialog .ant-modal-content { padding: 16px; }
  .platform-announcement-dialog.ant-modal-confirm .ant-modal-confirm-content { max-height: calc(96vh - 160px); max-height: calc(96dvh - 160px); }
}
