/* ICIVIL V37: common student notification center, neutral and accessible */
.notification-button .bell-icon{font-size:1.5rem}.notification-count{min-width:20px}
.v37-notice-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.v37-notice-header h2{margin:0;font-size:1.05rem}
.v37-notice{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;background:#fff;color:#26334b;border:1px solid #dce4f0;border-radius:12px;padding:12px;margin:9px 0;line-height:1.65}
.v37-notice.is-new{border-inline-start:4px solid #2563eb;background:#eff6ff}.v37-notice p{margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}.v37-notice small{color:#64748b}
.v37-notice-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:end;gap:6px}.v37-notice-actions button,.v37-view-all,.v37-page-nav button,.v37-notice-header button{background:#f1f5f9!important;color:#1e40af!important;border:1px solid #cbd5e1!important;border-radius:9px;padding:6px 10px;font:inherit;cursor:pointer}
.v37-notice-actions .v37-close-notice{color:#be123c!important;background:#fff1f2!important;font-size:1.3rem;min-width:32px;min-height:32px;padding:0}
.notification-popover{max-height:min(76vh,620px);overflow:auto;min-width:min(400px,calc(100vw - 25px));z-index:200}
.notification-popover .v37-notice{font-size:.85rem}.notification-popover .v37-notice-actions{gap:3px}.v37-preview .v37-notice{padding:10px}
.v37-notifications-page{padding:20px}.v37-page-nav{display:flex;justify-content:center;align-items:center;gap:18px;padding:20px}
@media(max-width:620px){.v37-notice{flex-wrap:wrap}.v37-notice-actions{width:100%;justify-content:flex-start}.v37-notifications-page{padding:12px}}

/* V38 notification view and compact bell */
#studentNotifications[hidden]{display:none!important}
.notification-popover{width:min(450px,calc(100vw - 18px))!important;max-height:min(64vh,480px)!important;padding:10px!important;overflow-y:auto!important}
.notification-popover .v37-notice{padding:7px 9px!important;margin:5px 0!important;border-radius:8px!important;gap:6px!important;align-items:center!important;line-height:1.4!important;font-size:12px!important}
.notification-popover .v37-notice strong{font-size:12px!important}.notification-popover .v37-notice p{font-size:11px!important;line-height:1.35!important;margin:1px 0!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-popover .v37-notice small{font-size:10px!important}
.notification-popover .v37-notice-actions{flex:0 0 auto!important;display:flex!important;flex-wrap:nowrap!important;gap:3px!important}.notification-popover .v37-notice-actions button{font-size:10px!important;min-width:0!important;min-height:25px!important;padding:3px 5px!important;white-space:nowrap!important}.notification-popover .v37-notice-actions .v37-close-notice{min-width:24px!important;min-height:24px!important;font-size:16px!important}
.notification-popover .v37-view-all{display:block;width:100%;font-size:12px!important;padding:7px!important}
.v37-notifications-page{width:100%;min-width:0}.v37-notifications-page .v37-notice{align-items:center}
@media(max-width:600px){.notification-popover .v37-notice{flex-wrap:wrap}.notification-popover .v37-notice-actions{width:auto!important}}
/* Release 39: readable notice rows and keyboard-visible controls. */
.v37-notice-text{flex:1 1 260px;min-width:0;overflow-wrap:anywhere}
.v37-notice-error{border:1px solid #fca5a5;background:#fff1f2;color:#9f1239;border-radius:10px;padding:12px}
.v37-notice-error[hidden]{display:none!important}
.v37-notice :is(button,a):focus-visible,.v37-view-all:focus-visible,.v37-page-nav button:focus-visible{outline:3px solid #2563eb;outline-offset:2px}
.v37-page-nav button:disabled{opacity:.45;cursor:not-allowed}
