.stack-card {
  display: flex;
  align-items: flex-end;
  background: linear-gradient(145deg, rgba(124,92,255,.09), transparent 58%), var(--panel);
  transition: transform .2s, border-color .2s;
}
.stack-card:hover { transform: translateY(-4px); border-color: var(--mint); }
.stack-art { position: absolute; inset: 0; overflow: hidden; }
.stack-art:before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(124,92,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(124,92,255,.07) 1px,transparent 1px);
  background-size: 34px 34px;
  -webkit-mask-image: linear-gradient(to bottom left,#000,transparent 76%);
  mask-image: linear-gradient(to bottom left,#000,transparent 76%);
}
.stack-art i,.stack-art b,.stack-art em,.stack-art span {
  position: absolute;
  width: 40px;
  height: 40px;
  background: var(--violet);
  box-shadow: 0 0 20px rgba(124,92,255,.7);
}
.stack-art i { right: 150px; top: 54px; }
.stack-art b { right: 108px; top: 54px; }
.stack-art em { right: 108px; top: 96px; background: var(--pink); box-shadow: 0 0 20px rgba(255,79,129,.7); }
.stack-art span { right: 66px; top: 96px; background: var(--mint); box-shadow: 0 0 20px rgba(108,255,217,.7); }
