/* Theme colors are inherited from the active site, including night mode. */
#siteMenuDrawer .site-menu-group{padding:8px 12px;border-bottom:1px solid var(--theme-line)}
#siteMenuDrawer .site-menu-group h3,#siteMenuDrawer .site-menu-group summary{margin:4px 0 6px;font-size:12px;color:var(--theme-ink);font-weight:bold}
#siteMenuDrawer .site-menu-group summary{cursor:pointer;min-height:32px;line-height:32px}
#siteMenuDrawer .site-menu-rows{display:flex;flex-direction:column;gap:0}
#siteMenuDrawer .site-menu-rows :is(button,a){display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:10px 8px;box-sizing:border-box;border:0;border-radius:4px;background:transparent;color:var(--theme-ink);text-decoration:none;text-align:left;font:inherit;font-size:13px;cursor:pointer;line-height:1.5}
#siteMenuDrawer .site-menu-rows :is(button,a)::after{content:'›';margin-left:12px;font-size:18px}
#siteMenuDrawer .site-menu-rows :is(button,a):hover{background:color-mix(in srgb,var(--theme-ink) 8%,transparent)}
.announcement-open,.site-menu-toggle{position:relative}
.announcement-badge{position:absolute;right:0;top:0;min-width:17px;height:17px;padding:0 3px;box-sizing:border-box;border-radius:12px;background:#ba243a!important;color:#fff!important;font:bold 11px/17px sans-serif;pointer-events:none;text-align:center}
.announcement-badge[hidden]{display:none!important}
#siteMenuDrawer .announcement-open{display:block;position:relative;width:calc(100% - 24px);margin:12px;padding:14px 12px;min-height:48px;text-align:left;border:1px solid var(--theme-line);border-radius:8px;background:var(--theme-panel);color:var(--theme-ink);font:inherit;font-weight:bold;cursor:pointer}
#siteAnnouncements{width:min(640px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:0;margin:auto;border:1px solid var(--theme-line);border-radius:12px;background:var(--theme-panel);color:var(--theme-ink);overflow:hidden;box-shadow:0 16px 60px #0005}
#siteAnnouncements[open]{display:flex;flex-direction:column}
#siteAnnouncements::backdrop{background:#07111b88}
#siteAnnouncements [hidden]{display:none!important}
#siteAnnouncements .announcement-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--theme-line)}
#siteAnnouncements h2{margin:0;font-size:18px;color:var(--theme-ink)}
#siteAnnouncements button{font:inherit;color:var(--theme-ink);cursor:pointer}
#siteAnnouncements .announcement-head button,#siteAnnouncements .announcement-tools button{min-height:40px;padding:6px 10px;background:var(--theme-panel);border:1px solid var(--theme-line);border-radius:5px;font-size:12px}
#siteAnnouncements .announcement-tools{display:flex;justify-content:flex-end;padding:8px 12px;gap:8px}
#siteAnnouncements .announcement-tools button:disabled{opacity:.55;cursor:default}
#siteAnnouncements .announcement-list{overflow:auto;padding:0 12px 12px}
#siteAnnouncements .announcement-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;gap:6px 12px;text-align:left;padding:14px;border:1px solid var(--theme-line);border-radius:8px;margin:0 0 8px;box-sizing:border-box;color:var(--theme-ink)}
#siteAnnouncements .announcement-row.is-unread{background:color-mix(in srgb,var(--theme-panel) 85%,white);border-left:4px solid var(--theme-ink)}
#siteAnnouncements .announcement-row.is-read{background:color-mix(in srgb,var(--theme-panel) 92%,black);font-weight:normal}
#siteAnnouncements .announcement-row.is-read strong{font-weight:normal}
#siteAnnouncements time{grid-column:1;font-size:12px;color:var(--theme-ink);line-height:1.5}
#siteAnnouncements .announcement-row strong{grid-column:1;font-size:16px;overflow-wrap:anywhere}
#siteAnnouncements .announcement-read-status{grid-column:2;grid-row:1/3;align-self:center;font-size:11px}
#siteAnnouncements .announcement-body{padding:8px 20px 24px;overflow:auto;min-height:150px}
#siteAnnouncements .announcement-body h3{color:var(--theme-ink);font-size:20px;margin:12px 0}
#siteAnnouncements .announcement-body p{color:var(--theme-ink);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}
#siteAnnouncements :focus-visible,#siteMenuDrawer :focus-visible{outline:2px solid var(--theme-ink);outline-offset:2px}
