.notice-preview{--notice-accent:#2563eb;background:#fff;border:1px solid #dfe6ef;border-radius:12px;padding:14px;max-width:250px;white-space:normal;box-shadow:0 3px 14px #0f172a06}
.notice-preview[data-tone=neutral]{--notice-accent:#64748b}.notice-preview[data-tone=success]{--notice-accent:#15803d}.notice-preview[data-tone=warning]{--notice-accent:#b45309}
.notice-preview-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px}.notice-preview-head span{color:var(--notice-accent);font-size:11px;font-weight:600}.notice-preview-head small{font-size:10px;color:#94a3b8}
.notice-preview .notice-preview-title{display:block;max-width:100%;border:0;padding:0;background:none;color:#0f172a;min-height:0;text-align:left;font-size:14px;font-weight:600;line-height:1.55;overflow-wrap:anywhere}
.notice-preview img{display:block;width:100%;height:76px;object-fit:contain;border-radius:7px;margin:9px 0;background:#f8fafc;cursor:zoom-in}.notice-preview [hidden]{display:none!important}
.notice-preview p{margin:9px 0;color:#64748b;font-size:12px;line-height:1.6;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.notice-preview a{display:inline-block;color:var(--notice-accent);font-size:12px;font-weight:500;text-decoration:none;margin-top:2px}.notice-preview a:hover{text-decoration:underline}
.announcement-dialog{box-sizing:border-box;width:min(780px,calc(100vw - 32px));max-height:88vh;border:1px solid #dfe6ef;border-radius:14px;padding:22px;overflow:auto;box-shadow:0 20px 70px #0f172a22}.announcement-dialog::backdrop{background:#0f172a55}.announcement-dialog>button{float:right}.announcement-dialog h2{padding-right:72px;line-height:1.5;font-size:20px}.announcement-dialog img{display:block;max-width:100%;height:auto;margin:14px auto}.announcement-dialog img[hidden]{display:none}.announcement-dialog p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:14px}
@media(max-width:760px){.notice-preview{max-width:250px;margin-inline:auto}.announcement-dialog{padding:16px}}
