/* Marina alerts (docs/portal-info-plan.md session 2): the office's notices above every portal screen and on
   the sign-in page (portal.html, portalLogin.html). Levels: info (blue), change (amber), closure (red). */
.cp-alerts { flex-shrink: 0; display: flex; flex-direction: column; gap: 6px; padding: 8px 12px; background: var(--cp-paper); border-bottom: 1px solid #EDE5D8; max-height: 34vh; overflow-y: auto; }
.cp-alert { display: flex; align-items: flex-start; gap: 8px; padding: 9px 12px; border-radius: 12px; border: 1px solid transparent; }
.cp-alert-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.cp-alert-tag { font: 700 10.5px var(--cp-font-body); letter-spacing: .04em; text-transform: uppercase; }
.cp-alert-text { font: 600 13px/1.4 var(--cp-font-body); overflow-wrap: anywhere; }
.cp-alert-when { font: 500 11.5px var(--cp-font-body); opacity: .85; }
.cp-alert-x { flex-shrink: 0; width: 32px; height: 32px; margin: -6px -6px 0 0; border: 0; background: none; font: 600 20px/1 var(--cp-font-body); color: inherit; cursor: pointer; opacity: .7; }
.cp-alert-info { background: #E7F1F8; border-color: #CFE1EE; color: #1D4F73; }
.cp-alert-change { background: #FBEFD8; border-color: #F1DDB4; color: #8A5A07; }
.cp-alert-closure { background: #FBE3E3; border-color: #F0BDBD; color: #9B1C1C; }
