/* TrevorSphere Notices module — accessible, responsive presentation. */
.tsbc-notices { display: grid; gap: 1rem; margin-block: 1rem; }
.tsbc-notice-card { position: relative; padding: 1.25rem; border: 1px solid #d7dce5; border-inline-start: 5px solid #082063; border-radius: .5rem; background: #fff; box-shadow: 0 5px 18px rgba(8, 32, 99, .10); }
.tsbc-notice-card--low { border-inline-start-color: #5b8def; }
.tsbc-notice-card--normal { border-inline-start-color: #2f9e66; }
.tsbc-notice-card--high { border-inline-start-color: #e09b19; }
.tsbc-notice-card--critical { border-inline-start-color: #c62828; }
.tsbc-notice-card__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.tsbc-notice-card__header h3 { margin: .35rem 0 0; color: #082063; }
.tsbc-notice-card__header time { flex: 0 0 auto; color: #5d6675; font-size: .875rem; }
.tsbc-notice-card__category, .tsbc-notice-card__pinned { display: inline-block; margin-inline-end: .5rem; color: #5d6675; font-size: .75rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.tsbc-notice-card__pinned { color: #082063; }
.tsbc-notice-card__content { margin-top: .9rem; color: #202938; }
.tsbc-notice-card__content > :first-child { margin-top: 0; }
.tsbc-notice-card__content > :last-child { margin-bottom: 0; }
.tsbc-notice-bell-icon:focus-visible { outline: 3px solid #f4c430; outline-offset: 3px; }
.tsbc-notices__empty { padding: 1rem; border: 1px solid #d7dce5; border-radius: .5rem; color: #5d6675; background: #f7f9fc; }
.tsbc-notice-menu-item { display: flex; align-items: center; }
.tsbc-notice-menu-item > a { display: flex !important; align-items: center; align-self: center; gap: .4rem; line-height: 1 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
.tsbc-notice-bell-icon { display: block; flex: 0 0 24px; width: 24px; height: 24px; margin: 0; object-fit: contain; vertical-align: middle; }
.tsbc-notice-popup[hidden] { display: none; }
.tsbc-notice-popup { position: fixed; inset: 0; z-index: 99999; }
.tsbc-notice-popup__backdrop { position: absolute; inset: 0; background: rgba(2, 8, 28, .68); }
.tsbc-notice-popup__panel { position: relative; display: flex; flex-direction: column; width: min(680px, calc(100% - 2rem)); max-height: min(760px, calc(100vh - 2rem)); margin: 1rem auto; overflow: hidden; border: 1px solid #d7dce5; border-radius: .65rem; background: #f7f9fc; box-shadow: 0 18px 55px rgba(0,0,0,.35); }
.tsbc-notice-popup__header { display: flex; align-items: center; justify-content: space-between; padding: 1rem 1.25rem; color: #fff; background: #082063; }
.tsbc-notice-popup__header h2 { margin: 0; color: #fff; font-size: 1.25rem; font-weight: 700; line-height: 1.2; }
.tsbc-notice-popup__close { border: 0; color: #fff; background: transparent; font-size: 1.75rem; line-height: 1; cursor: pointer; }
.tsbc-notice-popup__content { overflow-y: auto; padding: 1rem; }
.tsbc-notice-popup__content .tsbc-notices { margin: 0; }
.tsbc-notice-popup__footer { display: flex; flex-wrap: wrap; gap: .6rem; padding: .85rem 1rem; border-top: 1px solid #d7dce5; background: #fff; }
.tsbc-notice-popup__button { display: inline-flex; align-items: center; border: 1px solid #082063; border-radius: .3rem; padding: .55rem .8rem; color: #fff; background: #082063; cursor: pointer; font: inherit; text-decoration: none; }
.tsbc-notice-popup__button--secondary { color: #082063; background: #fff; }
.tsbc-notice-popup__button:focus-visible, .tsbc-notice-popup__close:focus-visible { outline: 3px solid #f4c430; outline-offset: 2px; }
@media (max-width: 600px) {
	.tsbc-notice-card__header { display: block; }
	.tsbc-notice-card__header time { display: block; margin-top: .5rem; }
}
