
.announcement-button{position:relative}.announcement-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#e14d43;color:white;font:700 10px/18px system-ui;text-align:center}.announcement-banner{display:flex;align-items:center;gap:12px;margin:0;padding:10px clamp(14px,3vw,34px);background:linear-gradient(90deg,rgba(67,126,188,.2),rgba(208,145,53,.16));border-bottom:1px solid rgba(213,172,95,.28);color:#f5ead7}.announcement-banner[hidden]{display:none}.announcement-banner-icon{font-size:22px}.announcement-banner>div{display:flex;flex:1;min-width:0;gap:8px;align-items:baseline}.announcement-banner strong{color:#f4cf83;white-space:nowrap}.announcement-banner span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.announcement-banner button{border:1px solid rgba(230,192,119,.35);background:rgba(12,17,26,.48);color:#f4e5c7;border-radius:9px;padding:6px 10px;cursor:pointer}.announcement-banner #announcementBannerDismiss{border:0;background:transparent;font-size:20px;padding:0 4px}.announcement-dialog{width:min(860px,94vw);max-height:88vh;border:1px solid rgba(212,169,88,.34);border-radius:18px;padding:0;background:#101722;color:#eee3d1;box-shadow:0 30px 90px rgba(0,0,0,.55)}.announcement-dialog::backdrop{background:rgba(2,5,10,.72);backdrop-filter:blur(4px)}.announcement-shell{display:flex;flex-direction:column;max-height:88vh}.announcement-head{display:flex;justify-content:space-between;gap:18px;padding:24px 26px 18px;border-bottom:1px solid rgba(212,169,88,.16)}.announcement-head small{color:#d7ac63;text-transform:uppercase;letter-spacing:.12em}.announcement-head h2{margin:4px 0 5px}.announcement-head p{margin:0;color:#aeb7c4}.announcement-close{font-size:26px;width:38px;height:38px;border-radius:10px;border:1px solid rgba(212,169,88,.25);background:#141f2d;color:#ead7b4;cursor:pointer}.announcement-toolbar{display:flex;justify-content:space-between;gap:12px;padding:14px 24px;border-bottom:1px solid rgba(255,255,255,.06)}.announcement-filters{display:flex;gap:7px;flex-wrap:wrap}.announcement-filters button{border:1px solid rgba(212,169,88,.22);background:#121d2a;color:#c7d0db;border-radius:999px;padding:7px 11px;cursor:pointer}.announcement-filters button.is-active{background:rgba(207,151,63,.18);border-color:#cfa050;color:#f4d393}.announcement-list{padding:18px 24px 26px;overflow:auto;display:grid;gap:12px}.announcement-card{border:1px solid rgba(255,255,255,.08);background:linear-gradient(145deg,#121d2a,#0d141f);border-radius:14px;padding:17px;display:grid;gap:10px}.announcement-card.is-unread{border-color:rgba(219,168,80,.44)}.announcement-card.is-critical{border-color:rgba(221,83,73,.55);box-shadow:inset 3px 0 #d65349}.announcement-card.is-important{box-shadow:inset 3px 0 #d5a34d}.announcement-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.announcement-card h3{margin:0;color:#f0d29a}.announcement-card p{margin:0;color:#c3cbd6;line-height:1.55}.announcement-meta{display:flex;gap:8px;flex-wrap:wrap;color:#8f9aa8;font-size:.78rem}.announcement-chip{padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.06)}.announcement-actions{display:flex;gap:8px;flex-wrap:wrap}.announcement-empty{padding:42px 20px;text-align:center;color:#96a2af;border:1px dashed rgba(255,255,255,.12);border-radius:14px}.announcement-mobile-count{min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#d54e43;color:white;font:700 10px/18px system-ui;text-align:center}.mobile-menu-announcement{display:flex;align-items:center;justify-content:space-between;width:100%}@media(max-width:720px){.announcement-banner>div{display:block}.announcement-banner strong,.announcement-banner span{display:block;white-space:normal}.announcement-banner #announcementBannerOpen{display:none}.announcement-dialog{width:96vw}.announcement-head{padding:18px}.announcement-toolbar,.announcement-list{padding-left:16px;padding-right:16px}.announcement-card-head{display:block}.announcement-card-head time{display:block;margin-top:5px}.announcement-toolbar{align-items:flex-start;flex-direction:column}}
