:root{--dss-height:600px;--dss-height-mobile:400px;--dss-text-color:#fff;--dss-accent:#ff4444;--dss-cta-bg:#ff4444;--dss-cta-text:#fff;--dss-badge-bg:#ff4444;--dss-overlay-1:#000;--dss-overlay-2:#000;--dss-overlay-opacity:.7;--dss-title-size:48px;--dss-price-size:36px;--dss-transition-speed:800ms;--dss-autoplay-speed:5000ms}
.dss-slider{position:relative;width:100%;height:var(--dss-height);overflow:hidden;background:#000;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;user-select:none}
.dss-slider *{box-sizing:border-box}
.dss-track{position:relative;width:100%;height:100%}
.dss-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;visibility:hidden;z-index:1;display:flex;align-items:center}
.dss-slide.active{opacity:1;visibility:visible;z-index:2}
.dss-slide.transitioning-out{z-index:3}
.dss-slide.transitioning-in{z-index:4}
.dss-slide-bg{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}
.dss-slide-img{width:100%;height:100%;object-fit:cover;object-position:center;will-change:transform}
.dss-ken-burns .dss-slide.active .dss-slide-img{animation:kenBurns var(--dss-autoplay-speed) ease-out forwards}
@keyframes kenBurns{0%{transform:scale(1)}100%{transform:scale(1.08) translate(-1%,-1%)}}
.dss-ken-burns .dss-slide:nth-child(even).active .dss-slide-img{animation:kenBurns2 var(--dss-autoplay-speed) ease-out forwards}
@keyframes kenBurns2{0%{transform:scale(1.05) translate(-1%,1%)}100%{transform:scale(1)}}
.dss-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}
.dss-overlay-gradient .dss-overlay{background:linear-gradient(135deg,rgba(0,0,0,var(--dss-overlay-opacity)),rgba(0,0,0,calc(var(--dss-overlay-opacity)*.3)) 50%,rgba(0,0,0,var(--dss-overlay-opacity)))}
.dss-overlay-solid .dss-overlay{background:var(--dss-overlay-1);opacity:var(--dss-overlay-opacity)}
.dss-overlay-mesh .dss-overlay{background:radial-gradient(at 40% 20%,var(--dss-overlay-1) 0,transparent 50%),radial-gradient(at 80% 0%,var(--dss-accent) 0,transparent 50%),radial-gradient(at 0% 50%,var(--dss-overlay-2) 0,transparent 50%);opacity:var(--dss-overlay-opacity)}
.dss-content{position:relative;z-index:5;width:100%;height:100%;display:flex;align-items:center;padding:60px 80px}
.dss-content-inner{max-width:650px}
.dss-badge{display:inline-block;margin-bottom:16px}
.dss-badge span{display:inline-block;padding:6px 18px;background:var(--dss-badge-bg);color:#fff;font-size:12px;font-weight:800;letter-spacing:3px;text-transform:uppercase;border-radius:2px;position:relative;overflow:hidden}
.dss-badge span::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:badgeShimmer 2s infinite}
@keyframes badgeShimmer{0%{left:-100%}100%{left:100%}}
.dss-tagline{display:flex;align-items:center;gap:16px;margin-bottom:12px;opacity:0;transform:translateX(-30px)}
.dss-slide.active .dss-tagline{animation:slideInLeft .6s .2s ease-out forwards}
@keyframes slideInLeft{to{opacity:1;transform:translateX(0)}}
.tagline-text{font-size:13px;font-weight:600;letter-spacing:4px;text-transform:uppercase;color:var(--dss-accent);white-space:nowrap}
.tagline-line{flex:1;height:1px;background:var(--dss-accent);max-width:100px;transform-origin:left;transform:scaleX(0)}
.dss-slide.active .tagline-line{animation:lineExpand .8s .5s ease-out forwards}
@keyframes lineExpand{to{transform:scaleX(1)}}
.dss-title{font-size:var(--dss-title-size);font-weight:900;line-height:1.1;color:var(--dss-text-color);margin:0 0 16px;letter-spacing:-.02em;text-transform:uppercase}
.dss-title a{color:inherit;text-decoration:none;transition:opacity .3s}
.dss-title a:hover{opacity:.8}
.dss-description{margin-bottom:20px;opacity:0;transform:translateY(20px)}
.dss-slide.active .dss-description{animation:fadeInUp .7s .6s ease-out forwards}
@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}
.dss-description p{font-size:16px;line-height:1.6;color:var(--dss-text-color);opacity:.85;margin:0}
.dss-rating{display:flex;align-items:center;gap:8px;margin-bottom:16px;opacity:0;transform:translateY(15px)}
.dss-slide.active .dss-rating{animation:fadeInUp .6s .7s ease-out forwards}
.dss-stars .star{color:rgba(255,255,255,.3);font-size:18px}
.dss-stars .star.filled{color:#fbbf24}
.review-count{font-size:13px;color:var(--dss-text-color);opacity:.6}
.dss-price{font-size:var(--dss-price-size);font-weight:800;color:var(--dss-text-color);margin-bottom:24px;opacity:0;transform:translateY(20px)}
.dss-slide.active .dss-price{animation:fadeInUp .6s .8s ease-out forwards}
.dss-price del{opacity:.4;font-size:.65em;text-decoration:line-through;margin-right:8px}
.dss-price ins{text-decoration:none;color:var(--dss-accent)}
.dss-cta-wrap{opacity:0;transform:translateY(20px)}
.dss-slide.active .dss-cta-wrap{animation:fadeInUp .6s .9s ease-out forwards}
.dss-cta-btn{display:inline-flex;align-items:center;gap:12px;padding:16px 36px;background:var(--dss-cta-bg);color:var(--dss-cta-text);font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:2px;text-decoration:none;border:none;cursor:pointer;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1)}
.dss-cta-btn:hover{transform:translateY(-2px);box-shadow:0 10px 40px rgba(0,0,0,.3)}
.dss-cta-btn .cta-icon{transition:transform .3s}
.dss-cta-btn:hover .cta-icon{transform:translateX(4px)}
.dss-cta-pulse-glow .dss-cta-btn{animation:ctaPulse 2s infinite}
@keyframes ctaPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,68,68,.4)}50%{box-shadow:0 0 0 15px rgba(255,68,68,0)}}
.dss-cta-shimmer .dss-cta-btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:ctaShimmer 3s infinite}
@keyframes ctaShimmer{0%{left:-100%}50%,100%{left:100%}}
.spin{animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.dss-text-anim-typewriter .dss-slide.active .dss-title{overflow:hidden;border-right:3px solid var(--dss-accent);white-space:nowrap;width:0;animation:typewriter 1.2s .3s steps(30) forwards,blinkCursor .6s step-end infinite alternate}
@keyframes typewriter{to{width:100%}}
@keyframes blinkCursor{50%{border-color:transparent}}
.dss-text-anim-split-reveal .dss-slide.active .dss-title{animation:splitReveal .8s .3s cubic-bezier(.77,0,.175,1) forwards;clip-path:polygon(0 100%,100% 100%,100% 100%,0 100%);transform:translateY(40px)}
@keyframes splitReveal{to{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transform:translateY(0)}}
.dss-text-anim-slide-up .dss-slide.active .dss-title{animation:textSlideUp .7s .3s cubic-bezier(.16,1,.3,1) forwards;opacity:0;transform:translateY(100%)}
@keyframes textSlideUp{to{opacity:1;transform:translateY(0)}}
.dss-text-anim-fade-stagger .dss-slide.active .dss-title{animation:fadeStagger .8s .3s ease forwards;opacity:0}
@keyframes fadeStagger{0%{opacity:0;transform:translateY(30px) scale(.95);filter:blur(10px)}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
.dss-text-anim-glitch-text .dss-slide.active .dss-title{animation:glitchText .8s .3s steps(2) forwards;opacity:0}
@keyframes glitchText{0%{opacity:0;transform:translate(-5px,5px);text-shadow:3px 0 #f00,-3px 0 #0ff}20%{opacity:1;transform:translate(3px,-3px);text-shadow:-3px 0 #f00,3px 0 #0ff}40%{transform:translate(-2px,2px);text-shadow:2px 0 #f00,-2px 0 #0ff}100%{transform:translate(0);text-shadow:none;opacity:1}}
.dss-text-anim-neon-flicker .dss-slide.active .dss-title{animation:neonFlicker 1.5s .2s ease forwards;opacity:0}
@keyframes neonFlicker{0%,19%,21%,23%,25%,54%,56%{opacity:0;text-shadow:none}20%,24%,55%{opacity:.5;text-shadow:0 0 10px var(--dss-accent),0 0 20px var(--dss-accent)}100%{opacity:1;text-shadow:0 0 10px var(--dss-accent),0 0 40px var(--dss-accent),0 0 80px var(--dss-accent)}}
.dss-text-anim-cinematic-title .dss-slide.active .dss-title{animation:cinematicTitle 1.2s .2s cubic-bezier(.16,1,.3,1) forwards;opacity:0}
@keyframes cinematicTitle{0%{opacity:0;transform:scale(1.3);filter:blur(20px);letter-spacing:.3em}60%{filter:blur(0)}100%{opacity:1;transform:scale(1);letter-spacing:-.02em}}
.dss-text-anim-wave .dss-title .char{display:inline-block;opacity:0;transform:translateY(40px)}
.dss-text-anim-wave .dss-slide.active .dss-title .char{animation:waveChar .5s ease-out forwards}
@keyframes waveChar{to{opacity:1;transform:translateY(0)}}
.dss-text-anim-letter-cascade .dss-title .char{display:inline-block;opacity:0;transform:translateY(-60px) rotateX(90deg)}
.dss-text-anim-letter-cascade .dss-slide.active .dss-title .char{animation:cascadeChar .4s ease-out forwards}
@keyframes cascadeChar{to{opacity:1;transform:translateY(0) rotateX(0)}}
.dss-transition-cinematic-zoom .dss-slide.transitioning-out{animation:cZoomOut var(--dss-transition-speed) ease-in-out forwards}
.dss-transition-cinematic-zoom .dss-slide.transitioning-in{animation:cZoomIn var(--dss-transition-speed) ease-in-out forwards}
@keyframes cZoomOut{to{opacity:0;transform:scale(1.15);filter:blur(8px)}}
@keyframes cZoomIn{from{opacity:0;transform:scale(.9);filter:blur(8px)}to{opacity:1;transform:scale(1);filter:blur(0)}}
.dss-transition-cinematic-pan .dss-slide.transitioning-out{animation:panOut var(--dss-transition-speed) ease-in-out forwards}
.dss-transition-cinematic-pan .dss-slide.transitioning-in{animation:panIn var(--dss-transition-speed) ease-in-out forwards}
@keyframes panOut{to{opacity:0;transform:translateX(-8%) scale(.95)}}
@keyframes panIn{from{opacity:0;transform:translateX(8%) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}
.dss-transition-cinematic-reveal .dss-slide.transitioning-out{animation:revealOut var(--dss-transition-speed) ease-in-out forwards}
.dss-transition-cinematic-reveal .dss-slide.transitioning-in{animation:revealIn var(--dss-transition-speed) ease-in-out forwards}
@keyframes revealOut{to{clip-path:polygon(0 0,0 0,0 100%,0 100%);opacity:0}}
@keyframes revealIn{from{clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%);opacity:0}to{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);opacity:1}}
.dss-transition-glitch-transition .dss-slide.transitioning-out{animation:glitchOut var(--dss-transition-speed) steps(4) forwards}
.dss-transition-glitch-transition .dss-slide.transitioning-in{animation:glitchIn var(--dss-transition-speed) steps(4) forwards}
@keyframes glitchOut{0%{opacity:1}25%{transform:translate(10px,-5px);filter:hue-rotate(90deg)}50%{transform:translate(-10px,5px)}100%{opacity:0;transform:translate(0)}}
@keyframes glitchIn{0%{opacity:0}25%{transform:translate(-10px,5px);filter:hue-rotate(90deg);opacity:.5}100%{opacity:1;transform:translate(0)}}
.dss-transition-digital-wipe .dss-slide.transitioning-out{animation:digiWipeOut var(--dss-transition-speed) ease-in-out forwards}
.dss-transition-digital-wipe .dss-slide.transitioning-in{animation:digiWipeIn var(--dss-transition-speed) ease-in-out forwards}
@keyframes digiWipeOut{to{clip-path:inset(0 100% 0 0);opacity:0}}
@keyframes digiWipeIn{from{clip-path:inset(0 0 0 100%);opacity:0}to{clip-path:inset(0);opacity:1}}
.dss-transition-fade .dss-slide.transitioning-out{animation:fadeOut var(--dss-transition-speed) ease forwards}
.dss-transition-fade .dss-slide.transitioning-in{animation:fadeIn var(--dss-transition-speed) ease forwards}
@keyframes fadeOut{to{opacity:0}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.dss-transition-slide .dss-slide.transitioning-out{animation:slideOut var(--dss-transition-speed) ease-in-out forwards}
.dss-transition-slide .dss-slide.transitioning-in{animation:slideIn var(--dss-transition-speed) ease-in-out forwards}
@keyframes slideOut{to{transform:translateX(-100%)}}
@keyframes slideIn{from{transform:translateX(100%)}to{transform:translateX(0)}}
.dss-transition-flip .dss-slide.transitioning-out{animation:flipOut var(--dss-transition-speed) ease-in-out forwards;transform-style:preserve-3d}
.dss-transition-flip .dss-slide.transitioning-in{animation:flipIn var(--dss-transition-speed) ease-in-out forwards;transform-style:preserve-3d}
@keyframes flipOut{to{transform:perspective(1200px) rotateY(-90deg);opacity:0}}
@keyframes flipIn{from{transform:perspective(1200px) rotateY(90deg);opacity:0}to{transform:perspective(1200px) rotateY(0);opacity:1}}
.dss-transition-cube .dss-slide.transitioning-out{animation:cubeOut var(--dss-transition-speed) ease-in-out forwards}
.dss-transition-cube .dss-slide.transitioning-in{animation:cubeIn var(--dss-transition-speed) ease-in-out forwards}
@keyframes cubeOut{to{transform:perspective(1200px) translateZ(-200px) rotateY(-90deg);opacity:0}}
@keyframes cubeIn{from{transform:perspective(1200px) translateZ(-200px) rotateY(90deg);opacity:0}to{transform:perspective(1200px) translateZ(0) rotateY(0);opacity:1}}
.dss-transition-pixel-dissolve .dss-slide.transitioning-out{animation:pixelOut var(--dss-transition-speed) steps(8) forwards}
.dss-transition-pixel-dissolve .dss-slide.transitioning-in{animation:pixelIn var(--dss-transition-speed) steps(8) forwards}
@keyframes pixelOut{50%{filter:blur(4px) brightness(1.5)}100%{filter:blur(20px);opacity:0}}
@keyframes pixelIn{0%{filter:blur(20px);opacity:0}50%{filter:blur(4px) brightness(1.5);opacity:.5}100%{filter:blur(0);opacity:1}}
.dss-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);color:#fff;width:54px;height:54px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;border-radius:0}
.dss-prev{left:24px}
.dss-next{right:24px}
.dss-nav:hover{background:rgba(255,255,255,.2);transform:translateY(-50%) scale(1.1)}
.dss-nav-rounded .dss-nav{border-radius:50%}
.dss-nav-outline .dss-nav{background:transparent;border:2px solid rgba(255,255,255,.5)}
.dss-nav-outline .dss-nav:hover{background:rgba(255,255,255,.1);border-color:#fff}
.dss-nav-neon .dss-nav{background:transparent;border:1px solid var(--dss-accent);box-shadow:0 0 10px var(--dss-accent),inset 0 0 10px rgba(255,68,68,.1)}
.dss-nav-neon .dss-nav:hover{box-shadow:0 0 20px var(--dss-accent),inset 0 0 20px rgba(255,68,68,.2)}
.dss-dots{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:10}
.dss-dot{width:12px;height:3px;background:rgba(255,255,255,.3);border:none;cursor:pointer;transition:all .4s;padding:0;border-radius:0}
.dss-dot.active{width:36px;background:var(--dss-accent)}
.dss-dot:hover{background:rgba(255,255,255,.6)}
.dss-progress{position:absolute;bottom:0;left:0;width:100%;height:3px;background:rgba(255,255,255,.1);z-index:10;overflow:hidden}
.dss-progress-bar{height:100%;background:var(--dss-accent);width:0;transition:none}
.dss-progress-bar.animating{transition:width linear;width:100%}
.dss-counter{position:absolute;bottom:30px;right:40px;z-index:10;display:flex;align-items:baseline;gap:4px;font-family:'SF Mono',Monaco,Consolas,monospace}
.dss-counter .current{font-size:36px;font-weight:800;color:var(--dss-text-color);line-height:1}
.dss-counter .separator{font-size:18px;color:rgba(255,255,255,.3);margin:0 4px}
.dss-counter .total{font-size:18px;color:rgba(255,255,255,.4)}
.dss-scanline-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:6;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.06) 2px,rgba(0,0,0,.06) 4px)}
.dss-neon .dss-title{text-shadow:0 0 10px var(--dss-accent),0 0 20px var(--dss-accent),0 0 40px var(--dss-accent)}
.dss-neon .dss-cta-btn{box-shadow:0 0 10px var(--dss-accent),inset 0 0 10px rgba(255,255,255,.1)}
.dss-neon .dss-badge span{box-shadow:0 0 10px var(--dss-badge-bg)}
.dss-particle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:6;pointer-events:none}
.dss-theme-neon{background:#0a0a2e}
.dss-theme-neon .dss-overlay{background:linear-gradient(135deg,rgba(10,10,46,.9),rgba(30,0,60,.7))}
.dss-theme-neon .dss-title{text-shadow:0 0 20px var(--dss-accent),0 0 60px var(--dss-accent)}
.dss-theme-neon .dss-cta-btn{border:1px solid var(--dss-accent);box-shadow:0 0 20px rgba(255,68,68,.3),inset 0 0 20px rgba(255,68,68,.1)}
.dss-theme-minimal .dss-title{font-weight:300;letter-spacing:.05em;text-transform:none}
.dss-theme-minimal .dss-cta-btn{background:transparent;border:1px solid var(--dss-text-color);letter-spacing:3px;padding:14px 40px}
.dss-theme-minimal .dss-cta-btn:hover{background:var(--dss-text-color);color:#000}
.dss-theme-minimal .dss-badge span{background:transparent;border:1px solid var(--dss-accent);color:var(--dss-accent)}
.dss-theme-broadcast .dss-content{align-items:flex-end;padding-bottom:80px}
.dss-theme-broadcast .dss-content-inner{max-width:100%;background:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.6) 70%,transparent);padding:30px 40px;border-left:4px solid var(--dss-accent)}
.dss-theme-broadcast .dss-badge span{animation:bcastBlink 1s infinite}
@keyframes bcastBlink{0%,100%{opacity:1}50%{opacity:.5}}
.dss-theme-retro .dss-title{font-family:'Courier New',Courier,monospace;letter-spacing:.1em}
.dss-theme-retro .dss-overlay{background:linear-gradient(180deg,rgba(0,20,0,.8),rgba(0,10,0,.6))}
.dss-theme-glassmorphic .dss-content-inner{background:rgba(255,255,255,.08);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:40px}
.dss-theme-glassmorphic .dss-cta-btn{border-radius:8px;backdrop-filter:blur(10px)}
.dss-layout-split .dss-slide{display:grid;grid-template-columns:1fr 1fr}
.dss-layout-split .dss-content{padding:60px}
.dss-layout-split .dss-slide-bg{display:none}
.dss-layout-split .dss-product-showcase{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#111}
.dss-layout-split .dss-showcase-img{max-width:80%;max-height:80%;object-fit:contain;transition:transform .6s}
.dss-layout-split .dss-slide.active .dss-showcase-img{animation:showcaseIn .8s .2s ease-out forwards;opacity:0;transform:scale(.8)}
@keyframes showcaseIn{to{opacity:1;transform:scale(1)}}
.dss-layout-boxed{max-width:1200px;margin:0 auto;border-radius:12px}
@media(max-width:768px){
.dss-slider{height:var(--dss-height-mobile)}
.dss-content{padding:30px 24px}
.dss-title{font-size:calc(var(--dss-title-size)*.6)!important}
.dss-price{font-size:calc(var(--dss-price-size)*.7)!important}
.dss-description p{font-size:14px}
.dss-nav{width:40px;height:40px}
.dss-prev{left:10px}
.dss-next{right:10px}
.dss-counter .current{font-size:24px}
.dss-counter{right:20px;bottom:20px}
.dss-dots{bottom:20px}
.dss-cta-btn{padding:12px 24px;font-size:13px}
.dss-layout-split .dss-slide{grid-template-columns:1fr}
.dss-layout-split .dss-product-showcase{display:none}
.dss-layout-split .dss-slide-bg{display:block}
.dss-hide-mobile{display:none!important}
.dss-theme-broadcast .dss-content-inner{padding:20px}
.dss-theme-glassmorphic .dss-content-inner{padding:24px}
}
@media(max-width:480px){
.dss-title{font-size:calc(var(--dss-title-size)*.45)!important}
.dss-content{padding:20px 16px}
.dss-nav{width:36px;height:36px}
.dss-nav svg{width:18px;height:18px}
}
.dss-slider:focus-within .dss-nav:focus-visible,.dss-dot:focus-visible,.dss-cta-btn:focus-visible{outline:2px solid var(--dss-accent);outline-offset:4px}
@media(prefers-reduced-motion:reduce){.dss-slide,.dss-slide *{animation-duration:.01ms!important;transition-duration:.01ms!important}.dss-ken-burns .dss-slide-img{animation:none!important}}
.dss-toast{position:fixed;bottom:30px;right:30px;background:#1a1a2e;color:#fff;padding:16px 24px;border-radius:8px;border-left:4px solid var(--dss-accent,#ff4444);z-index:99999;transform:translateY(100px);opacity:0;transition:all .4s cubic-bezier(.16,1,.3,1);font-size:14px;font-weight:600;box-shadow:0 10px 40px rgba(0,0,0,.3)}
.dss-toast.visible{transform:translateY(0);opacity:1}

/* ===== POST META LINE ===== */
.dss-meta-line{margin-bottom:12px;opacity:0;transform:translateY(15px)}
.dss-slide.active .dss-meta-line{animation:fadeInUp .6s .55s ease-out forwards}
.dss-meta-line span{font-size:13px;color:var(--dss-text-color);opacity:.6;letter-spacing:1px}

/* ===== 3D CARD CAROUSEL ===== */
.dss-layout-card3d{perspective:1200px;height:var(--dss-height)}
.dss-layout-card3d .dss-track{position:relative;width:100%;height:100%;transform-style:preserve-3d;display:flex;align-items:center;justify-content:center}
.dss-layout-card3d .dss-slide{position:absolute;width:60%;max-width:700px;height:80%;border-radius:16px;overflow:hidden;transition:all .8s cubic-bezier(.4,0,.2,1);box-shadow:0 20px 60px rgba(0,0,0,.4);opacity:0;transform:scale(.7) rotateY(45deg) translateZ(-200px);pointer-events:none;visibility:hidden}
.dss-layout-card3d .dss-slide.active{opacity:1;transform:scale(1) rotateY(0) translateZ(0);pointer-events:auto;z-index:3;visibility:visible}
.dss-layout-card3d .dss-slide.card-prev{opacity:.6;transform:scale(.8) rotateY(25deg) translateX(-80%) translateZ(-150px);pointer-events:none;z-index:2;visibility:visible}
.dss-layout-card3d .dss-slide.card-next{opacity:.6;transform:scale(.8) rotateY(-25deg) translateX(80%) translateZ(-150px);pointer-events:none;z-index:2;visibility:visible}
.dss-layout-card3d .dss-slide.card-far{opacity:0;transform:scale(.6) rotateY(45deg) translateZ(-300px)}
.dss-layout-card3d .dss-content{padding:30px 40px}
.dss-layout-card3d .dss-title{font-size:calc(var(--dss-title-size)*.7)}
.dss-layout-card3d .dss-price{font-size:calc(var(--dss-price-size)*.8)}
@media(max-width:768px){
.dss-layout-card3d .dss-slide{width:85%;height:75%}
.dss-layout-card3d .dss-slide.card-prev{transform:scale(.75) translateX(-50%) translateZ(-100px);opacity:.4}
.dss-layout-card3d .dss-slide.card-next{transform:scale(.75) translateX(50%) translateZ(-100px);opacity:.4}
}

/* ===== HORIZONTAL TICKER ===== */
.dss-layout-ticker{height:auto;min-height:auto;overflow:hidden}
.dss-layout-ticker .dss-track{display:flex;width:max-content;animation:tickerScroll var(--dss-ticker-duration,30s) linear infinite}
.dss-layout-ticker .dss-track:hover{animation-play-state:paused}
.dss-layout-ticker .dss-slide{position:relative;flex:0 0 auto;width:350px;height:var(--dss-height,400px);opacity:1;visibility:visible;border-radius:12px;overflow:hidden;margin:0 12px}
.dss-layout-ticker .dss-slide .dss-tagline,.dss-layout-ticker .dss-slide .dss-description,.dss-layout-ticker .dss-slide .dss-rating,.dss-layout-ticker .dss-slide .dss-price,.dss-layout-ticker .dss-slide .dss-cta-wrap,.dss-layout-ticker .dss-slide .dss-meta-line{opacity:1;transform:none;animation:none}
.dss-layout-ticker .dss-content{padding:24px;align-items:flex-end}
.dss-layout-ticker .dss-title{font-size:20px}
.dss-layout-ticker .dss-price{font-size:22px;margin-bottom:12px}
.dss-layout-ticker .dss-cta-btn{padding:10px 20px;font-size:12px}
.dss-layout-ticker .dss-overlay{background:linear-gradient(to top,rgba(0,0,0,.8) 0%,transparent 60%)}
@keyframes tickerScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.dss-layout-ticker[data-ticker-dir="right"] .dss-track{animation-direction:reverse}
@media(max-width:768px){
.dss-layout-ticker .dss-slide{width:280px;height:320px}
}

/* ===== MASONRY / ANIMATED GRID ===== */
.dss-layout-masonry{height:auto;min-height:auto;overflow:visible}
.dss-layout-masonry .dss-track{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;padding:16px}
.dss-layout-masonry .dss-slide{position:relative;opacity:1;visibility:visible;height:380px;border-radius:12px;overflow:hidden;transition:transform .4s ease,box-shadow .4s ease}
.dss-layout-masonry .dss-slide:hover{transform:translateY(-6px);box-shadow:0 12px 40px rgba(0,0,0,.3);z-index:2}
.dss-layout-masonry .dss-slide:nth-child(3n+1){height:420px}
.dss-layout-masonry .dss-slide:nth-child(3n+2){height:350px}
.dss-layout-masonry .dss-slide .dss-tagline,.dss-layout-masonry .dss-slide .dss-description,.dss-layout-masonry .dss-slide .dss-rating,.dss-layout-masonry .dss-slide .dss-price,.dss-layout-masonry .dss-slide .dss-cta-wrap,.dss-layout-masonry .dss-slide .dss-meta-line{opacity:1;transform:none;animation:none}
.dss-layout-masonry .dss-content{padding:24px;align-items:flex-end}
.dss-layout-masonry .dss-overlay{background:linear-gradient(to top,rgba(0,0,0,.85) 0%,transparent 50%)}
.dss-layout-masonry .dss-title{font-size:20px}
.dss-layout-masonry .dss-price{font-size:22px;margin-bottom:12px}
.dss-layout-masonry .dss-cta-btn{padding:10px 20px;font-size:12px}
/* Masonry staggered entry */
.dss-layout-masonry .dss-slide{opacity:0;transform:translateY(30px)}
.dss-layout-masonry.dss-masonry-loaded .dss-slide{animation:masonryIn .6s ease-out forwards}
@keyframes masonryIn{to{opacity:1;transform:translateY(0)}}
@media(max-width:768px){
.dss-layout-masonry .dss-track{grid-template-columns:1fr 1fr;gap:10px;padding:10px}
.dss-layout-masonry .dss-slide,.dss-layout-masonry .dss-slide:nth-child(3n+1),.dss-layout-masonry .dss-slide:nth-child(3n+2){height:260px}
}
@media(max-width:480px){
.dss-layout-masonry .dss-track{grid-template-columns:1fr}
}

/* ===== VERTICAL SLIDE ===== */
.dss-layout-vertical{overflow:hidden}
.dss-layout-vertical .dss-slide{transition:transform var(--dss-transition-speed) cubic-bezier(.4,0,.2,1),opacity var(--dss-transition-speed) ease}
.dss-layout-vertical .dss-slide.transitioning-out{transform:translateY(-100%);opacity:0}
.dss-layout-vertical .dss-slide.transitioning-in{animation:none;transform:translateY(100%);opacity:0}
.dss-layout-vertical .dss-slide.transitioning-in.active{transform:translateY(0);opacity:1}
.dss-layout-vertical .dss-slide.active{transform:translateY(0);opacity:1}
/* Vertical nav indicators */
.dss-layout-vertical .dss-dots{flex-direction:column;right:20px;left:auto;top:50%;bottom:auto;transform:translateY(-50%)}
.dss-layout-vertical .dss-dot{width:3px;height:12px}
.dss-layout-vertical .dss-dot.active{height:36px}
.dss-layout-vertical .dss-nav{left:50%;transform:translateX(-50%)}
.dss-layout-vertical .dss-prev{top:20px;left:50%}
.dss-layout-vertical .dss-next{bottom:20px;top:auto;left:50%}
.dss-layout-vertical .dss-prev svg,.dss-layout-vertical .dss-next svg{transform:rotate(90deg)}

/* ===== TYPOGRAPHY — GOOGLE FONTS ===== */
.dss-title,.dss-title a{font-family:var(--dss-font-title,inherit);font-weight:var(--dss-font-title-weight,800);line-height:var(--dss-font-title-lh,1.1);letter-spacing:var(--dss-font-title-ls,0)}
.dss-tagline,.dss-tagline .tagline-text{font-family:var(--dss-font-title,inherit);font-weight:var(--dss-font-title-weight,800);letter-spacing:var(--dss-font-title-ls,3px)}
.dss-description,.dss-description p,.dss-meta-line,.dss-meta-line span{font-family:var(--dss-font-desc,inherit);font-weight:var(--dss-font-desc-weight,400);line-height:var(--dss-font-desc-lh,1.5);letter-spacing:var(--dss-font-desc-ls,0)}
.dss-price{font-family:var(--dss-font-title,inherit);font-weight:var(--dss-font-title-weight,800)}
.dss-cta-btn,.dss-cta-btn .cta-text{font-family:var(--dss-font-cta,inherit);font-weight:var(--dss-font-cta-weight,700);line-height:var(--dss-font-cta-lh,1);letter-spacing:var(--dss-font-cta-ls,1px)}
.dss-badge span{font-family:var(--dss-font-cta,inherit);font-weight:var(--dss-font-cta-weight,700)}

/* ===== RTL — FULL LAYOUT MIRRORING ===== */
.dss-rtl{direction:rtl;text-align:right}
.dss-rtl .dss-content-inner{text-align:right;align-items:flex-end}

/* RTL: Arrows flip */
.dss-rtl .dss-prev{right:auto;left:20px}
.dss-rtl .dss-next{left:auto;right:20px}
.dss-rtl .dss-prev svg{transform:rotate(180deg)}
.dss-rtl .dss-next svg{transform:rotate(180deg)}

/* RTL: Progress bar direction */
.dss-rtl .dss-progress-bar{transform-origin:right center;direction:rtl}

/* RTL: Dots order */
.dss-rtl .dss-dots{direction:rtl;flex-direction:row-reverse}

/* RTL: Counter position */
.dss-rtl .dss-counter{left:30px;right:auto}

/* RTL: Badge position */
.dss-rtl .dss-badge{right:auto;left:20px}

/* RTL: Tagline line */
.dss-rtl .dss-tagline .tagline-line{margin-left:0;margin-right:12px}

/* RTL: Split layout mirrored (text right, image left) */
.dss-rtl.dss-layout-split .dss-slide{flex-direction:row-reverse}
.dss-rtl.dss-layout-split .dss-content{order:1}
.dss-rtl.dss-layout-split .dss-product-showcase{order:0}

/* RTL: Slide transition reverse */
.dss-rtl .dss-slide.slide-in-next{animation-direction:reverse}
.dss-rtl .dss-slide.slide-out-prev{animation-direction:reverse}

/* RTL: CTA arrow icon flip */
.dss-rtl .dss-cta-btn .cta-icon svg{transform:rotate(180deg)}

/* RTL: Ticker scroll reverse */
.dss-rtl.dss-layout-ticker .dss-track{animation-direction:reverse}

/* RTL: Masonry grid text */
.dss-rtl.dss-layout-masonry .dss-content{text-align:right}
.dss-rtl.dss-layout-masonry .dss-content-inner{align-items:flex-end}

/* RTL: 3D Card mirrored */
.dss-rtl.dss-layout-card3d .dss-slide.card-prev{transform:scale(.8) rotateY(-25deg) translateX(80%) translateZ(-150px)}
.dss-rtl.dss-layout-card3d .dss-slide.card-next{transform:scale(.8) rotateY(25deg) translateX(-80%) translateZ(-150px)}

/* RTL: Vertical layout dots */
.dss-rtl.dss-layout-vertical .dss-dots{right:auto;left:20px}

/* RTL: Broadcast theme ticker bar */
.dss-rtl.dss-theme-broadcast .dss-content-inner{border-left:none;border-right:4px solid var(--dss-accent)}

/* RTL: Typewriter animation cursor on left */
.dss-rtl .dss-text-anim-typewriter .dss-title{border-right:none;border-left:3px solid var(--dss-accent)}

/* ========================================
   v1.1.0 — VIDEO BACKGROUND
======================================== */

/* Content Alignment */
.dss-align-center .dss-content{justify-content:center}
.dss-align-center .dss-content-inner{text-align:center;align-items:center;display:flex;flex-direction:column}
.dss-align-center .dss-tagline{justify-content:center}
.dss-align-center .dss-rating{justify-content:center}
.dss-align-center .dss-social-proof{justify-content:center}

.dss-align-right .dss-content{justify-content:flex-end}
.dss-align-right .dss-content-inner{text-align:right;align-items:flex-end;display:flex;flex-direction:column}
.dss-align-right .dss-tagline{justify-content:flex-end}
.dss-align-right .dss-rating{justify-content:flex-end}
.dss-align-right .dss-social-proof{justify-content:flex-end}

/* RTL alignment mirrors */
.dss-rtl.dss-align-right .dss-content{justify-content:flex-start}
.dss-rtl.dss-align-right .dss-content-inner{text-align:left;align-items:flex-start}
.dss-video-bg{position:absolute;top:50%;left:50%;width:100%;height:100%;object-fit:cover;transform:translate(-50%,-50%);z-index:0;pointer-events:none}
iframe.dss-video-bg{width:300%;height:300%;min-width:100%;min-height:100%}
.dss-video-fallback{display:none}
.dss-slide:not(.active) .dss-video-bg{display:none}

/* ========================================
   v1.1.0 — COUNTDOWN TIMER
======================================== */
.dss-countdown{position:absolute;bottom:80px;right:30px;z-index:10;display:flex;align-items:center;gap:14px;padding:12px 22px;background:rgba(0,0,0,.7);backdrop-filter:blur(10px);border-radius:12px;border:1px solid rgba(255,255,255,.15)}
.dss-cd-label{font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--dss-accent);white-space:nowrap}
.dss-cd-units{display:flex;align-items:center;gap:4px}
.dss-cd-unit{display:flex;flex-direction:column;align-items:center;min-width:44px}
.dss-cd-num{font-size:22px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums;line-height:1}
.dss-cd-txt{font-size:9px;text-transform:uppercase;letter-spacing:2px;color:rgba(255,255,255,.5);margin-top:2px}
.dss-cd-sep{font-size:18px;font-weight:700;color:rgba(255,255,255,.3);margin:0 2px;align-self:flex-start;margin-top:2px}
.dss-countdown.dss-cd-expired .dss-cd-num{color:var(--dss-accent)}

/* Countdown RTL */
.dss-rtl .dss-countdown{right:auto;left:30px}

/* ========================================
   v1.1.0 — SOCIAL PROOF BADGES
======================================== */
.dss-social-proof{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;opacity:0;transform:translateY(15px)}
.dss-slide.active .dss-social-proof{animation:fadeInUp .6s 1s ease-out forwards}
.dss-sp-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:rgba(255,255,255,.12);backdrop-filter:blur(8px);border-radius:20px;font-size:12px;font-weight:600;color:#fff;border:1px solid rgba(255,255,255,.15)}
.dss-sp-sold{border-color:rgba(251,191,36,.3)}
.dss-sp-reviews{border-color:rgba(251,191,36,.3)}

/* ========================================
   v1.1.0 — HOTSPOTS
======================================== */
.dss-hotspot{position:absolute;z-index:8;text-decoration:none;cursor:pointer;transform:translate(-50%,-50%)}
.dss-hotspot-dot{display:block;width:28px;height:28px;background:var(--dss-accent);border-radius:50%;border:3px solid rgba(255,255,255,.8);box-shadow:0 0 0 0 rgba(255,68,68,.5);animation:hotspotPulse 2s infinite;transition:transform .3s}
.dss-hotspot:hover .dss-hotspot-dot{transform:scale(1.3);box-shadow:0 0 20px rgba(255,68,68,.5)}
@keyframes hotspotPulse{0%{box-shadow:0 0 0 0 rgba(255,68,68,.5)}70%{box-shadow:0 0 0 12px rgba(255,68,68,0)}100%{box-shadow:0 0 0 0 rgba(255,68,68,0)}}
.dss-hotspot-tooltip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);background:rgba(0,0,0,.85);color:#fff;font-size:12px;font-weight:600;padding:6px 14px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s}
.dss-hotspot-tooltip::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:rgba(0,0,0,.85)}
.dss-hotspot:hover .dss-hotspot-tooltip{opacity:1}

/* ========================================
   v1.1.0 — CUSTOM HTML SLIDES
======================================== */
.dss-custom-html{margin-top:16px;color:var(--dss-text-color);opacity:0;transform:translateY(15px)}
.dss-slide.active .dss-custom-html{animation:fadeInUp .6s 1.1s ease-out forwards}
.dss-custom-html a{color:var(--dss-accent);text-decoration:underline}
.dss-custom-html img{max-width:100%;height:auto;border-radius:8px}

/* ========================================
   v1.1.0 — ACCESSIBILITY
======================================== */
/* Focus visible styles */
.dss-slider :focus-visible{outline:2px solid var(--dss-accent);outline-offset:3px;border-radius:4px}
.dss-cta-btn:focus-visible{outline:2px solid #fff;outline-offset:3px}
.dss-nav:focus-visible{outline:2px solid var(--dss-accent);outline-offset:2px}
.dss-dot:focus-visible{outline:2px solid var(--dss-accent);outline-offset:3px}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
    .dss-respect-motion .dss-slide-img,.dss-respect-motion .dss-content *,.dss-respect-motion .dss-hotspot-dot{animation:none !important;transition:none !important}
    .dss-respect-motion .dss-slide.active .dss-tagline,.dss-respect-motion .dss-slide.active .dss-description,.dss-respect-motion .dss-slide.active .dss-price,.dss-respect-motion .dss-slide.active .dss-cta-wrap,.dss-respect-motion .dss-slide.active .dss-rating,.dss-respect-motion .dss-slide.active .dss-social-proof,.dss-respect-motion .dss-slide.active .dss-custom-html{opacity:1;transform:none}
    .dss-respect-motion .dss-ken-burns .dss-slide-img{animation:none !important}
    .dss-respect-motion .dss-progress-bar{transition:none !important}
}

/* Skip link for keyboard users */
.dss-skip-link{position:absolute;top:-40px;left:0;z-index:100;padding:8px 16px;background:var(--dss-accent);color:#fff;font-size:14px;font-weight:700;text-decoration:none;border-radius:0 0 8px 0;transition:top .2s}
.dss-skip-link:focus{top:0}

/* Screen reader only */
.dss-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ========================================
   v1.1.0 — RESPONSIVE COUNTDOWN
======================================== */
@media(max-width:768px){
    .dss-countdown{bottom:auto;top:12px;right:12px;padding:8px 14px;gap:8px}
    .dss-cd-num{font-size:16px}
    .dss-cd-unit{min-width:32px}
    .dss-cd-label{display:none}
    .dss-hotspot-dot{width:22px;height:22px}
    .dss-hotspot-tooltip{font-size:10px;padding:4px 10px}
    .dss-social-proof{gap:6px}
    .dss-sp-badge{font-size:10px;padding:4px 10px}
    .dss-rtl .dss-countdown{left:12px}
}
