
/* v3.3 Patch CSS — maintain logic, fix placements, circles, add square dots, no-bg for PPN */
.main-slider { position: relative; z-index: 1; }
.main-slider .image,
.main-slider .image img,
.main-slider .image .slide-video { display:block; width:100%; }
.main-slider .image img,
.main-slider .image .slide-video { object-fit: cover; }

/* Variables */
.main-slider { --rhs-nav-color:#fff; --rhs-nav-size:16px; }

/* Description Length*/
.slider-dec { display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; -webkit-line-clamp: 4; }
@media (max-width: 1024px) { .slider-dec { -webkit-line-clamp: 4; } }
@media (max-width: 767px) { .slider-dec { -webkit-line-clamp: 6; } }


/* ARROWS & TEXT — Middle (L/R) */
.main-slider.rhs-nav-type-arrows.rhs-place-middle_lr .prev,
.main-slider.rhs-nav-type-arrows.rhs-place-middle_lr .next,
.main-slider.rhs-nav-type-textnav.rhs-place-middle_lr .prev,
.main-slider.rhs-nav-type-textnav.rhs-place-middle_lr .next { position:absolute; top:50%; transform:translateY(-50%); z-index:5; }
.main-slider.rhs-nav-type-arrows.rhs-place-middle_lr .prev,
.main-slider.rhs-nav-type-textnav.rhs-place-middle_lr .prev { left:10px; }
.main-slider.rhs-nav-type-arrows.rhs-place-middle_lr .next,
.main-slider.rhs-nav-type-textnav.rhs-place-middle_lr .next { right:10px; }

/* ARROWS & TEXT — Bottom Center (similar to Numbers bottom center) */
.main-slider.rhs-nav-type-arrows.rhs-place-bottom_center .prev,
.main-slider.rhs-nav-type-arrows.rhs-place-bottom_center .next,
.main-slider.rhs-nav-type-textnav.rhs-place-bottom_center .prev,
.main-slider.rhs-nav-type-textnav.rhs-place-bottom_center .next { position:absolute; bottom:10px; top:auto; z-index:5; }
.main-slider.rhs-nav-type-arrows.rhs-place-bottom_center .prev,
.main-slider.rhs-nav-type-textnav.rhs-place-bottom_center .prev { left:50%; transform:translateX(-130%); }
.main-slider.rhs-nav-type-arrows.rhs-place-bottom_center .next,
.main-slider.rhs-nav-type-textnav.rhs-place-bottom_center .next { left:50%; transform:translateX(30%); }

/* ARROWS style */
.main-slider.rhs-nav-type-arrows .prev, .main-slider.rhs-nav-type-arrows .next,
.main-slider.rhs-nav-type-textnav .prev, .main-slider.rhs-nav-type-textnav .next { color: var(--rhs-nav-color); border:none; background: none; }
.main-slider.rhs-nav-type-arrows .prev svg, .main-slider.rhs-nav-type-arrows .next svg { width: var(--rhs-nav-size); height: var(--rhs-nav-size); }

/* TEXT nav style */
.main-slider.rhs-nav-type-textnav .prev, .main-slider.rhs-nav-type-textnav .next { font-size: calc(var(--rhs-nav-size) * 1.0); }

/* DOTS placement */
.main-slider .slick-dots { z-index: 4; }
.main-slider.rhs-nav-type-dotsicators.rhs-place-bottom_center .slick-dots,
.main-slider.rhs-nav-type-lines.rhs-place-bottom_center_horizontal .slick-dots,
.main-slider.rhs-nav-type-numbers.rhs-place-bottom_center .slick-dots { position:absolute; bottom:10px; left:50%; transform:translateX(-50%); display:flex !important; gap:8px; }
.main-slider.rhs-nav-type-dotsicators.rhs-place-middle_right_vertical .slick-dots,
.main-slider.rhs-nav-type-lines.rhs-place-middle_right_vertical .slick-dots,
.main-slider.rhs-nav-type-numbers.rhs-place-middle_right_vertical .slick-dots { position:absolute; right:10px; top:50%; transform:translateY(-50%); display:flex !important; flex-direction:column; gap:8px; }
.main-slider.rhs-nav-type-dotsicators.rhs-place-middle_left_vertical .slick-dots,
.main-slider.rhs-nav-type-lines.rhs-place-middle_left_vertical .slick-dots,
.main-slider.rhs-nav-type-numbers.rhs-place-middle_left_vertical .slick-dots { position:absolute; left:10px; top:50%; transform:translateY(-50%); display:flex !important; flex-direction:column; gap:8px; }

/* DOTS default style — keep circles even when size changes */
.main-slider .slick-dots li { list-style:none; }
.main-slider .slick-dots button { border:none; opacity:0.5; transition: all 180ms ease; width: var(--rhs-nav-size); height: var(--rhs-nav-size); border-radius:50%; box-sizing: border-box; }
.main-slider .slick-dots .slick-active button { opacity:1; transform: scale(1.35); box-shadow: 0 0 6px rgba(255,255,255,0.85), 0 0 20px rgba(255,255,255,0.75); }
.main-slider.rhs-nav-type-dotsicators.rhs-dots-solid_dots .slick-dots button { background: var(--rhs-nav-color); }
.main-slider.rhs-nav-type-dotsicators.rhs-dots-circle_dots .slick-dots button { background:transparent; border:2px solid var(--rhs-nav-color); }
/* New square dot options */
.main-slider.rhs-nav-type-dotsicators.rhs-dots-solid_square .slick-dots button { background: var(--rhs-nav-color); border-radius:6px; }
.main-slider.rhs-nav-type-dotsicators.rhs-dots-outline_square .slick-dots button { background: transparent; border:2px solid var(--rhs-nav-color); border-radius:6px; }

/* LINES style */
.main-slider.rhs-nav-type-lines .slick-dots button { width: calc(var(--rhs-nav-size) * 2.6) !important; height:3px; border-radius:2px; }
.main-slider.rhs-nav-type-lines.rhs-lines-solid_lines .slick-dots button { background: var(--rhs-nav-color); }
.main-slider.rhs-nav-type-lines.rhs-lines-outline_lines .slick-dots button { background:transparent; border:2px solid var(--rhs-nav-color); }

/* NUMBERS */
.main-slider.rhs-nav-type-numbers .slick-dots button.rhs-number { width:auto; height:auto; background:transparent; color: var(--rhs-nav-color); font-size: calc(var(--rhs-nav-size) * 1.15); padding:2px 6px; border:none; opacity:0.5; }
.main-slider.rhs-nav-type-numbers .slick-dots .slick-active button.rhs-number { opacity:1; transform: scale(1.12); text-shadow: 0 0 8px rgba(255,255,255,0.7); }

/* PROGRESS bars */
.main-slider .rhs-progress { position:absolute; left:0; right:0; height:4px; background: rgba(255,255,255,0.25); z-index: 4; }
.main-slider .rhs-progress.top { top:0; }
.main-slider .rhs-progress.bottom { bottom:0; }
.main-slider .rhs-progress .rhs-progress-fill { height:100%; width:0%; background: var(--rhs-nav-color); }
.main-slider .rhs-progress .rhs-progress-fill.dash { background: repeating-linear-gradient(90deg, var(--rhs-nav-color) 0 12px, transparent 12px 24px); animation: dashFlow 800ms linear infinite; }
@keyframes dashFlow { from { background-position: 0 0; } to { background-position: 24px 0; } }

/* Vertical progress (half-height, full width) */
.main-slider .rhs-progress-vertical { position:absolute; left:0; right:0; height:14px; display:flex; gap:4px; align-items:flex-end; z-index: 4; }
.main-slider .rhs-progress-vertical.top { top:6px; }
.main-slider .rhs-progress-vertical.bottom { bottom:6px; }
.main-slider .rhs-progress-vertical .bar { width:3px; background: var(--rhs-nav-color); height:6px; }
@keyframes rhsWave { 0% { height:6px; } 50% { height:14px; } 100% { height:6px; } }

/* Prev/Play(toggle)/Next — no background, clickable */
.main-slider.rhs-nav-type-prevplaypause .rhs-ppn-controls { position:absolute; display:flex; gap:8px; z-index: 5; }
.main-slider.rhs-nav-type-prevplaypause.rhs-place-bottom_center_inside .rhs-ppn-controls { bottom:12px; left:50%; transform:translateX(-50%); }
.main-slider.rhs-nav-type-prevplaypause.rhs-place-top_center_inside .rhs-ppn-controls { top:12px; left:50%; transform:translateX(-50%); }
.main-slider.rhs-nav-type-prevplaypause.rhs-place-right_center_vertical .rhs-ppn-controls { right:12px; top:50%; transform:translateY(-50%); flex-direction:column; }
.main-slider.rhs-nav-type-prevplaypause.rhs-place-left_center_vertical .rhs-ppn-controls { left:12px; top:50%; transform:translateY(-50%); flex-direction:column; }
.main-slider .rhs-ppn-controls button { background:none; color: var(--rhs-nav-color); border:none; padding:0; border-radius:0; font-size: var(--rhs-nav-size); display:flex; align-items:center; justify-content:center; cursor:pointer; pointer-events:auto; }
