/* Radio-Digitaal Central Notification Engine */
.rd-notification-center{position:relative;display:inline-flex;align-items:center}
.rd-notification-button{position:relative;width:39px;height:39px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--panel-2);color:var(--text);cursor:pointer}
.rd-notification-button:hover,.rd-notification-button[aria-expanded="true"]{border-color:var(--accent);color:var(--accent);background:var(--panel-3)}
.rd-notification-badge{position:absolute;right:-5px;top:-6px;min-width:19px;height:19px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--bg);border-radius:12px;background:var(--hot);color:#fff;font-size:10px;font-weight:900;line-height:1}
.rd-notification-badge[hidden]{display:none!important}
.rd-notification-panel{position:absolute;z-index:2200;right:0;top:calc(100% + 9px);width:370px;max-width:calc(100vw - 24px);border:1px solid var(--line);background:var(--panel);box-shadow:0 18px 50px rgba(0,0,0,.35)}
.rd-notification-panel[hidden]{display:none!important}
.rd-notification-panel__head{min-height:46px;display:flex;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid var(--line);background:var(--panel-2)}
.rd-notification-panel__head strong{font-size:var(--rd-font-sub-size,15px)}
.rd-notification-panel__head small{margin-left:auto;color:var(--muted);font-size:var(--rd-font-small-size,13px)}
.rd-notification-markall{border:0;background:transparent;color:var(--accent);font-size:var(--rd-font-small-size,13px);font-weight:800;cursor:pointer;padding:5px 0}
.rd-notification-panel__list{max-height:390px;overflow:auto}
.rd-notification-mini{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;padding:10px;border-bottom:1px solid var(--line-soft);color:var(--text);text-decoration:none!important;background:var(--panel)}
.rd-notification-mini:hover{background:var(--panel-2);color:var(--text)}
.rd-notification-mini.is-unread{background:var(--panel-3)}
.rd-notification-mini__icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--panel-2);color:var(--accent);font-weight:900}
.rd-notification-mini__copy{min-width:0;display:grid;gap:2px}
.rd-notification-mini__meta{display:flex;gap:7px;align-items:center;color:var(--muted-2);font-size:11px}
.rd-notification-mini__meta b{color:var(--accent);font-weight:800}
.rd-notification-mini__meta time{margin-left:auto;white-space:nowrap}
.rd-notification-mini__copy>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--rd-font-small-size,14px)}
.rd-notification-mini__copy>span:last-child{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:var(--rd-font-small-size,13px);line-height:1.35;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.rd-notification-panel__empty{padding:24px 14px;text-align:center;color:var(--muted);font-size:var(--rd-font-small-size,14px)}
.rd-notification-panel__foot{display:flex;justify-content:center;padding:9px;border-top:1px solid var(--line);background:var(--panel-2)}
.rd-notification-panel__foot a{color:var(--accent);font-size:var(--rd-font-small-size,13px);font-weight:900;text-decoration:none}

.rd-notification-toasts{position:fixed;z-index:5000;right:18px;bottom:18px;width:min(390px,calc(100vw - 36px));display:grid;gap:9px;pointer-events:none}
.rd-notification-toast{pointer-events:auto;display:grid;grid-template-columns:40px minmax(0,1fr) 28px;gap:8px;align-items:center;padding:10px;border:1px solid var(--line);background:var(--panel);color:var(--text);box-shadow:0 14px 40px rgba(0,0,0,.35);transform:translateY(12px);opacity:0;transition:opacity .2s ease,transform .2s ease}
.rd-notification-toast.is-visible{transform:none;opacity:1}
.rd-notification-toast.is-leaving{transform:translateY(8px);opacity:0}
.rd-notification-toast__icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--panel-2);color:var(--accent);font-size:17px;font-weight:900}
.rd-notification-toast__copy{min-width:0;display:grid;gap:2px}
.rd-notification-toast__source{color:var(--accent);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.rd-notification-toast__copy strong{font-size:var(--rd-font-sub-size,15px)}
.rd-notification-toast__copy small{color:var(--muted);font-size:var(--rd-font-small-size,13px);line-height:1.4}
.rd-notification-toast__close{width:28px;height:28px;border:0;background:transparent;color:var(--muted);font-size:20px;cursor:pointer}

.notification-page .portal-content{min-width:0}
.rd-notification-inbox{overflow:hidden}
.rd-notification-filters{display:flex;gap:6px;flex-wrap:wrap;padding:9px 10px;border-bottom:1px solid var(--line);background:var(--panel-2)}
.rd-notification-filters a{padding:6px 9px;border:1px solid var(--line);background:var(--panel);color:var(--muted);font-size:var(--rd-font-small-size,13px);font-weight:800;text-decoration:none}
.rd-notification-filters a:hover,.rd-notification-filters a.is-active{border-color:var(--accent);color:var(--text);background:var(--panel-3)}
.rd-notification-list{display:grid}
.rd-notification-row{min-height:74px;display:grid;grid-template-columns:42px minmax(0,1fr) 18px;gap:10px;align-items:center;padding:11px 12px;border-bottom:1px solid var(--line-soft);background:var(--panel);color:var(--text);text-decoration:none!important}
.rd-notification-row:last-child{border-bottom:0}
.rd-notification-row:hover{background:var(--panel-2);color:var(--text)}
.rd-notification-row__icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--panel-2);color:var(--accent);font-size:18px;font-weight:900}
.rd-notification-row__copy{min-width:0;display:grid;gap:3px}
.rd-notification-row__meta{display:flex;align-items:center;gap:9px;color:var(--muted-2);font-size:11px}
.rd-notification-row__meta b{color:var(--accent);font-weight:900}.rd-notification-row__meta time{margin-left:auto}
.rd-notification-row__copy>strong{font-size:var(--rd-font-sub-size,15px)}
.rd-notification-row__copy>span:last-child{color:var(--muted);font-size:var(--rd-font-small-size,13px);line-height:1.45}
.rd-notification-row__arrow{color:var(--muted);font-size:24px}
.rd-notification-empty{padding:38px 16px;text-align:center}.rd-notification-empty>span{width:54px;height:54px;margin:0 auto 10px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--panel-2);color:var(--accent);font-size:24px}.rd-notification-empty strong{display:block}.rd-notification-empty p{margin:5px 0 0;color:var(--muted)}

@media(max-width:940px){.rd-notification-panel{position:fixed;top:92px;right:12px}.rd-notification-toasts{right:12px;bottom:12px;width:calc(100vw - 24px)}}
@media(max-width:600px){.rd-notification-panel{top:82px;left:12px;right:12px;width:auto}.rd-notification-panel__list{max-height:55vh}.rd-notification-row{grid-template-columns:38px minmax(0,1fr) 14px;padding:10px 9px}.rd-notification-row__icon{width:36px;height:36px}.rd-notification-row__meta time{display:none}}
@media(prefers-reduced-motion:reduce){.rd-notification-toast{transition:none}}

/* 3.05C — personal preferences + inbox controls */
.rd-notification-inbox__heading{align-items:center}
.rd-notification-inbox__tools{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.rd-notification-tool{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 9px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font:inherit;font-size:var(--rd-font-small-size,13px);font-weight:800;text-decoration:none!important;cursor:pointer}
.rd-notification-tool:hover{border-color:var(--accent);background:var(--panel-3);color:var(--text)}
.rd-notification-tool:disabled{opacity:.45;cursor:default}
.rd-notification-row{grid-template-columns:42px minmax(0,1fr) auto}
.rd-notification-row.is-unread{background:var(--panel-3)}
.rd-notification-row.is-unread .rd-notification-row__copy>strong{color:var(--text)}
.rd-notification-row__open{color:inherit;text-decoration:none!important}
.rd-notification-row__actions{display:flex;align-items:center;gap:5px;justify-self:end}
.rd-notification-row__state{min-width:52px;color:var(--muted-2);font-size:11px;font-weight:900;text-align:right;text-transform:uppercase;letter-spacing:.03em}
.rd-notification-row.is-unread .rd-notification-row__state{color:var(--accent)}
.rd-notification-row__actions button{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:15px;font-weight:900;cursor:pointer}
.rd-notification-row__actions button:hover{border-color:var(--accent);color:var(--accent);background:var(--panel-3)}
.rd-notification-row__actions button:disabled{opacity:.45;cursor:default}

.rd-notification-preferences{margin-top:14px;overflow:hidden}
.rd-notification-preferences__intro{padding:11px 12px;border-bottom:1px solid var(--line);color:var(--muted);font-size:var(--rd-font-small-size,13px);line-height:1.5}
.rd-notification-preferences__intro p{margin:0 0 5px}.rd-notification-preferences__intro p:last-child{margin-bottom:0}
.rd-notification-preferences__table{display:grid}
.rd-notification-preferences__head,.rd-notification-preferences__row{display:grid;grid-template-columns:minmax(0,1fr) 100px 100px;align-items:center;gap:8px;padding:9px 12px}
.rd-notification-preferences__head{border-bottom:1px solid var(--line);background:var(--panel-2);color:var(--muted-2);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.rd-notification-preferences__row{min-height:62px;border-bottom:1px solid var(--line-soft);background:var(--panel)}
.rd-notification-preferences__row:last-child{border-bottom:0}
.rd-notification-preferences__source{display:grid;gap:2px;min-width:0}
.rd-notification-preferences__source b{font-size:var(--rd-font-small-size,14px)}
.rd-notification-preferences__source small{color:var(--muted);font-size:12px;line-height:1.35}
.rd-notification-switch{display:flex;align-items:center;gap:7px;justify-content:flex-start;color:var(--text);font-size:var(--rd-font-small-size,13px);font-weight:800;cursor:pointer}
.rd-notification-switch input{width:18px;height:18px;accent-color:var(--accent)}
.rd-notification-switch:has(input:disabled){opacity:.45;cursor:default}
.rd-notification-preferences__actions{display:flex;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid var(--line);background:var(--panel-2)}
.rd-notification-preferences__actions .page-bar__action{border:1px solid var(--accent);background:var(--accent);color:#071014;cursor:pointer}
.rd-notification-preferences__actions .page-bar__action:disabled{opacity:.55;cursor:default}
.rd-notification-preferences__status{color:var(--muted);font-size:var(--rd-font-small-size,13px)}

@media(max-width:720px){
  .rd-notification-inbox__heading{align-items:flex-start;gap:8px}
  .rd-notification-inbox__tools{justify-content:flex-start;width:100%}
  .rd-notification-row{grid-template-columns:38px minmax(0,1fr)}
  .rd-notification-row__actions{grid-column:2;justify-self:start}
  .rd-notification-row__state{min-width:48px;text-align:left}
  .rd-notification-preferences__head,.rd-notification-preferences__row{grid-template-columns:minmax(0,1fr) 72px 72px;padding-left:9px;padding-right:9px}
  .rd-notification-switch span{display:none}
}

/* 3.05D HOTFIX1 — notifications portal column safety */
@media (min-width:941px){
  .notification-page .portal-layout > .portal-sidebar{grid-column:1;grid-row:1}
  .notification-page .portal-layout > .portal-sidebar + .portal-content{grid-column:2;grid-row:1;width:100%;min-width:0}
}
