
.mcew-cc{ position: relative; width:100%; --gap:16px; --pad:0px; --slide-w:320px; }
.mcew-cc__viewport{
  display:flex;
  overflow-x:auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  gap: var(--gap);
  padding-inline: var(--pad);
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  touch-action: pan-x pan-y;
  cursor: grab;
  user-select: none;
}
.mcew-cc__viewport::-webkit-scrollbar{ display:none; }
.mcew-cc.is-dragging .mcew-cc__viewport{ cursor: grabbing; scroll-behavior:auto; }

.mcew-cc__slide{
  flex: 0 0 var(--slide-w);
  scroll-snap-align: center;
  scroll-snap-stop: always;
}
.mcew-cc__link{ color: inherit; text-decoration:none !important; display:block; height:100%; }
.mcew-cc__card{
  cursor: pointer;
  height:100%;
  overflow:hidden;
  border-radius: 18px;
  transition: transform .18s ease, box-shadow .18s ease;
}
.mcew-cc__card:hover{ transform: translateY(-2px); }

/* Vertical default media */
.mcew-cc__media{ width:100%; overflow:hidden; }
.mcew-cc__img{ width:100%; height:190px; object-fit:cover; display:block; }
.mcew-cc__img--empty{ background: rgba(0,0,0,.06); }

/* Body */
.mcew-cc__body{
  display:flex;
  flex-direction:column;
  padding: 14px 14px 20px;
  min-height: 160px;
}
.mcew-cc__title{
  margin:0 0 8px;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
}
.mcew-cc__desc{
  margin:0;
  opacity:.75;
  font-size: 13px;
  line-height:1.6;
}

/* Horizontal style */
.mcew-cc--layout-horizontal .mcew-cc__card{
  cursor: pointer;
  display:flex;
  flex-direction:row;
}
.mcew-cc--layout-horizontal .mcew-cc__media{
  flex: 0 0 42%;
}
.mcew-cc--layout-horizontal .mcew-cc__img{
  height:100%;
  min-height: 210px;
}
.mcew-cc--layout-horizontal .mcew-cc__body{
  flex: 1;
  min-height: unset;
}
@media (max-width: 767px){
  .mcew-cc--layout-horizontal .mcew-cc__media{ flex-basis: 40%; }
  .mcew-cc--layout-horizontal .mcew-cc__img{ min-height: 190px; }
}

/* Footer sticks to bottom */
.mcew-cc__footer{
  margin-top: auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap: 10px;
  padding-top: 10px;
  padding-bottom: 10px;
}

/* Countdown (minimal digital) */
.mcew-cc__countdown{
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
}
.mcew-cc__countdown[data-has-expire="0"]{ display:none; }

.mcew-cc__cd-time{
  --mcew-clock-accent: #22f7ff;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-variant-numeric: tabular-nums;
  letter-spacing: .12em;
  font-weight: 900;
  font-size: 15px;
  padding: 7px 10px;
  border-radius: 12px;
  color: rgba(240,255,255,.95);
  background: rgba(10,14,18,.62);
  border: 1px solid rgba(255,255,255,.08);
  box-shadow:
    0 6px 16px rgba(0,0,0,.20),
    0 0 18px color-mix(in srgb, var(--mcew-clock-accent) 30%, transparent);
  text-shadow:
    0 0 10px color-mix(in srgb, var(--mcew-clock-accent) 50%, transparent);
}

/* Prices (two prices) */
.mcew-cc__prices{
  font-size: 13px;
  display:flex;
  align-items:baseline;
  gap: 8px;
  white-space: nowrap;
  justify-content:center;
}
.mcew-cc__price-sale{
  font-weight: 950;
}
.mcew-cc__price-regular{
  position: relative;
  opacity: .55;
  font-weight: 800;
}
.mcew-cc__price-regular::after{
  content:"";
  position:absolute;
  left:-2px;
  right:-2px;
  top: 52%;
  height: 2px;
  background: linear-gradient(90deg, rgba(255,59,48,.0), rgba(255,59,48,.9), rgba(255,59,48,.0));
  transform: translateY(-50%);
  border-radius: 999px;
}
.mcew-cc__price-cur{
  opacity: .8;
}

/* Empty */
.mcew-cc__empty{
  opacity:.75;
  padding: 10px 4px;
}

/* Presets */
.mcew-cc--preset-elevated .mcew-cc__card{
  cursor: pointer;
  background:#fff;
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
  border: 1px solid rgba(0,0,0,.04);
}
.mcew-cc--preset-elevated .mcew-cc__card:hover{ box-shadow: 0 14px 38px rgba(0,0,0,.12); }

.mcew-cc--preset-soft .mcew-cc__card{
  cursor: pointer;
  background: rgba(255,255,255,.85);
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 10px 28px rgba(0,0,0,.06);
}
.mcew-cc--preset-outline .mcew-cc__card{
  cursor: pointer;
  background: transparent;
  border: 1px solid rgba(0,0,0,.18);
  box-shadow: none;
}
.mcew-cc--preset-outline .mcew-cc__card:hover{ box-shadow: 0 10px 26px rgba(0,0,0,.08); }

.mcew-cc--preset-glass .mcew-cc__card{
  cursor: pointer;
  background: rgba(255,255,255,.25);
  border: 1px solid rgba(255,255,255,.35);
  box-shadow: 0 12px 30px rgba(0,0,0,.10);
  backdrop-filter: blur(14px);
}

/* Buttons */
.mcew-cc__btn{
  position:absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 42px; height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.92);
  box-shadow: 0 12px 26px rgba(0,0,0,.10);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index: 2;
}
.mcew-cc__btn:active{ transform: translateY(-50%) scale(.98); }
.mcew-cc__btn--prev{ left: 10px; }
.mcew-cc__btn--next{ right: 10px; }

.mcew-cc__btn::before{
  content: "›";
  font-size: 22px;
  line-height: 1;
  opacity: .9;
}
.mcew-cc__btn--prev::before{ content: "‹"; }

[dir="rtl"] .mcew-cc__btn--prev{ left:auto; right: 10px; }
[dir="rtl"] .mcew-cc__btn--next{ right:auto; left: 10px; }
/* In RTL, 'next' visually points left, 'prev' points right */
[dir="rtl"] .mcew-cc__btn--prev::before{ content: "›"; }
[dir="rtl"] .mcew-cc__btn--next::before{ content: "‹"; }

/* Dots */
.mcew-cc__dots{
  display:flex;
  gap: 8px;
  justify-content:center;
  align-items:center;
  margin-top: 14px;
}
.mcew-cc__dot{
  width: 7px; height: 7px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.28);
  background: rgba(0,0,0,.10);
  cursor:pointer;
}
.mcew-cc__dot.is-active{
  width: 18px;
  background: rgba(0,0,0,.45);
  border-color: rgba(0,0,0,.0);
}

@media (prefers-reduced-motion: reduce){
  .mcew-cc__viewport{ scroll-behavior:auto; }
}


@media (max-width: 767px){
  .mcew-cc__slide{ min-width: 280px; }
}
