/* Notifications uses the application font, Bootstrap controls and Goodyear navy/yellow accents. */
.notifications-page { width:100%; max-width:1440px; padding:28px 32px; margin:0 auto; overflow:auto; color:#24354b; background:#f5f7fa; }
.notifications-page-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:24px; }
.notifications-page h1 { font-size:30px; font-weight:600; margin:4px 0 8px; color:#274ba7; }
.notifications-page h2 { font-size:21px; font-weight:600; margin:0 0 10px; }
.notifications-page h3 { font-size:18px; font-weight:600; margin:0 0 6px; }
.notifications-page-heading p,.notifications-subtle { color:#637084; font-size:14px; margin:0; }
.notifications-heading-icon { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:56px; height:56px; font-size:26px; color:#274ba7; background:#e9eef8; border-radius:50%; }
.notifications-workspace { display:grid; grid-template-columns:300px minmax(0,1fr); align-items:start; gap:24px; }
.notifications-panel,.notifications-story { background:#fff; border:1px solid #e0e6ee; border-radius:4px; }
.notifications-library { padding:20px; }
.notifications-edit-column { min-width:0; }
#notifications-editor-form { padding:28px; }
.notifications-form-section { border-top:1px solid #e7ebf0; padding:24px 0; }
.notifications-page label { display:block; font-weight:600; font-size:14px; margin:16px 0 7px; }
.notifications-page .form-control:focus,.notifications-editor:focus { outline:2px solid #336ba3; outline-offset:2px; }
.notifications-page [aria-invalid=true] { border-color:#b3263c; }
.notifications-page select[multiple] { padding:6px; }
.notifications-page select[multiple] option { padding:6px 9px; border-radius:3px; }
.notifications-page .notifications-check { display:flex; align-items:center; gap:10px; background:#f5f7fa; padding:12px; border-radius:6px; font-weight:400; }
.notifications-check input { width:17px; height:17px; accent-color:#274ba7; }
.notifications-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:18px 0; }
.notifications-error { color:#a51c30; white-space:pre-wrap; font-size:13px; }
.notifications-error:empty,#notifications-status:empty { display:none; }
#notifications-status:not(:empty) { background:#edf7f1; color:#24613b; padding:12px 16px; border-radius:6px; }
.notifications-content { overflow-wrap:anywhere; line-height:1.7; }
.notifications-content img { max-width:100%; height:auto; }
.notifications-editor { min-height:320px; padding:22px; border:1px solid #ccd5e0; border-radius:0 0 6px 6px; background:white; }
.notifications-editor-modes { display:inline-flex; flex-wrap:wrap; margin-top:16px; border:1px solid #ccd5e0; border-radius:4px; background:#f5f7fa; overflow:hidden; }
.notifications-editor-modes .btn { margin:0; border:0; border-radius:0; }
.notifications-editor-modes .btn[aria-pressed=true] { background:#e9eef8; color:#274ba7; box-shadow:inset 0 -2px 0 #274ba7; }
.notifications-html-help { margin:12px 0!important; }
.notifications-page .notifications-html-source { min-height:320px; height:auto; padding:18px; resize:vertical; font-family:Consolas, Monaco, monospace; font-size:13px; line-height:1.6; text-transform:none; tab-size:2; border:1px solid #ccd5e0; border-radius:6px; }
#notifications-toolbar { margin:18px 0 0; gap:4px; padding:10px; background:#f5f7fa; border:1px solid #ccd5e0; border-bottom:0; border-radius:6px 6px 0 0; }
#notifications-toolbar button { background:transparent; border:1px solid transparent; padding:6px 9px; border-radius:4px; color:#34465d; }
#notifications-toolbar button:hover { border-color:#ccd5e0; background:#fff; }
.notifications-image-tools { margin-top:18px; padding:14px; border:1px dashed #ccd5e0; border-radius:6px; }
.notifications-image-tools summary { cursor:pointer; color:#274ba7; font-weight:600; }
.notifications-item { padding:16px 0; border-bottom:1px solid #e4e9f0; }
.notifications-page .notifications-notification-title { appearance:none; background:none!important; border:0!important; box-shadow:none!important; text-transform:none; line-height:1.4; min-height:0; height:auto; border-radius:0; font-family:inherit; cursor:pointer; overflow-wrap:anywhere; max-width:100%; text-align:left; white-space:normal; color:#274ba7; font-weight:600; padding:0; font-size:16px; }
.notifications-library .notifications-item { border-left:3px solid #d7dee8; padding:14px 12px; margin-top:8px; background:#f5f7fa; border-bottom:0; border-radius:0 4px 4px 0; }
.notifications-library .is-published { border-left-color:#448768; }
.notifications-library .notifications-subtle { margin-top:7px; font-size:12px; }
.notifications-feed { display:grid; gap:14px; }
.notifications-story { position:relative; padding:23px 26px; border-left:4px solid transparent; }
.notifications-story.is-unread { border-left-color:#e5b322; }
.notifications-story .notifications-notification-title { display:block; font-size:20px; margin:10px 0; }
.notifications-state { display:inline-block; padding:3px 9px; border-radius:20px; background:#edf1f5; color:#586679; font-size:11px; font-weight:600; }
.is-unread .notifications-state { background:#fff4cf; color:#715500; }
#notifications-metadata { font-size:12px; white-space:pre-line; color:#69788a; background:#f5f7fa; padding:12px; border-radius:6px; overflow-wrap:anywhere; }
#notifications-preview-panel { border:1px solid #dce3ec; padding:24px; margin-top:20px; border-radius:6px; }
.notifications-empty { text-align:center; padding:80px 24px; color:#637084; }
.notifications-empty>span { font-size:40px; color:#8b9bb0; margin-bottom:20px; display:block; }
#notifications-modal .modal-body { max-height:65vh; overflow-y:auto; }
.notifications-count { margin-left:-10px; }
.notifications-tags { display:inline-flex; flex-wrap:wrap; gap:6px 12px; margin-left:12px; }
.notifications-tag { display:inline-flex; align-items:center; gap:5px; }
.notifications-tag .fas { font-size:0.85em; }
#notifications-inbox { max-height:min(520px, var(--notifications-inbox-available-height, calc(100vh - 80px))); overflow:hidden; width:380px; max-width:calc(100vw - 24px); padding:0; border:1px solid #dce3ec; border-radius:9px; box-shadow:0 12px 35px #17365d26; color:#24354b; }
.notifications-inbox-heading { flex-shrink:0; display:flex; justify-content:space-between; align-items:center; padding:18px; border-bottom:1px solid #e4e9f0; }
#notifications-inbox-count { font-size:12px; color:#637084; }
#notifications-inbox-list { min-height:0; flex:1 1 auto; overscroll-behavior:contain; max-height:380px; overflow-y:auto; padding:8px; }
.notifications-inbox-item { display:block; width:100%; text-align:left; padding:14px 14px 14px 22px; position:relative; border:0; border-radius:5px; background:#fff; color:#24354b; }
.notifications-inbox-item:hover,.notifications-inbox-item:focus { background:#f0f4f9; }
.notifications-inbox-item strong,.notifications-inbox-item span { display:block; white-space:normal; overflow-wrap:anywhere; }
.notifications-inbox-item .notifications-subtle { margin-top:6px; font-size:12px; }
.notifications-inbox-item.is-unread:before { content:''; width:6px; height:6px; border-radius:50%; background:#c99100; position:absolute; top:21px; left:8px; }
.notifications-inbox-footer { flex-shrink:0; display:block; text-align:center; padding:14px!important; border-top:1px solid #e4e9f0; color:#274ba7; font-weight:600; }
.notifications-page [hidden],#notifications-modal [hidden],#notifications-nav [hidden],.notifications-admin-link[hidden],#notifications-token[hidden] { display:none!important; }
@media(max-width:1000px) { .notifications-workspace { grid-template-columns:240px minmax(0,1fr); gap:16px; } .notifications-page { padding:20px; } }
@media(max-width:760px) { .notifications-workspace { grid-template-columns:1fr; } .notifications-page { padding:16px; } #notifications-editor-form { padding:18px; } .notifications-page-heading { align-items:flex-start; flex-wrap:wrap; } .notifications-library #notifications-list { max-height:250px; overflow:auto; } .notifications-heading-icon { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:56px; height:56px; font-size:26px; color:#274ba7; background:#e9eef8; border-radius:50%; } }

.notifications-page .bootstrap-select { width:100%!important; }
.notifications-page .bootstrap-select .dropdown-menu { max-width:100%; }

.notifications-page .bootstrap-select.form-control { padding:0; border:0; background:transparent; }
#notifications-modal .modal-header { border-bottom:3px solid #ffdd00; }
#notifications-modal .modal-title { color:#274ba7; font-size:24px; }

.notifications-page .form-control { width:100%; max-width:none; }
.notifications-input-wrap { position:relative; width:100%; }
.notifications-page .notifications-input-wrap>input { padding-right:30px; }
.notifications-page .notifications-input-wrap>input+span.clearButton { position:absolute!important; top:50%!important; right:10px!important; left:auto!important; margin:0!important; width:20px; height:20px; line-height:20px; text-align:center; transform:translateY(-50%); padding:0; }

.notifications-filter-panel { padding:16px 20px; margin-bottom:20px; }
.notifications-filter-grid { display:grid; grid-template-columns:2fr 1fr 1.4fr 1fr; gap:16px; }
.notifications-filter-panel label { margin-top:0; }
.notifications-filter-panel .notifications-actions { margin-bottom:0; }
@media(max-width:1000px) { .notifications-filter-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:600px) { .notifications-filter-grid { grid-template-columns:1fr; } }

#notifications-nav { position:relative; }
#notifications-inbox:not([hidden]) { display:flex; flex-direction:column; top:100%; right:0; left:auto; }
#notifications-inbox-close { margin-left:8px; }
#notifications-modal.notifications-digest .modal-dialog { width:520px; max-width:calc(100vw - 20px); }
#notifications-modal.notifications-digest .modal-title { font-size:21px; padding-right:20px; }
.notifications-summary-item { display:block; width:100%; text-align:left; padding:14px 0; background:transparent; border:0; border-bottom:1px solid #e0e6ee; color:#274ba7; font-size:16px; font-weight:600; overflow-wrap:anywhere; }
.notifications-summary-item:last-child { border-bottom:0; }
.notifications-summary-item:hover,.notifications-summary-item:focus-visible { text-decoration:underline; }
#notifications-summary-more { margin:12px 0 0; }
#notifications-modal.notifications-digest .modal-footer { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
#notifications-modal.notifications-digest .modal-footer .btn { margin:0; }
@media(max-width:480px) { #notifications-modal.notifications-digest .modal-footer .btn:not([hidden]) { flex:1 1 100%; } }

.notifications-summary-title { display:block; }
.notifications-summary-item .notifications-tags { margin:6px 0 0; color:#637084; font-size:12px; font-weight:400; }
.notifications-summary-item .notifications-tags:empty { display:none; }

.notifications-page .notifications-notification-title:hover { text-decoration:underline; }
.notifications-page .notifications-notification-title:focus-visible { outline:2px solid #336ba3; outline-offset:3px; }
