.ldcv2 {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  opacity: 0;
  text-align: center;
  perspective: 1024px;
  visibility: hidden
}

.ldcv2:before {
  content: " ";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.5)
}

.ldcv2:after {
  content: " ";
  display: inline-block;
  height: 100%;
  width: 0;
  vertical-align: middle
}

.ldcv2.running,.ldcv2.active {
  z-index: 3000;
  transition: opacity .2s ease-in-out,visibility .2s ease-in-out
}

.ldcv2.no-shadow:before,.ldcv2.bare:before {
  display: none
}

.ldcv2.active {
  visibility: visible;
  opacity: 1
}

.ldcv2>.base>.inner {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 5px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.3);
  background: #fff;
  padding: 0;
  transform: translateZ(0);
  transform-origin: 50% 50%;
  transition: all .2s ease-in-out
}

.ldcv2>.base>.inner>.foot {
  padding: 15px;
  margin-top: 15px;
  border-top: 1px solid #ddd
}

.ldcv2.shown>.base>.inner {
  transform: none !important
}

.ldcv2>.base {
  text-align: left;
  z-index: 5;
  max-width: 80%;
  max-height: 90%;
  display: inline-block;
  vertical-align: middle
}

.ldcv2.default-size>.base {
  width: 640px;
  height: 600px
}

.ldcv2.margin-centered>.base {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  transform: initial;
  perspective: 300px
}

.ldcv2.transform-centered>.base {
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%)
}

.ldcv2.bare {
  position: absolute;
  width: auto;
  height: auto
}

.ldcv2.bare>.base {
  width: auto;
  height: auto;
  max-width: initial;
  max-height: initial;
  transform: initial;
  top: initial;
  left: initial;
  right: initial;
  bottom: initial;
  position: absolute
}

.ldcv2.bare>.base>.inner {
  overflow: visible
}

.ldcv2.scroll {
  background: rgba(0,0,0,0.5);
  overflow-y: scroll;
  overflow-x: hidden;
  padding-top: 50px;
  padding-bottom: 50px
}

.ldcv2.scroll:before {
  display: none
}

.ldcv2.scroll>.base {
  max-height: initial
}

.ldcv2.light:before {
  background: rgba(255,255,255,0.8)
}

.ldcv2.scroll.light {
  background: rgba(255,255,255,0.8)
}

.ldcv2.lg>.base {
  width: 960px;
  height: 700px
}

.ldcv2.md>.base {
  width: 720px;
  height: 500px
}

.ldcv2.full>.base {
  border: 0;
  border-radius: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%
}

.ldcv2.full>.base>.inner {
  border-radius: 0
}

.ldcv2.mini,.ldcv2.inline {
  width: auto;
  height: auto;
  left: auto;
  top: auto;
  right: auto;
  bottom: auto
}

.ldcv2.mini:before,.ldcv2.inline:before,.ldcv2.mini:after,.ldcv2.inline:after {
  display: none
}

.ldcv2.mini>.base,.ldcv2.inline>.base {
  max-width: initial;
  max-height: initial
}

.ldcv2.mini>.base>.inner,.ldcv2.inline>.base>.inner {
  width: initial;
  height: initial
}

.ldcv2.mini.left {
  left: 1.25em
}

.ldcv2.mini.right {
  right: 1.25em
}

.ldcv2.mini.top {
  top: 1.25em
}

.ldcv2.mini.bottom {
  bottom: 1.25em
}

.ldcv2.inline {
  position: relative
}

.ldcv2.inline>.base {
  position: absolute;
  top: 0;
  left: 0
}

.ldcv2.autogap>.base>.inner {
  padding: 2em
}

@media(max-width: 767px) {
  .ldcv2.autogap>.base {
      max-width:calc(100% - 4px);
      width: 100%
  }

  .ldcv2.autogap>.base>.inner {
      padding: 2em .75em
  }

  .ldcv2.autogap.scroll {
      padding-top: 2px;
      padding-bottom: 2px
  }
}

@media(max-width: 959px) {
  .ldcv2.full-lg {
      padding:0 !important
  }

  .ldcv2.full-lg>.base {
      min-width: 100%;
      height: 100% !important
  }

  .ldcv2.full-lg>.base>.inner {
      border-radius: 0
  }

  .ldcv2.full-lg.scroll>.base {
      overflow: scroll
  }

  .ldcv2.full-lg.scroll>.base>.inner {
      height: auto
  }
}

@media(max-width: 575px) {
  .ldcv2.full-sm {
      padding:0 !important
  }

  .ldcv2.full-sm>.base {
      min-width: 100%;
      height: 100% !important
  }

  .ldcv2.full-sm>.base>.inner {
      border-radius: 0
  }

  .ldcv2.full-sm.scroll>.base {
      overflow: scroll
  }

  .ldcv2.full-sm.scroll>.base>.inner {
      height: auto
  }
}

@media(max-width: 767px) {
  .ldcv2.full-md {
      padding:0 !important
  }

  .ldcv2.full-md>.base {
      min-width: 100%;
      height: 100% !important
  }

  .ldcv2.full-md>.base>.inner {
      border-radius: 0
  }

  .ldcv2.full-md.scroll>.base {
      overflow: scroll
  }

  .ldcv2.full-md.scroll>.base>.inner {
      height: auto
  }
}
