/*
  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
 */
.bds-hover:hover {
  mix-blend-mode: multiply;
}

.focus::before {
  content: "";
  position: absolute;
  inset: -4px;
  border: 2px solid transparent;
  border-radius: 4px;
}
.focus:focus-visible {
  outline: none;
}
.focus:focus-visible::before {
  border-color: #c226fb;
}

.disabled {
  pointer-events: none;
}

.bg-surface-1 {
  background-color: var(--color-surface-1, #f6f6f6);
}

.bg-surface-2 {
  background-color: var(--color-surface-2, #ededed);
}

.bg-surface-3 {
  background-color: var(--color-surface-3, #e3e3e3);
}

.bg-surface-4 {
  background-color: var(--color-surface-4, #141414);
}

:host {
  display: block;
  border-radius: 16px;
}

:host(.border) {
  border: 1px solid var(--color-border-1, rgba(0, 0, 0, 0.2));
  margin: -1px;
}

:host(.bg-surface-0) {
  background-color: var(--color-surface-0, white);
}

:host(.bg-surface-1) {
  background-color: var(--color-surface-1, #f6f6f6);
}

:host(.bg-surface-2) {
  background-color: var(--color-surface-2, #ededed);
}

:host(.bg-surface-3) {
  background-color: var(--color-surface-3, #e3e3e3);
}

:host(.bg-surface-4) {
  background-color: var(--color-surface-4, #141414);
}

:host(.border-1) {
  border-color: var(--color-border-1, rgba(0, 0, 0, 0.2));
}

:host(.border-2) {
  border-color: var(--color-border-2, rgba(0, 0, 0, 0.16));
}

:host(.border-3) {
  border-color: var(--color-border-3, rgba(0, 0, 0, 0.06));
}

:host(.border-primary) {
  border-color: var(--color-primary, #1e6bf1);
}

:host(.border-secondary) {
  border-color: var(--color-secondary, #292929);
}

:host(.border-positive) {
  border-color: var(--color-positive, #10603b);
}

:host(.border-negative) {
  border-color: var(--color-negative, #e60f0f);
}

:host(.border-warning) {
  border-color: var(--color-warning, #fde99b);
}

:host(.border-error) {
  border-color: var(--color-error, #fabebe);
}

:host(.border-success) {
  border-color: var(--color-success, #84ebbc);
}

:host(.border-delete) {
  border-color: var(--color-delete, #e60f0f);
}

:host(.paper__elevation--none) {
  box-shadow: none;
}

:host(.paper__elevation--static) {
  box-shadow: 0px 2px 8px -2px var(--color-shadow-1, rgba(0, 0, 0, 0.16));
}

:host(.paper__elevation--primary) {
  box-shadow: 0px 6px 16px -4px var(--color-shadow-1, rgba(0, 0, 0, 0.16));
}

:host(.paper__elevation--secondary) {
  box-shadow: 0px 8px 4px -4px var(--color-shadow-0, rgba(0, 0, 0, 0.04)), 0px 12px 12px -4px var(--color-shadow-1, rgba(0, 0, 0, 0.16));
}

.paper__display {
  display: contents;
}