.announcement-popup{width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 48px);padding:28px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--text);box-shadow:0 24px 80px #0b1f3a33;overflow:auto}
.announcement-popup::backdrop{background:rgba(11,31,58,.48)}
.announcement-popup h2{margin:0 30px 16px 0;font-size:24px;line-height:1.3;overflow-wrap:anywhere}
.announcement-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}
.announcement-close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:var(--muted);font-size:28px;cursor:pointer;width:40px;height:40px}
.announcement-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:24px}
.announcement-popup :focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:540px){.announcement-popup{padding:24px 20px}.announcement-popup h2{font-size:21px}.announcement-actions>*{flex:1;text-align:center}}
