/*
  Font family is Nunito Sans. Its fallback is Helvetica
*/
/*
  Font sizes have been converted to rem considering a base size of 16px.
*/
/*
*  Z-Index
*  
*  The z-index CSS property sets the z-order of a positioned element and its descendants or flex items. 
*  Overlapping elements with a larger z-index cover those with a smaller one.
*  
*  REF: https://developer.mozilla.org/en-US/docs/Web/CSS/z-index
*  REF: https://www.smashingmagazine.com/2019/04/z-index-component-based-web-application/  
*/
/**
 * Define media query values
 */
:host {
  display: table-row;
  height: 64px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border-bottom: 1px solid var(--color-border-2, #CFCFCF);
}
:host .collapse-body {
  padding: 16px;
  max-height: 100px;
  text-align: left;
  opacity: 1;
  transition: all ease 0.5s;
}

:host:last-child {
  border-bottom: none;
}

:host(.clickable--true):hover {
  background-color: var(--color-hover, rgba(0, 0, 0, 0.08));
  border-bottom: 1px solid var(--color-border-2, #CFCFCF);
  cursor: pointer;
}

:host(.clickable--true) {
  border-bottom: none;
}

:host(.selected--true) {
  border-radius: 8px;
  outline: 2px solid var(--color-primary, #1e6bf1);
  outline-offset: -1px;
  border-bottom: none;
}

:host(.dense-row) {
  height: auto;
}

:host(.collapse-body) {
  height: fit-content;
}

.arrow {
  -webkit-transition: all ease 0.3s;
  -moz-transition: all ease 0.3s;
  transition: all ease 0.3s;
  transform: rotate(180deg);
}

.active {
  transform: rotate(0deg);
}

:host(.collapse) {
  height: 0;
}
:host(.collapse) .collapse-body {
  padding: 0;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all ease-in-out 0.5s;
}
:host(.collapse) th {
  padding: 0;
}