:host {
  display: block;
  outline: none;
  position: relative;
}

polyfill-next-selector { content: '.core-list-viewport > *'; }
::content > * {
  position: absolute;
  top: 0;
  box-sizing: border-box;
  opacity: 0;
}

polyfill-next-selector { content: ':host(:not([grid])) .core-list-viewport > *'; }
:host(:not([grid])) ::content > * {
  width: 100%;
}

.core-list-items.horizontal {
  height: 100%;
  white-space: nowrap;
}

.core-list-items.horizontal > * {
  display: inline-block;
}
