/*
 * Monvshe announcement popup (AJAX zb_get_site_notify body). Scoped to .mv-notify plus one popup-shell
 * rule that matches only when the popup content contains .mv-notify, so it is safe on any front-end page
 * and never reaches the user center. Self-contained tokens (this sheet does not depend on body.mv-public).
 */
.mv-notify {
  --mv-primary: #a078ff;
  --mv-primary-text: #d0bcff;
  --mv-accent: #e7c356;
  --mv-text: #e6e0ee;
  --mv-text-muted: #cbc3d7;
  --mv-border: rgba(255, 255, 255, .12);
  display: block;
  color: var(--mv-text-muted);
  font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", "Noto Sans SC", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-size: 1rem;
  line-height: 1.75;
  text-align: start;
}
.mv-notify, .mv-notify *, .mv-notify *::before, .mv-notify *::after { box-sizing: border-box; }

.ri-popup-content:has(.mv-notify) { padding: 1.25rem; color: #e6e0ee; background: #1c1a24; border: 1px solid rgba(160, 120, 255, .4); border-radius: 18px; }
.ri-popup-body:has(.mv-notify) { max-width: 100%; }

.mv-notify__icon { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin-bottom: .6rem; color: var(--mv-accent); background: rgba(231, 195, 86, .12); border: 1px solid rgba(231, 195, 86, .4); border-radius: 50%; }
.mv-notify__title { margin: 0 0 .75rem; padding-bottom: .75rem; font-size: 1.25rem; line-height: 1.4; font-weight: 700; color: var(--mv-text); border-bottom: 1px solid var(--mv-border); overflow-wrap: anywhere; }
.mv-notify__desc { max-height: 60vh; overflow: auto; overflow-wrap: anywhere; }
.mv-notify__desc p { margin: 0 0 .75rem; }
.mv-notify__desc a { color: var(--mv-primary-text); text-decoration: underline; text-underline-offset: 2px; }
.mv-notify__desc a:hover { color: var(--mv-accent); }
.mv-notify__desc img, .mv-notify__desc video { max-width: 100%; height: auto; }
.mv-notify a:focus-visible { outline: 2px solid var(--mv-accent); outline-offset: 2px; }
