.notif-bell{align-items:center;display:flex;position:relative}.notif-trigger{border:1px solid var(--line);width:36px;height:36px;color:var(--soft);cursor:pointer;background:#ffffff08;border-radius:999px;place-items:center;transition:all .15s;display:grid;position:relative}.notif-trigger:hover{color:var(--text);border-color:color-mix(in srgb, var(--brand) 45%, var(--line));background:rgba(var(--brand-rgb), .06)}.notif-trigger svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.notif-badge{background:var(--red);color:#fff;min-width:17px;height:17px;box-shadow:0 0 0 2px var(--bg);border-radius:999px;place-items:center;padding:0 4px;font-size:9px;font-weight:850;display:grid;position:absolute;top:-4px;right:-4px}.notif-backdrop{z-index:200;cursor:default;background:0 0;border:0;position:fixed;inset:0}.notif-panel{z-index:201;border:1px solid var(--line);background:var(--surface-2);border-radius:12px;flex-direction:column;width:400px;max-width:calc(100vw - 24px);max-height:min(560px,78vh);display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 22px 54px #00000080}.notif-head{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.notif-head strong{color:var(--text);font-size:13px}.notif-markall{color:var(--brand);cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:800}.notif-markall:hover{text-decoration:underline}.notif-list{flex:auto;min-height:0;overflow-y:auto}.notif-empty{color:var(--soft);text-align:center;margin:0;padding:24px 14px;font-size:12px}.notif-empty.notif-error{color:#ff8585}.notif-group{display:block}.notif-group-label{z-index:1;color:var(--soft);text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2);margin:0;padding:8px 14px 4px;font-size:10px;font-weight:850;position:sticky;top:0}.notif-item-avatar{flex:none;display:inline-flex;position:relative}.notif-type-icon{width:16px;height:16px;box-shadow:0 0 0 2px var(--surface-2);color:var(--soft);background:#2b2d2b;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-3px;right:-3px}.notif-type-icon svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:10px;height:10px}.notif-type-icon.icon-completed{color:var(--brand)}.notif-type-icon.icon-comment{color:var(--blue)}.notif-type-icon.icon-date{color:var(--yellow)}.notif-type-icon.icon-deleted,.notif-type-icon.icon-participant-removed{color:var(--red)}.notif-type-icon.icon-participant-added{color:var(--brand)}.notif-item{border-bottom:1px solid #ffffff0d;align-items:stretch;gap:4px;padding:4px 8px 4px 4px;display:flex}.notif-item.unread{background:rgba(var(--brand-rgb), .05)}.notif-item:not(.unread) .notif-item-title{color:var(--soft);font-weight:700}.notif-item:not(.unread) .notif-item-avatar{opacity:.72}.notif-item-main{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:auto;gap:10px;padding:8px;display:flex}.notif-item-main:hover{background:#ffffff0a}.notif-item-body{gap:2px;min-width:0;display:grid}.notif-item-title{color:var(--text);align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.notif-dot{background:var(--brand);border-radius:50%;flex:none;width:7px;height:7px}.notif-item-msg{color:var(--soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.35;display:-webkit-box;overflow:hidden}.notif-item-time{color:#8d928e;font-size:9px;font-weight:700}.notif-item-actions{flex-direction:column;flex:none;justify-content:center;gap:4px;display:flex}.notif-mini{border:1px solid var(--line);width:24px;height:24px;color:var(--soft);cursor:pointer;background:0 0;border-radius:6px;place-items:center;transition:all .12s;display:grid}.notif-mini:hover{color:var(--brand);border-color:color-mix(in srgb, var(--brand) 45%, var(--line))}.notif-mini-danger:hover{color:#ff6b6b;border-color:#f04f4f80}.notif-mini svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}@media (max-width:640px){.notif-backdrop{background:#00000073}.notif-panel{width:auto;max-width:none;height:82vh;max-height:82vh;padding-bottom:env(safe-area-inset-bottom);border-radius:16px 16px 0 0;position:fixed;inset:auto 0 0}}
