/* Nonmodal website event centre. Token-based accents; no account-specific CSS. */
.oko-notification-button{position:relative;flex:none;width:44px;height:44px;min-height:44px;padding:10px;color:var(--muted);border:1px solid var(--line-soft);background:transparent}
.oko-notification-button[hidden],.oko-notification-panel[hidden],.oko-notification-badge[hidden],.oko-notification-status[hidden],.oko-notification-empty[hidden]{display:none!important}
.oko-notification-button>svg{width:22px;height:22px}
.oko-notification-button:hover,.oko-notification-button[aria-expanded=true]{background:var(--surface-raised);color:var(--accent);border-color:var(--line)}
.oko-notification-badge{position:absolute;right:-4px;top:-5px;min-width:19px;height:19px;display:grid;place-items:center;padding:0 4px;border:2px solid var(--bg);border-radius:10px;background:var(--accent);color:var(--accent-ink);font-size:10px;line-height:1;font-weight:600;box-sizing:border-box}
.oko-notification-panel{position:fixed;z-index:510;width:min(440px,calc(100vw - 20px));max-height:min(680px,calc(100dvh - 20px));display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);box-shadow:0 20px 60px #0008,0 2px 8px #0004;overflow:hidden;animation:oko-notification-enter 160ms cubic-bezier(.2,0,0,1)}
.oko-notification-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:21px 20px 18px}
.oko-notification-head>div>span{display:block;font-size:9px;line-height:1.5;letter-spacing:.09em;color:var(--muted);margin-bottom:6px}
.oko-notification-head h2{font-size:20px;line-height:1.4;font-weight:600;letter-spacing:-.025em;margin:0}
.oko-notification-close,.oko-notification-read,.oko-notification-retry{display:grid;place-items:center;flex:none;width:36px;height:36px;min-height:36px;padding:8px;border:0;border-radius:9px;background:transparent;color:var(--muted)}
.oko-notification-close>svg,.oko-notification-read>svg,.oko-notification-retry>svg{width:20px;height:20px}
.oko-notification-close:hover,.oko-notification-read:hover,.oko-notification-retry:hover{background:var(--surface-hover);color:var(--accent)}
.oko-notification-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 15px 15px;border-bottom:1px solid var(--line-soft)}
.oko-notification-filters{display:flex;gap:4px;min-width:0}
.oko-notification-filters>button{min-height:34px;border:0;border-radius:8px;padding:7px 10px;font-size:11px;line-height:1.5;color:var(--muted);background:transparent;white-space:nowrap}
.oko-notification-filters>button[aria-selected=true]{background:var(--accent-soft);color:var(--accent)}
.oko-notification-all{display:flex;align-items:center;justify-content:center;gap:6px;flex:none;min-height:34px;padding:6px 7px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:10px;line-height:1.5;white-space:nowrap}
.oko-notification-all>svg{width:16px;height:16px}
.oko-notification-all:hover:not(:disabled){background:var(--surface-hover);color:var(--accent)}
.oko-notification-all:disabled,.oko-notification-read:disabled,.oko-notification-all[aria-disabled=true],.oko-notification-read[aria-disabled=true]{opacity:.45;cursor:default}
.oko-notification-list{overflow:auto;overscroll-behavior:contain;min-height:0;padding:0 10px 10px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.oko-notification-date{font-size:10px;font-weight:500;line-height:1.5;color:var(--muted);letter-spacing:.02em;padding:17px 10px 8px;margin:0}
.oko-notification-item{display:flex;align-items:flex-start;gap:11px;padding:13px 9px;border-radius:11px;margin-bottom:4px;min-width:0}
.oko-notification-item.is-unread{background:color-mix(in srgb,var(--accent) 5%,var(--surface-raised))}
.oko-notification-kind{display:grid;place-items:center;flex:none;width:33px;height:33px;border-radius:9px;background:var(--surface-hover);color:var(--muted)}
.oko-notification-kind>svg{width:18px;height:18px}
.oko-notification-item.is-unread>.oko-notification-kind{color:var(--accent);background:var(--accent-soft)}
.oko-notification-copy{display:block;flex:1;min-width:0;color:var(--ink);text-decoration:none;border-radius:4px;overflow-wrap:anywhere}
.oko-notification-copy>strong{display:block;font-size:13px;font-weight:500;line-height:1.5;margin-bottom:5px;color:var(--ink)}
.oko-notification-copy>p{font-size:12px;line-height:1.65;color:var(--muted);margin:0}
.oko-notification-copy>time{display:block;font-size:10px;line-height:1.5;color:var(--subtle);margin-top:9px}
a.oko-notification-copy:hover>strong{color:var(--accent)}
.oko-notification-read{width:30px;height:30px;min-height:30px;padding:6px;margin-top:-3px}
.oko-notification-read>svg{width:17px;height:17px}
.oko-notification-status{display:flex;align-items:center;gap:9px;padding:11px 18px;background:var(--surface-raised);border-bottom:1px solid var(--line-soft);font-size:12px;line-height:1.6;color:var(--muted)}
.oko-notification-status>span{flex:1;min-width:0}
.oko-notification-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:36px 30px 42px;gap:12px;color:var(--muted)}
.oko-notification-empty>svg{width:36px;height:36px;color:var(--subtle);margin-bottom:6px}
.oko-notification-empty>strong{font-size:15px;line-height:1.6;font-weight:500;color:var(--ink)}
.oko-notification-empty>p{font-size:12px;line-height:1.7;max-width:275px;margin:0}
.oko-notification-panel :is(button,a):focus-visible,.oko-notification-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.oko-notification-button:focus:not(:focus-visible){outline:none}
@keyframes oko-notification-enter{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:380px){.oko-notification-controls{gap:4px;padding-inline:10px}.oko-notification-filters>button{padding-inline:8px}.oko-notification-all{padding-inline:5px}.oko-notification-all>span{display:none}.oko-notification-all>svg{width:20px;height:20px}.oko-notification-head{padding-inline:18px}}
@media(prefers-reduced-motion:reduce){.oko-notification-panel{animation:none}}
@media(forced-colors:active){.oko-notification-panel,.oko-notification-button{border-color:CanvasText}.oko-notification-item.is-unread{outline:1px solid Highlight;outline-offset:-1px}.oko-notification-panel :is(button,a):focus-visible,.oko-notification-button:focus-visible{outline-color:Highlight}}
