#notifications-stack {
  position: absolute; top: 36px; right: 12px;
  display: flex; flex-direction: column; gap: 8px;
  z-index: 1200; pointer-events: none;
}
.notif {
  pointer-events: auto;
  width: 320px;
  background: var(--bg-window);
  backdrop-filter: blur(30px) saturate(180%);
  border: 0.5px solid var(--border);
  border-radius: 12px;
  padding: 12px 14px;
  box-shadow: 0 8px 28px rgba(0,0,0,0.28);
  display: grid; grid-template-columns: 32px 1fr; gap: 10px;
  animation: notif-in 0.3s ease-out;
}
@keyframes notif-in { from { opacity: 0; transform: translateY(-12px); } to { opacity: 1; transform: none; } }
.notif .ic { width: 32px; height: 32px; border-radius: 8px; }
.notif .body { font-size: 12px; line-height: 1.35; }
.notif .body b { display: block; font-size: 13px; margin-bottom: 2px; }
.notif .body small { color: var(--text-faint); float: right; }

#notification-center {
  position: absolute; top: 32px; right: 8px; bottom: 80px; width: 360px;
  z-index: 1500; padding: 10px;
  display: flex; flex-direction: column; gap: 10px;
  overflow: auto;
}
.nc-widget {
  background: var(--bg-window);
  backdrop-filter: blur(30px) saturate(180%);
  border: 0.5px solid var(--border);
  border-radius: 16px;
  padding: 14px;
  box-shadow: 0 6px 24px rgba(0,0,0,0.22);
}
.nc-widget h3 { font-size: 13px; margin-bottom: 6px; }
.nc-widget .big { font-size: 28px; font-weight: 600; }
.nc-widget.weather .big { font-size: 38px; }
