.notification-bell-btn{border-radius:var(--radius-md);width:40px;height:40px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:flex;position:relative}.notification-bell-btn:hover{background:var(--accent);color:var(--accent-foreground)}.notification-badge{background:var(--danger);min-width:16px;height:16px;color:var(--card);text-align:center;pointer-events:none;border-radius:999px;padding:0 4px;font-size:10px;font-weight:600;line-height:16px;position:absolute;top:2px;right:0}.notification-overlay{z-index:99999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a66;animation:.15s notification-fade-in;position:fixed;inset:0}.notification-drawer{z-index:100000;background:var(--card);border-left:1px solid var(--border);width:100%;max-width:26rem;box-shadow:var(--shadow-floating);outline:none;flex-direction:column;animation:.2s notification-slide-in;display:flex;position:fixed;top:0;bottom:0;right:0}@keyframes notification-fade-in{0%{opacity:0}to{opacity:1}}@keyframes notification-slide-in{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:translate(0)}}.notification-header{padding:var(--space-5);border-bottom:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex;position:sticky;top:0}.notification-header-title{color:var(--card-foreground);margin:0;font-size:1.05rem;font-weight:600}.notification-header-subtitle{color:var(--muted-foreground);margin:.15rem 0 0;font-size:.8rem}.notification-close-btn{width:30px;height:30px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex}.notification-close-btn:hover{background:var(--accent);color:var(--accent-foreground)}.notification-filters{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.6rem 1.25rem;display:flex}.notification-filter-tabs{flex:1}.notification-filter-tabs .ui-scroll-strip__scroller{gap:.35rem}.notification-drawer .ui-scroll-strip:before{background:linear-gradient(to right,var(--card)0%,transparent 100%)}.notification-drawer .ui-scroll-strip:after{background:linear-gradient(to left,var(--card)0%,transparent 100%)}.notification-filter-tab{border:1px solid var(--border);color:var(--muted-foreground);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;flex-shrink:0;padding:.3rem .7rem;font-size:.78rem;font-weight:500;transition:background-color .15s,color .15s,border-color .15s}.notification-filter-tab:hover{border-color:var(--border-hover);color:var(--foreground)}.notification-filter-tab.active{background:var(--primary);border-color:var(--primary);color:var(--primary-fg)}.notification-sort-select{border:1px solid var(--border);background:var(--input-bg);color:var(--muted-foreground);cursor:pointer;border-radius:6px;flex-shrink:0;padding:.3rem .4rem;font-size:.78rem}.notification-search{border-bottom:1px solid var(--border);align-items:center;padding:.6rem 1.25rem;display:flex;position:relative}.notification-search-icon{color:var(--muted-foreground);pointer-events:none;position:absolute;left:2rem}.notification-search-input{border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--foreground);border-radius:8px;padding:.45rem 2rem .45rem 2.1rem;font-size:.85rem}.notification-search-input:focus{border-color:var(--primary);box-shadow:var(--shadow-focus);outline:none}.notification-search-input::placeholder{color:var(--muted-foreground)}.notification-search-clear{background:var(--muted);width:22px;height:22px;color:var(--muted-foreground);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;right:1.75rem}.notification-list{flex:1;padding:.5rem .75rem;overflow-y:auto}.notification-virtual-inner{position:relative}.notification-virtual-row{width:100%;position:absolute;top:0;left:0}.notification-group-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground);margin:.75rem .5rem .35rem;font-size:.72rem;font-weight:600}.notification-load-more{color:var(--muted-foreground);justify-content:center;padding:.75rem;display:flex}.spin{animation:.9s linear infinite notification-spin}@keyframes notification-spin{to{transform:rotate(360deg)}}.notification-card{padding:var(--space-3);border-radius:var(--radius-lg);transition:background-color var(--duration-fast)var(--ease-default),border-color var(--duration-fast)var(--ease-default);border:1px solid #0000;gap:.65rem;margin-bottom:2px;display:flex;position:relative}.notification-card.clickable{cursor:pointer}.notification-card:hover{background:var(--primary-light);border-color:var(--primary-soft)}.notification-card-accent{background:0 0;border-radius:999px;width:3px;position:absolute;top:10px;bottom:10px;left:0}.notification-card.unread .notification-card-accent{background:var(--primary)}.notification-card-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.notification-card-thumb{object-fit:cover;background:var(--muted);border-radius:8px;flex-shrink:0;width:32px;height:32px}.notification-card-content{flex:1;min-width:0}.notification-card-title{color:var(--card-foreground);margin:0;font-size:.85rem;font-weight:500}.notification-card.unread .notification-card-title{font-weight:700}.notification-card-body{color:var(--muted-foreground);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.15rem 0 0;font-size:.8rem;display:-webkit-box;overflow:hidden}.notification-card-meta{align-items:center;gap:.5rem;margin-top:.4rem;display:flex}.notification-card-time{color:var(--muted-foreground);font-size:.72rem}.notification-priority-chip{letter-spacing:.02em;border-radius:999px;padding:.05rem .45rem;font-size:.65rem;font-weight:600}.notification-ai-badge{letter-spacing:.02em;color:#7c3aed;background:#7c3aed1a;border-radius:999px;padding:.05rem .45rem;font-size:.65rem;font-weight:600}.notification-card-actions{opacity:0;flex-direction:column;gap:.25rem;transition:opacity .12s;display:flex}.notification-card:hover .notification-card-actions,.notification-card:focus-within .notification-card-actions{opacity:1}.notification-action-btn{width:26px;height:26px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex}.notification-action-btn:hover{background:var(--accent);color:var(--accent-foreground)}.notification-action-btn.delete:hover{color:var(--danger);background:#dc26261a}.notification-action-btn:disabled{opacity:.5;cursor:not-allowed}.notification-group-card{position:relative}.notification-group-expand-btn{color:var(--primary);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.3rem;margin:.1rem 0 .15rem calc(1.4rem + 32px);padding:.2rem .5rem;font-size:.75rem;font-weight:500;display:flex}.notification-group-expand-btn:hover{background:var(--muted)}.priority-critical{color:var(--danger);background:#dc26261a}.priority-high{color:#ea580c;background:#ea580c1a}.priority-medium{color:var(--primary);background:#2563eb1a}.priority-low{color:var(--gray-500);background:#64748b1a}.priority-silent{color:var(--gray-400);background:#94a3b81a}.notification-empty,.notification-error{text-align:center;color:var(--muted-foreground);flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:3rem 1.5rem;display:flex}.notification-empty-icon{color:var(--border-hover);margin-bottom:.5rem}.notification-empty-title{color:var(--card-foreground);margin:0;font-size:.95rem;font-weight:600}.notification-empty-subtitle{max-width:260px;margin:0;font-size:.8rem}.notification-empty-clear-btn,.notification-retry-btn{border:1px solid var(--border);color:var(--foreground);cursor:pointer;background:0 0;border-radius:8px;margin-top:.75rem;padding:.4rem .9rem;font-size:.8rem;font-weight:500}.notification-empty-clear-btn:hover,.notification-retry-btn:hover{border-color:var(--border-hover);background:var(--muted)}.notification-skeleton-list{padding:.75rem}.notification-skeleton-card{gap:.65rem;padding:.75rem;display:flex}.notification-skeleton-icon{background:var(--muted);border-radius:8px;width:32px;height:32px;animation:1.4s infinite notification-shimmer}.notification-skeleton-lines{flex-direction:column;flex:1;gap:.45rem;display:flex}.notification-skeleton-line{background:var(--muted);border-radius:4px;height:10px;animation:1.4s infinite notification-shimmer}.notification-skeleton-line.w-3-4{width:75%}.notification-skeleton-line.w-full{width:100%}.notification-skeleton-line.w-1-2{width:50%}@keyframes notification-shimmer{0%,to{opacity:1}50%{opacity:.45}}.notification-footer{padding:var(--space-3)var(--space-5);border-top:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;gap:.75rem;display:flex}.notification-mark-all-btn{color:var(--primary);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:flex}.notification-mark-all-btn:hover:not(:disabled){background:var(--primary-light)}.notification-mark-all-btn:disabled{color:var(--muted-foreground);cursor:not-allowed}.notification-connection{color:var(--muted-foreground);align-items:center;gap:.35rem;font-size:.72rem;display:flex}.notification-connection-dot{background:var(--gray-400);border-radius:50%;width:7px;height:7px}.notification-connection.status-connected .notification-connection-dot{background:var(--success)}.notification-connection.status-reconnecting .notification-connection-dot{background:#ea580c;animation:1.2s infinite notification-shimmer}.notification-connection.status-offline .notification-connection-dot{background:var(--gray-400)}@media (max-width:480px){.notification-drawer{border-left:none;max-width:100%}}@media (prefers-reduced-motion:reduce){.notification-overlay,.notification-drawer,.spin,.notification-skeleton-icon,.notification-skeleton-line,.notification-connection.status-reconnecting .notification-connection-dot{animation:none}.notification-card,.notification-bell-btn,.notification-filter-tab,.notification-card-actions{transition:none}}
