.notifications-trigger{position:relative;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border-radius:8px;color:var(--ink);background:transparent}
.notifications-trigger:hover,.notifications-trigger[aria-expanded=true]{background:var(--tint);color:var(--accent)}
.notifications-trigger>svg{width:22px;height:22px}
.notifications-badge{position:absolute;top:1px;right:0;min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;background:var(--tint);color:var(--ink);border-radius:9px;font-size:11px;line-height:17px;font-weight:800}
dialog.notifications-panel{inset:12px 12px 12px auto;margin:0;width:420px;max-width:calc(100vw - 24px);height:calc(100svh - 24px);max-height:none;padding:0;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);overflow:hidden;box-shadow:0 16px 48px #0003}
dialog.notifications-panel[open]{display:flex;flex-direction:column}
dialog.notifications-panel::backdrop{background:#211e253d;backdrop-filter:none}
.notifications-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 20px 0}
.notifications-head h2{font-size:23px;line-height:30px;margin:0;letter-spacing:-.3px}.notifications-head h2:focus{outline:none}
.notifications-icon-button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;color:var(--muted);border-radius:8px;background:transparent}
.notifications-icon-button svg{width:20px;height:20px}.notifications-icon-button:hover{background:var(--tint);color:var(--accent)}
.notifications-intro{padding:0 24px;margin:2px 0 14px;color:var(--muted);font-size:14px;line-height:22px}
.notifications-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 20px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.notifications-filters{display:flex;gap:4px}.notifications-filter{padding:10px 16px;min-height:44px;border-radius:8px;color:var(--muted);font-size:14px;font-weight:700}
.notifications-filter[aria-pressed=true]{background:var(--tint);color:var(--ink)}
.notifications-list{overflow:auto;min-height:0;flex:1;padding:0 20px 20px;overscroll-behavior:contain}
.notifications-group{font-size:13px;line-height:20px;font-weight:700;color:var(--muted);margin:22px 4px 6px}
.notification-item{position:relative;border-bottom:1px solid var(--line);padding:4px 0}
.notification-link{display:flex;align-items:flex-start;gap:12px;border-radius:10px;padding:12px 42px 12px 4px;color:var(--ink);text-decoration:none}
.notification-link:hover{text-decoration:none;background:var(--hover-surface,var(--bg))}.notification-link>.account-mark{flex:0 0 36px;width:36px;height:36px;min-width:36px;border-radius:10px;margin-top:3px}
.notification-link>.account-mark svg{width:20px;height:20px}.notification-copy{display:grid;gap:5px;min-width:0;overflow-wrap:anywhere}
.notification-meta{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;line-height:18px}.notification-dot{width:6px;height:6px;flex:0 0 6px;background:var(--accent);border-radius:50%}
.notification-copy strong{font-size:15px;line-height:22px;font-weight:750}.notification-description{font-size:14px;line-height:21px;color:var(--muted)}.notification-action{font-size:13px;line-height:20px;color:var(--accent);font-weight:700;margin-top:3px}
.notification-read{position:absolute;right:0;top:26px}.notification-item.is-read .notification-copy strong{font-weight:600}
.notifications-empty{padding:32px 8px;text-align:left}.notifications-empty>.account-mark{margin-bottom:20px}.notifications-empty h3{font-size:20px;line-height:28px;margin:0 0 8px}.notifications-empty p{font-size:14px;line-height:22px;color:var(--muted)}.notifications-empty .text-button{padding-left:0;margin-top:12px}
.notifications-status{margin-top:16px;padding:14px 16px;background:var(--bg);border-radius:12px;font-size:14px;line-height:21px;color:var(--muted)}.notifications-status .text-button{padding:8px 0}
.notifications-footer{padding:10px 20px 16px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:center;flex-shrink:0}.notifications-footer .text-button{padding:10px 12px}.notifications-page-note{width:100%;font-size:12px;line-height:18px;color:var(--muted);text-align:center;margin:6px 0 0}.notifications-more{width:100%;margin-top:20px}
.notification-settings{max-width:800px}.notification-settings h2{font-size:20px;line-height:28px;margin:0}.notification-settings fieldset{border:0;padding:0;margin:0;min-width:0}.notification-settings legend{font-size:18px;font-weight:750;margin:0 0 6px}.notification-settings .settings-option{border:0;border-bottom:1px solid var(--line);padding:18px 0}.notification-settings .settings-option:last-child{border:0}.notification-settings .settings-option>span{min-width:0}.notification-settings .settings-option input{flex:0 0 20px}
.notification-settings .notifications-timing{padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:10px}.notification-settings .notifications-home{padding:12px 0}.notification-settings .notifications-home .settings-option{padding:0}.notification-settings>p.small{margin-top:18px}.notification-settings .primary{margin-top:12px}
.notification-settings .notifications-timing legend{font-size:14px;line-height:22px;margin-bottom:12px}.notification-delay-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.notification-delay{display:flex;align-items:center;justify-content:center;min-height:48px;padding:8px;border:1px solid var(--line);border-radius:8px;text-align:center;font-size:14px;line-height:20px;cursor:pointer}.notification-delay:has(:checked){background:var(--tint);border-color:var(--accent);color:var(--ink);font-weight:750}.notification-delay:has(:focus-visible){outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:760px){.toolbar{gap:4px}.toolbar .text-button{padding:8px;font-size:13px}.notifications-trigger{margin-left:auto}dialog.notifications-panel{inset:0 0 0 auto;width:min(420px,100vw);max-width:100vw;height:100svh;border:0;border-radius:0}.notifications-head{padding:16px 16px 0}.notifications-intro{padding:0 20px}.notifications-tools{margin:0 16px}.notifications-list{padding:0 16px 20px}.notifications-footer{padding:10px 16px max(16px,env(safe-area-inset-bottom))}.notifications-head h2{font-size:22px}.notification-settings .settings-option{gap:16px}}
@media(prefers-reduced-motion:no-preference){body:not(.space-reduced) .notifications-panel[open]{animation:notifications-enter .18s ease-out}@keyframes notifications-enter{from{transform:translateX(16px);opacity:.9}to{transform:translateX(0);opacity:1}}}
