/* path: core/static/ui/css/blocks/autopark.css */

/* =============================================================================
   Autopark
   ============================================================================= */

.Autopark__head{
  display:block;
  margin-bottom:var(--space-4);
}

.Autopark__intro{
  max-width:760px;
}

.Autopark__subtitle{
  margin:0;
}

.Autopark__nav{
  display:none;
  align-items:center;
  gap:var(--space-1);
  flex:0 0 auto;
}

.Autopark__arrow{
  width:54px;
  height:54px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--r-m);
  border:1px solid var(--divider-2);
  background:var(--surface);
  color:var(--text);
  font:inherit;
  font-size:1.15rem;
  cursor:pointer;
  transition:
    background .15s ease,
    border-color .15s ease,
    transform .08s ease,
    opacity .15s ease;
}

.Autopark__arrow:hover{
  background:var(--surface-2);
  border-color:var(--divider-3);
}

.Autopark__arrow:active{
  transform:translateY(1px);
}

.Autopark__arrow.is-disabled{
  opacity:.42;
  cursor:default;
  pointer-events:none;
}

.Autopark__body{
  margin-bottom:0;
}

.Autopark__viewport{
  position:relative;
}

.Autopark__scroller{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:calc(100% - 40px);
  gap:var(--space-4);
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scroll-snap-type:x mandatory;
  padding:2px 20px 6px 0;
  scrollbar-width:none;
}

.Autopark__scroller::-webkit-scrollbar{
  display:none;
}

/* =============================================================================
   Card
   ============================================================================= */

.AutoparkCard{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:100%;
  scroll-snap-align:start;
  overflow:hidden;
}

.AutoparkCard__media{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:var(--space-4) var(--space-4) 0;
  min-height:176px;
  border-radius:var(--r-m);
  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.025) 0%,
      rgba(255,255,255,.01) 40%,
      rgba(0,0,0,.10) 100%
    ),
    var(--surface-2);
  overflow:hidden;
}

.AutoparkCard__media::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(
      80% 60% at 50% 0%,
      rgba(255,255,255,.05) 0%,
      rgba(255,255,255,.018) 40%,
      transparent 75%
    );
  pointer-events:none;
}

.AutoparkCard__media::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:42%;
  background:
    linear-gradient(
      180deg,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,.05) 50%,
      rgba(0,0,0,.13) 100%
    );
  pointer-events:none;
}

.AutoparkCard__img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  max-width:none;
  height:100%;
  object-fit:contain;
  object-position:center;
  transform:scale(.88);
  filter:contrast(1.04) brightness(1.02);
}

.AutoparkCard__body{
  display:flex;
  flex-direction:column;
  flex:1;
  padding:var(--space-4);
}

.AutoparkCard__title{
  margin:0 0 6px;
  color:var(--text-3);
  font-size:var(--small);
  line-height:1.2;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.AutoparkCard__subtitle{
  margin:0 0 var(--space-2);
  color:var(--text);
  font-family:var(--font-head);
  font-size:1.45rem;
  line-height:1.08;
  letter-spacing:-.02em;
  font-weight:700;
}

.AutoparkCard__hint{
  margin:0 0 var(--space-2);
  color:var(--text-2);
  font-size:1rem;
  line-height:1.3;
}

.AutoparkCard__specs{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:var(--space-1);
}

.AutoparkCard__spec{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-3);
  min-height:40px;
  padding:0 14px;
  border-radius:var(--r-s);
  background:rgba(255,255,255,.02);
}

.AutoparkCard__spec span{
  color:var(--text-2);
  font-size:1rem;
  line-height:1.2;
}

.AutoparkCard__spec strong{
  color:var(--text);
  font-size:1rem;
  line-height:1.2;
  font-weight:500;
  text-align:right;
  white-space:nowrap;
}

@media (min-width:768px){
  .Autopark__head{
    margin-bottom:var(--space-5);
  }

  .Autopark__scroller{
    grid-auto-columns:minmax(360px, 48%);
    gap:var(--space-4);
    padding-right:40px;
  }

  .AutoparkCard__media{
    min-height:196px;
  }

  .AutoparkCard__body{
    padding:var(--space-4);
  }

  .AutoparkCard__subtitle{
    font-size:1.6rem;
  }
}

@media (min-width:1200px){
  .Autopark__head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:var(--space-4);
    max-width:none;
  }

  .Autopark__intro{
    flex:0 1 760px;
    max-width:760px;
  }

  .Autopark__nav{
    display:flex;
    margin-left:auto;
    align-self:flex-end;
  }

  .Autopark__scroller{
    grid-auto-columns:minmax(360px, 32%);
    padding-right:56px;
  }

  .AutoparkCard__media{
    min-height:206px;
  }
}