
.ffp { position: relative; overflow: hidden; background: var(--b-warm); }
.ffp-win { position: absolute; left: 7%; top: 9%; right: 7%; bottom: -2%; overflow: hidden; background: #fff; border-radius: calc(var(--r, 12px) * .6) calc(var(--r, 12px) * .6) 0 0;
  border: 1px solid var(--b-line); border-bottom: 0; }
.ffp-win img { position: absolute; left: 0; top: 0; width: 190%; max-width: none; height: auto; opacity: 0; }
.ffp-win img.wide { width: 130%; }
.ffp-win img.on { opacity: 1; }
.ffp-cursor { position: absolute; left: 62%; top: 74%; width: 18px; height: 22px; margin: -2px 0 0 -2px; z-index: 2; pointer-events: none; transform-origin: 2px 2px;
  background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 22'%3E%3Cpath d='M2 2l13 10.5-6 .7 3.6 6.6-2.6 1.4-3.6-6.7L2 19z' fill='%232E3135' stroke='%23fff' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.ffp-ring { position: absolute; width: 46px; height: 46px; border-radius: 50%; border: 2px solid var(--b-ink-60); pointer-events: none; z-index: 1; }
