/* v3 notifications: page, Load more chunks and the bell popover share one row
   (admin redesign plan §11 decisions 205–208). Macro core/components/_lg_notice.html. */

.lg-ntf__group {
  margin: var(--space-4) 0 var(--space-1);
  color: var(--text-muted);
  font-size: var(--size-caption);
  font-weight: 600;
}
.lg-ntf__group:first-child { margin-block-start: 0; }
.lg-ntf__list { margin: 0; padding: 0; list-style: none; }
.lg-ntf__row {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding-block: var(--space-3);
  border-block-start: 1px solid var(--border);
}
.lg-ntf__list:first-of-type .lg-ntf__row:first-child,
.lg-ntf__group + .lg-ntf__list .lg-ntf__row:first-child { border-block-start: 0; }
.lg-ntf__icon { flex: none; display: grid; place-items: center; inline-size: 2rem; block-size: 2rem;
  border-radius: var(--radius-control); background: var(--neutral-tint); color: var(--text-muted); }
.lg-ntf__text {
  display: flex; flex: 1 1 auto; flex-direction: column; min-inline-size: 0; min-block-size: var(--touch-target);
  justify-content: center; color: inherit; text-decoration: none; overflow-wrap: anywhere;
}
a.lg-ntf__text:hover .lg-ntf__title { text-decoration: underline; text-underline-offset: 0.2em; }
a.lg-ntf__text:focus-visible { outline: var(--focus-ring) solid var(--focus); outline-offset: 2px; border-radius: var(--radius-control); }
.lg-ntf__title { color: var(--text-muted); }
.lg-ntf__row--unread .lg-ntf__title { color: var(--text); font-weight: 600; }
.lg-ntf__body,
.lg-ntf__when { color: var(--text-muted); font-size: var(--size-caption); }
.lg-ntf__dot { flex: none; inline-size: 0.5rem; block-size: 0.5rem; margin-block-start: 0.75rem;
  border-radius: 50%; background: var(--primary); }
.lg-ntf__more { display: flex; justify-content: center; padding-block-start: var(--space-3); }

/* Bell popover */
.lg-ntf--pop { display: flex; flex-direction: column; }
.lg-ntf__pophead { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2);
  padding: var(--space-1) var(--space-2); }
.lg-ntf__poptitle { margin: 0; font-size: var(--size-card-title); }
.lg-ntf--pop .lg-ntf__list,
.lg-ntf--pop .lg-ntf__group { padding-inline: var(--space-2); }
.lg-ntf__all {
  display: flex; align-items: center; justify-content: center; min-block-size: var(--touch-target);
  border-block-start: 1px solid var(--border); color: var(--primary); text-decoration: none;
}
.lg-ntf__all:hover { text-decoration: underline; }

/* Bell count: 1–9, then "9+" (decision 208); 0.6875rem is the floor for any
   text (decision 315). Red = action items only (317); unread notices get a grey
   count, shown only while nothing needs action. */
.lg-bell__count {
  position: absolute; top: 0.2rem; right: 0.15rem; min-inline-size: 1.1rem; block-size: 1.1rem;
  padding-inline: 0.25rem; border-radius: var(--radius-pill); background: var(--danger); color: var(--surface);
  font-size: 0.6875rem; font-weight: 600; line-height: 1.1rem; text-align: center;
  box-shadow: 0 0 0 2px var(--surface);
}
.lg-bell__count--info { background: var(--text-muted); }
.lg-bell:has(.lg-bell__count--act:not([hidden])) .lg-bell__count--info { display: none; }
/* Bell menu (317): action rows first, then the recent notices. */
.lg-bell-pop .lg-pop__head { display: flex; align-items: center; justify-content: space-between; padding: var(--space-1) var(--space-2); }
.lg-bell__act { padding-block-end: var(--space-2); margin-block-end: var(--space-2); border-block-end: 1px solid var(--border); }

/* Message log preview (decision 226): fixed-height sandboxed frame with its own scroll. */
.lg-ml__frame {
  display: block; inline-size: 100%; block-size: min(32rem, 60vh); margin-block-start: var(--space-3);
  border: 1px solid var(--border); border-radius: var(--radius-control); background: var(--surface);
}
.lg-ml__files { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: var(--space-3) 0 0; padding: 0; list-style: none; }
.lg-ml__size { color: var(--text-muted); font-size: var(--size-caption); }
