
.dfvw{position:fixed;z-index:999999;right:var(--dfvw-right);bottom:var(--dfvw-bottom);width:var(--dfvw-w);height:var(--dfvw-h);opacity:0;visibility:hidden;transform:translateY(15px) scale(.97);transition:opacity .28s ease,transform .28s ease,visibility .28s;pointer-events:none}
.dfvw.dfvw-visible{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.dfvw-box{position:relative;width:100%;height:100%;overflow:hidden;border-radius:var(--dfvw-radius);background:#111;box-shadow:0 8px 30px rgba(0,0,0,.28)}
.dfvw-open{border:0;padding:0;margin:0;width:100%;height:100%;background:#111;cursor:pointer;display:block;position:relative}
.dfvw-floating-video{display:block;width:100%;height:100%;object-fit:cover}
.dfvw-youtube-preview{width:100%;height:100%;position:relative;background:#111;overflow:hidden}
.dfvw-youtube-preview-inner{position:absolute;inset:0;background:linear-gradient(135deg,#111,#333)}
.dfvw-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;background:rgba(0,0,0,.58);color:#fff;display:grid;place-items:center;font-size:15px;padding-left:2px;pointer-events:none}
.dfvw-close{position:absolute;z-index:5;top:6px;right:6px;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.68);color:#fff;font-size:19px;line-height:22px;cursor:pointer}
.dfvw-viewer{position:fixed;inset:0;z-index:1000000;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.82)}
.dfvw-viewer.dfvw-viewer-open{display:flex}
.dfvw-viewer-backdrop{position:absolute;inset:0;backdrop-filter:blur(8px)}
.dfvw-feed{position:relative;z-index:2;width:min(430px,92vw);height:min(88vh,780px);overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:contain;border-radius:18px;scrollbar-width:none;background:#000}
.dfvw-feed::-webkit-scrollbar{display:none}
.dfvw-slide{width:100%;height:100%;scroll-snap-align:start;scroll-snap-stop:always;position:relative;background:#000}
.dfvw-full-video,.dfvw-youtube-player{width:100%;height:100%;display:block}
.dfvw-full-video{object-fit:cover}
.dfvw-viewer-close{position:absolute;z-index:5;top:20px;right:24px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:30px;line-height:38px;cursor:pointer}
.dfvw-sound{position:absolute;z-index:5;left:24px;bottom:24px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(0,0,0,.58);color:#fff;font-size:19px;cursor:pointer}
.dfvw-scroll-hint{position:absolute;z-index:5;bottom:20px;left:50%;transform:translateX(-50%);color:#fff;background:rgba(0,0,0,.48);padding:7px 12px;border-radius:20px;font:500 12px system-ui,sans-serif;pointer-events:none}
body.dfvw-lock{overflow:hidden}
@media (min-width:769px){.dfvw-no-desktop{display:none!important}}
@media (max-width:768px){
 .dfvw{right:var(--dfvw-mright);bottom:var(--dfvw-mbottom);width:var(--dfvw-mw);height:var(--dfvw-mh)}
 .dfvw-no-mobile{display:none!important}
 .dfvw-viewer{align-items:stretch}
 .dfvw-feed{width:100vw;height:100vh;border-radius:0}
 .dfvw-viewer-close{top:14px;right:14px}
 .dfvw-sound{left:14px;bottom:18px}
 .dfvw-scroll-hint{bottom:14px}
}
@media (prefers-reduced-motion:reduce){.dfvw{transition:none}}
