.df-viewer{--vw-ink: #0b0b0f;--vw-text-muted: #6b6963;--vw-text-subtle: #9a978f;--vw-paper: #f4f4f5;--vw-surface: #ffffff;--vw-hairline: #e8e6e1;--vw-hairline-strong: #d8d5ce;--vw-accent: var(--brand-accent, #4f46e5);--vw-accent-hover: color-mix(in srgb, var(--brand-accent, #4f46e5) 85%, #000);--vw-accent-soft: #eef2ff;--vw-accent-emerald: #10b981;--vw-accent-emerald-soft: #ecfdf5;--vw-error: #dc2626;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--vw-ink);font-size:16px;line-height:1.55;letter-spacing:-.005em}.df-viewer__stage{position:relative;display:block;width:100%;max-width:960px;margin-inline:auto;aspect-ratio:var(--viewer-aspect, 1280 / 800);background:var(--vw-paper);border:1px solid var(--vw-hairline);border-radius:14px;overflow:hidden}.df-viewer__zoom{position:relative;width:100%;aspect-ratio:var(--viewer-aspect, 1280 / 800);transform-origin:0 0;transition:transform .9s cubic-bezier(.4,0,.2,1);will-change:transform}.df-viewer__screenshot{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:fill;opacity:0;transition:opacity .22s ease}.df-viewer__screenshot--active{opacity:1}.df-viewer__hotspot{position:absolute;appearance:none;padding:0;background:transparent;border:0;border-radius:8px;cursor:pointer;animation:df-vw-glow 1.8s ease-in-out infinite;z-index:2;min-width:28px;min-height:28px}.df-viewer__hotspot:focus-visible{outline:2px solid var(--vw-accent);outline-offset:4px}@keyframes df-vw-glow{0%,to{box-shadow:0 0 color-mix(in srgb,var(--brand-accent, #4f46e5) 45%,transparent),0 0 18px color-mix(in srgb,var(--brand-accent, #4f46e5) 28%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--brand-accent, #4f46e5) 0%,transparent),0 0 28px 4px color-mix(in srgb,var(--brand-accent, #4f46e5) 45%,transparent)}}.df-viewer__cursor{position:absolute;pointer-events:none;z-index:3;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35));transition:left .9s cubic-bezier(.4,0,.2,1),top .9s cubic-bezier(.4,0,.2,1)}.df-viewer__cursor svg{display:block;transform:translate(-3px,-3px)}.df-viewer__tooltip{position:absolute;left:50%;bottom:24px;transform:translate(-50%);width:min(320px,calc(100% - 32px));background:var(--vw-surface);color:var(--vw-ink);border:1px solid var(--vw-hairline);padding:12px 14px;border-radius:10px;box-shadow:0 12px 32px #0b0b0f2e;font-size:14px;line-height:1.5;z-index:4}.df-viewer__controls{display:flex;align-items:center;gap:12px;margin-top:16px}.df-viewer__btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:10px 16px;border-radius:10px;border:1px solid var(--vw-hairline);background:var(--vw-surface);color:var(--vw-ink);font:inherit;font-size:16px;font-weight:500;letter-spacing:-.005em;cursor:pointer;transition:background-color .12s ease-out,border-color .12s ease-out,box-shadow .12s ease-out,transform .12s ease-out}.df-viewer__btn:hover:not([disabled]){background:var(--vw-paper);border-color:var(--vw-hairline-strong)}.df-viewer__btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-accent, #4f46e5) 25%,transparent)}.df-viewer__btn[disabled]{opacity:.5;cursor:not-allowed}.df-viewer__btn--primary{background:var(--vw-accent);color:#fff;border-color:var(--vw-accent);box-shadow:inset 0 1px #ffffff24,0 1px 2px color-mix(in srgb,var(--brand-accent, #4f46e5) 30%,transparent),0 4px 10px color-mix(in srgb,var(--brand-accent, #4f46e5) 18%,transparent)}.df-viewer__btn--primary:hover:not([disabled]){background:var(--vw-accent-hover);border-color:var(--vw-accent-hover);transform:translateY(-.5px)}.df-viewer__progress{font-size:14px;color:var(--vw-text-muted);font-variant-numeric:tabular-nums;letter-spacing:-.005em}.df-viewer__done{padding:32px 24px;text-align:center;background:var(--vw-accent-emerald-soft);border:1px solid rgba(16,185,129,.22);border-radius:14px;color:var(--vw-ink);font-size:16px;line-height:1.55}.df-viewer__badge{display:inline-flex;align-items:center;gap:6px;margin-top:16px;padding:5px 11px;background:var(--vw-surface);border:1px solid var(--vw-hairline);border-radius:9999px;font-size:12px;font-weight:500;color:var(--vw-text-muted)}.df-viewer__narration-row{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:13px;flex-wrap:wrap}.df-viewer__narration-label{color:var(--vw-text-muted);font-weight:500}.df-viewer__narration-toggle{appearance:none;padding:4px 10px;border-radius:6px;border:1px solid var(--vw-hairline);background:var(--vw-surface);color:var(--vw-ink);font:inherit;font-size:13px;cursor:pointer;transition:background-color .12s ease-out,border-color .12s ease-out}.df-viewer__narration-toggle:hover{background:var(--vw-paper);border-color:var(--vw-hairline-strong)}.df-viewer__narration-toggle:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-accent, #4f46e5) 25%,transparent)}.df-viewer__narration-status{color:var(--vw-text-subtle);font-style:italic}.df-viewer__narration-error{color:var(--vw-error, #dc2626)}@media (prefers-reduced-motion: reduce){.df-viewer__zoom,.df-viewer__cursor,.df-viewer__screenshot{transition:none!important}.df-viewer__hotspot{animation:none!important}}.df-clip-player{position:relative;display:flex;flex-direction:column;width:100%;height:100%;background:var(--vw-paper)}.df-clip-player__host{position:relative;flex:1;min-height:0;overflow:hidden;background:#fff}.df-clip-player__host iframe{display:block;border:0}.df-clip-player__host .replayer-wrapper{position:absolute;top:0;left:0;transform-origin:top left}.df-clip-player__fallback{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;background:var(--vw-paper);color:var(--vw-text-muted);font-size:14px}.df-clip-player__fallback img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;opacity:.45}.df-clip-player__fallback span{position:relative;border:1px solid var(--vw-hairline);border-radius:10px;background:#ffffffe6;padding:10px 12px;box-shadow:0 8px 24px #0b0b0f1f}.df-clip-player__toggle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;padding:0;border:0;border-radius:999px;background:#0b0b0f9e;color:#fff;cursor:pointer;transition:opacity .18s ease,background-color .18s ease,transform .18s ease;box-shadow:0 6px 20px #0b0b0f40}.df-clip-player__toggle:hover,.df-clip-player__toggle:focus-visible{background:#0b0b0fd1;outline:none}.df-clip-player__toggle--playing{opacity:0}.df-clip-player__toggle--playing:hover,.df-clip-player__toggle--playing:focus-visible{opacity:1}.df-clip-player__toggle:disabled{opacity:0;pointer-events:none}
