/* prettier-ignore */
:host {
  --bce-con1:var(--bce-con1-surface);
  --bce-con2:var(--bce-con2-surface);
  --bce-con3:var(--bce-con3-surface);
  --bce-con4:var(--bce-con4-surface);
  --bce-c-surface:var(--bce-c004-surface);
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.4);
  position: absolute;
  display: block;
  width: 0;
  height: 100%;
  transition: width 0.3s ease-in-out;
  overflow: hidden;
  z-index: 3;
}
:host .container {
  position: fixed;
  top: 0;
  bottom: 0;
  width: 0;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  background-color: var(--bce-c-surface);
  color: var(--bce-con1-surface);
  transition: width 0.3s ease-in-out;
  overflow: auto;
}
@media screen and (min-width: 600px) {
  :host {
    position: relative;
    width: 256px;
  }
  :host .container {
    width: 256px;
  }
}

:host([position=left]) .container {
  left: 0;
}

:host([position=right]) .container {
  right: 0;
}

:host([state=closed]) {
  width: 0;
}
:host([state=closed]) .container {
  width: 0;
}

:host([state=open]) {
  width: 100vw;
}
:host([state=open]) .container {
  width: 100vw;
}
@media screen and (min-width: 600px) {
  :host([state=open]) {
    width: 256px;
  }
  :host([state=open]) .container {
    width: 256px;
  }
}