/* UpCode ONE Rabattstudio – Frontend-Styles */

.ucrs-badge {
  display: inline-block;
  margin: .35rem 0;
  padding: .2rem .6rem;
  border-radius: 999px;
  font-size: .8rem;
  font-weight: 700;
  line-height: 1.4;
  vertical-align: middle;
}

.ucrs-progress {
  margin: 0 0 1rem;
  padding: .75rem 1rem;
  border: 1px solid rgba(0, 0, 0, .08);
  border-radius: .5rem;
  background: rgba(0, 0, 0, .02);
}
.ucrs-progress__label {
  font-size: .9rem;
  font-weight: 600;
  margin-bottom: .4rem;
}
.ucrs-progress__track {
  height: 10px;
  border-radius: 999px;
  background: rgba(0, 0, 0, .1);
  overflow: hidden;
}
.ucrs-progress__bar {
  height: 100%;
  border-radius: 999px;
  transition: width .4s ease;
}

.ucrs-slidein {
  position: fixed;
  left: 1rem;
  bottom: 1rem;
  z-index: 1080;
  max-width: 320px;
  padding: 1.1rem 1.3rem 1.2rem;
  border-radius: .6rem;
  box-shadow: 0 8px 30px rgba(0, 0, 0, .22);
  animation: ucrs-slidein-in .35s ease;
}
.ucrs-slidein__close {
  position: absolute;
  top: .35rem;
  right: .55rem;
  background: none;
  border: 0;
  color: inherit;
  font-size: 1.4rem;
  line-height: 1;
  cursor: pointer;
  opacity: .8;
}
.ucrs-slidein__title { font-size: 1.05rem; font-weight: 700; margin-bottom: .25rem; }
.ucrs-slidein__text { font-size: .9rem; opacity: .95; margin-bottom: .6rem; }
.ucrs-slidein__code {
  display: inline-block;
  padding: .4rem .8rem;
  border: 2px dashed rgba(255, 255, 255, .7);
  border-radius: .4rem;
  font-weight: 700;
  letter-spacing: .05em;
}
@keyframes ucrs-slidein-in {
  from { transform: translateY(20px); opacity: 0; }
  to   { transform: translateY(0); opacity: 1; }
}
