/* Stuck pixel fixer */
.pf-stage { background: #000; }
.pf-box { position: absolute; z-index: 3; left: 40%; top: 40%; width: 120px; height: 120px; outline: 2px dashed rgba(255, 255, 255, .8);
  outline-offset: 2px; cursor: move; touch-action: none; }
.pf-box:focus-visible { outline: 3px solid var(--focus); }
.pf-stage.pf-run.st-idle .pf-box, .pf-stage.pf-hidebox .pf-box { outline-color: transparent; }
.pf-stage.pf-hidebox .pf-box { display: none; }
.pf-grip { position: absolute; right: -12px; bottom: -12px; width: 24px; height: 24px; border-radius: 50%; background: #fff; border: 2px solid #000; cursor: nwse-resize; }
.pf-stage.pf-run.st-idle .pf-grip { opacity: 0; }
.pf-msg { position: absolute; left: 50%; bottom: 16px; transform: translateX(-50%); margin: 0; max-width: calc(100% - 32px); z-index: 2; color: #cfd3dc;
  font-size: .92rem; text-align: center; pointer-events: none; }
.pf-stage.pf-run .pf-msg { display: none; }
.pf-hud { position: absolute; left: max(12px, env(safe-area-inset-left)); top: max(12px, env(safe-area-inset-top)); z-index: 5; padding: 6px 12px; border-radius: 999px;
  background: rgba(20, 22, 28, .8); color: #fff; font: 600 .85rem/1.3 system-ui, sans-serif; font-variant-numeric: tabular-nums; display: none; }
.pf-stage.pf-run .pf-hud { display: block; }
.pf-stage.pf-run.st-idle .pf-hud { opacity: 0; }
.pf-x { position: absolute; z-index: 6; right: max(12px, env(safe-area-inset-right)); top: max(12px, env(safe-area-inset-top)); display: none;
  align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 999px; border: 0; padding: 0;
  background: rgba(20, 22, 28, .72); color: #fff; cursor: pointer; }
.pf-x svg { width: 24px; height: 24px; }
.pf-stage.is-full .pf-x { display: flex; }
.pf-stage.is-full.st-idle .pf-x { opacity: 0; }
.pf-stage.is-full .fs-btn { display: none; }
