/* Stage 2 patch: neutralise legacy action-button blocks while keeping behaviour intact. */
#pqv3-app .pq-clean-feed-actions,
#pqv3-app .pq-poll-actions,
#pqv3-app .pq-feed-actions,
#pqv3-app .pq-story-actions,
#pqv3-app .pq-q-card-actions{
  gap:12px!important;
}
#pqv3-app .pq-clean-feed-actions button,
#pqv3-app .pq-clean-feed-actions a,
#pqv3-app .pq-poll-actions button,
#pqv3-app .pq-poll-actions a,
#pqv3-app .pq-feed-actions button,
#pqv3-app .pq-feed-actions a,
#pqv3-app .pq-story-actions button,
#pqv3-app .pq-story-actions a,
#pqv3-app .pq-q-card-actions button,
#pqv3-app .pq-q-card-actions a{
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:14px!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:var(--pq-ui-purple)!important;
  text-decoration:none!important;
  transform:none!important;
}
#pqv3-app .pq-clean-feed-actions button:hover,
#pqv3-app .pq-clean-feed-actions a:hover,
#pqv3-app .pq-poll-actions button:hover,
#pqv3-app .pq-poll-actions a:hover,
#pqv3-app .pq-feed-actions button:hover,
#pqv3-app .pq-feed-actions a:hover,
#pqv3-app .pq-story-actions button:hover,
#pqv3-app .pq-story-actions a:hover,
#pqv3-app .pq-q-card-actions button:hover,
#pqv3-app .pq-q-card-actions a:hover{
  background:var(--pq-ui-purple-soft)!important;
  color:var(--pq-ui-purple)!important;
  box-shadow:none!important;
  transform:none!important;
}
#pqv3-app .pq-clean-feed-actions svg,
#pqv3-app .pq-poll-actions svg,
#pqv3-app .pq-feed-actions svg,
#pqv3-app .pq-story-actions svg,
#pqv3-app .pq-q-card-actions svg{
  width:20px!important;
  height:20px!important;
  color:var(--pq-ui-purple)!important;
  fill:currentColor!important;
  stroke:currentColor!important;
}
#pqv3-app .pq-story-actions [style],
#pqv3-app .pq-clean-feed-actions [style],
#pqv3-app .pq-feed-actions [style],
#pqv3-app .pq-poll-actions [style]{
  background:transparent!important;
  background-image:none!important;
  color:var(--pq-ui-purple)!important;
  box-shadow:none!important;
}
#pqv3-app .pq-story-actions [style]:hover,
#pqv3-app .pq-clean-feed-actions [style]:hover,
#pqv3-app .pq-feed-actions [style]:hover,
#pqv3-app .pq-poll-actions [style]:hover{
  background:var(--pq-ui-purple-soft)!important;
}

/* Stage 3 focused icon cleanup: SVG only, no legacy emoji/pseudo icons. */
#pqv3-app .pq-story-actions .pq-story-vote-btn::before,
#pqv3-app .pq-story-actions .pq-story-vote-btn::after,
#pqv3-app .pq-story-actions .pq-story-discuss-btn::before,
#pqv3-app .pq-story-actions .pq-story-discuss-btn::after,
#pqv3-app .pq-story-actions .pq-story-source-btn::before,
#pqv3-app .pq-story-actions .pq-story-source-btn::after,
.pqv3-server-stories .pq-story-actions .pq-story-vote-btn::before,
.pqv3-server-stories .pq-story-actions .pq-story-vote-btn::after,
.pqv3-server-stories .pq-story-actions .pq-story-discuss-btn::before,
.pqv3-server-stories .pq-story-actions .pq-story-discuss-btn::after,
.pqv3-server-stories .pq-story-actions .pq-story-source-btn::before,
.pqv3-server-stories .pq-story-actions .pq-story-source-btn::after{
  content:none!important;
  display:none!important;
}
#pqv3-app .pq-story-actions .pq-story-vote-btn,
#pqv3-app .pq-story-actions .pq-story-vote-btn.is-selected,
#pqv3-app .pq-story-actions .pq-story-vote-btn.is-upvoted,
#pqv3-app .pq-story-actions .pq-story-vote-btn.is-downvoted,
#pqv3-app .pq-story-actions .pq-story-discuss-btn,
#pqv3-app .pq-story-actions .pq-story-source-btn,
.pqv3-server-stories .pq-story-actions .pq-story-vote-btn,
.pqv3-server-stories .pq-story-actions .pq-story-vote-btn.is-selected,
.pqv3-server-stories .pq-story-actions .pq-story-vote-btn.is-upvoted,
.pqv3-server-stories .pq-story-actions .pq-story-vote-btn.is-downvoted,
.pqv3-server-stories .pq-story-actions .pq-story-discuss-btn,
.pqv3-server-stories .pq-story-actions .pq-story-source-btn{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  color:var(--pq-ui-purple)!important;
}
#pqv3-app .pq-story-actions .pq-story-vote-btn:hover,
#pqv3-app .pq-story-actions .pq-story-vote-btn.is-selected:hover,
#pqv3-app .pq-story-actions .pq-story-discuss-btn:hover,
#pqv3-app .pq-story-actions .pq-story-source-btn:hover,
.pqv3-server-stories .pq-story-actions .pq-story-vote-btn:hover,
.pqv3-server-stories .pq-story-actions .pq-story-vote-btn.is-selected:hover,
.pqv3-server-stories .pq-story-actions .pq-story-discuss-btn:hover,
.pqv3-server-stories .pq-story-actions .pq-story-source-btn:hover{
  background:var(--pq-ui-purple-soft)!important;
  color:var(--pq-ui-purple)!important;
}
#pqv3-app .pq-story-actions .pq-clean-icon-btn > span,
.pqv3-server-stories .pq-story-actions .pq-clean-icon-btn > span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:22px!important;
  height:22px!important;
}

/* Stage 3.1: clear vote-direction colour cues while preserving the shared SVG action system. */
#pqv3-app .pq-story-actions .pq-story-upvote-btn,
#pqv3-app .pq-story-actions .pq-story-upvote-btn.is-selected,
#pqv3-app .pq-story-actions .pq-story-upvote-btn.is-upvoted,
.pqv3-server-stories .pq-story-actions .pq-story-upvote-btn,
.pqv3-server-stories .pq-story-actions .pq-story-upvote-btn.is-selected,
.pqv3-server-stories .pq-story-actions .pq-story-upvote-btn.is-upvoted{
  color:var(--pq-ui-upvote)!important;
}
#pqv3-app .pq-story-actions .pq-story-downvote-btn,
#pqv3-app .pq-story-actions .pq-story-downvote-btn.is-selected,
#pqv3-app .pq-story-actions .pq-story-downvote-btn.is-downvoted,
.pqv3-server-stories .pq-story-actions .pq-story-downvote-btn,
.pqv3-server-stories .pq-story-actions .pq-story-downvote-btn.is-selected,
.pqv3-server-stories .pq-story-actions .pq-story-downvote-btn.is-downvoted{
  color:var(--pq-ui-downvote)!important;
}
#pqv3-app .pq-story-actions .pq-story-upvote-btn:hover,
#pqv3-app .pq-story-actions .pq-story-upvote-btn.is-selected:hover,
.pqv3-server-stories .pq-story-actions .pq-story-upvote-btn:hover,
.pqv3-server-stories .pq-story-actions .pq-story-upvote-btn.is-selected:hover{
  background:var(--pq-ui-upvote-soft)!important;
  color:var(--pq-ui-upvote)!important;
}
#pqv3-app .pq-story-actions .pq-story-downvote-btn:hover,
#pqv3-app .pq-story-actions .pq-story-downvote-btn.is-selected:hover,
.pqv3-server-stories .pq-story-actions .pq-story-downvote-btn:hover,
.pqv3-server-stories .pq-story-actions .pq-story-downvote-btn.is-selected:hover{
  background:var(--pq-ui-downvote-soft)!important;
  color:var(--pq-ui-downvote)!important;
}
#pqv3-app .pq-story-actions .pq-story-discuss-btn,
#pqv3-app .pq-story-actions .pq-story-source-btn,
#pqv3-app .pq-poll-actions .pq-clean-icon-btn,
.pqv3-server-stories .pq-story-actions .pq-story-discuss-btn,
.pqv3-server-stories .pq-story-actions .pq-story-source-btn{
  color:var(--pq-ui-purple)!important;
}

/* Stage 3.2 engagement polish: persistent vote colours and subtle comment nudge. */
#pqv3-app .pq-story-actions .pq-story-upvote-btn svg,
#pqv3-app .pq-story-actions .pq-story-upvote-btn.is-selected svg,
#pqv3-app .pq-story-actions .pq-story-upvote-btn.is-upvoted svg,
.pqv3-server-stories .pq-story-actions .pq-story-upvote-btn svg,
.pqv3-server-stories .pq-story-actions .pq-story-upvote-btn.is-selected svg,
.pqv3-server-stories .pq-story-actions .pq-story-upvote-btn.is-upvoted svg,
#pqv3-app .pq-comment-upvote svg,
#pqv3-app .pq-comment-upvote.is-selected svg,
#pqv3-app .pq-comment-like-btn svg,
#pqv3-app .pq-comment-like-btn.is-selected svg{
  color:var(--pq-ui-upvote)!important;
  fill:currentColor!important;
  stroke:currentColor!important;
}
#pqv3-app .pq-story-actions .pq-story-downvote-btn svg,
#pqv3-app .pq-story-actions .pq-story-downvote-btn.is-selected svg,
#pqv3-app .pq-story-actions .pq-story-downvote-btn.is-downvoted svg,
.pqv3-server-stories .pq-story-actions .pq-story-downvote-btn svg,
.pqv3-server-stories .pq-story-actions .pq-story-downvote-btn.is-selected svg,
.pqv3-server-stories .pq-story-actions .pq-story-downvote-btn.is-downvoted svg,
#pqv3-app .pq-comment-downvote svg,
#pqv3-app .pq-comment-downvote.is-selected svg{
  color:var(--pq-ui-downvote)!important;
  fill:currentColor!important;
  stroke:currentColor!important;
}
#pqv3-app .pq-comment-vote-btn{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  border-radius:14px!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#pqv3-app .pq-comment-vote-btn svg{
  width:18px!important;
  height:18px!important;
  display:block!important;
}
#pqv3-app .pq-comment-upvote,
#pqv3-app .pq-comment-upvote.is-selected,
#pqv3-app .pq-comment-like-btn,
#pqv3-app .pq-comment-like-btn.is-selected{
  color:var(--pq-ui-upvote)!important;
}
#pqv3-app .pq-comment-downvote,
#pqv3-app .pq-comment-downvote.is-selected{
  color:var(--pq-ui-downvote)!important;
}
#pqv3-app .pq-comment-upvote:hover,
#pqv3-app .pq-comment-upvote.is-selected:hover,
#pqv3-app .pq-comment-like-btn:hover,
#pqv3-app .pq-comment-like-btn.is-selected:hover{
  background:var(--pq-ui-upvote-soft)!important;
  color:var(--pq-ui-upvote)!important;
}
#pqv3-app .pq-comment-downvote:hover,
#pqv3-app .pq-comment-downvote.is-selected:hover{
  background:var(--pq-ui-downvote-soft)!important;
  color:var(--pq-ui-downvote)!important;
}
#pqv3-app .pq-story-discuss-btn span,
#pqv3-app .pq-poll-open span,
#pqv3-app .pq-discussion-reply-count > span{
  transform-origin:center!important;
  animation:pqCommentPulse 9s ease-in-out infinite!important;
}
#pqv3-app .pq-clean-feed-card:hover .pq-story-discuss-btn span,
#pqv3-app .pq-clean-feed-card:hover .pq-poll-open span,
#pqv3-app .pq-trending-discussion-card:hover .pq-discussion-reply-count > span,
#pqv3-app .pq-story-discuss-btn:focus-visible span,
#pqv3-app .pq-poll-open:focus-visible span,
#pqv3-app .pq-discussion-reply-count:focus-visible > span{
  animation-play-state:paused!important;
}
@keyframes pqCommentPulse{
  0%, 72%, 100%{transform:scale(1);opacity:1;}
  76%{transform:scale(1.08);opacity:.82;}
  80%{transform:scale(1);opacity:1;}
}
@media (prefers-reduced-motion: reduce){
  #pqv3-app .pq-story-discuss-btn span,
  #pqv3-app .pq-poll-open span,
  #pqv3-app .pq-discussion-reply-count > span{
    animation:none!important;
  }
}

/* Stage 3.3: make selected story votes visibly persist after click/refresh. */
#pqv3-app .pq-story-actions .pq-story-upvote-btn.is-selected,
#pqv3-app .pq-story-actions .pq-story-upvote-btn.is-upvoted,
.pqv3-server-stories .pq-story-actions .pq-story-upvote-btn.is-selected,
.pqv3-server-stories .pq-story-actions .pq-story-upvote-btn.is-upvoted{
  background:var(--pq-ui-upvote-soft)!important;
  color:var(--pq-ui-upvote)!important;
  opacity:1!important;
}
#pqv3-app .pq-story-actions .pq-story-downvote-btn.is-selected,
#pqv3-app .pq-story-actions .pq-story-downvote-btn.is-downvoted,
.pqv3-server-stories .pq-story-actions .pq-story-downvote-btn.is-selected,
.pqv3-server-stories .pq-story-actions .pq-story-downvote-btn.is-downvoted{
  background:var(--pq-ui-downvote-soft)!important;
  color:var(--pq-ui-downvote)!important;
  opacity:1!important;
}
#pqv3-app .pq-story-actions .pq-story-vote-btn.is-selected svg,
.pqv3-server-stories .pq-story-actions .pq-story-vote-btn.is-selected svg{
  transform:scale(1.08)!important;
}


/* Stage 7 final UI QA: one action treatment across legacy and new controls. */
#pqv3-app .pq-clean-icon-btn,
#pqv3-app .pq-feed-actions button,
#pqv3-app .pq-feed-actions a,
#pqv3-app .pq-comment-vote-btn,
#pqv3-app .pq-comment-reply-link{
  -webkit-tap-highlight-color:transparent!important;
}
#pqv3-app .pq-clean-icon-btn:focus-visible,
#pqv3-app .pq-feed-actions button:focus-visible,
#pqv3-app .pq-feed-actions a:focus-visible,
#pqv3-app .pq-comment-vote-btn:focus-visible,
#pqv3-app .pq-comment-reply-link:focus-visible{
  outline:0!important;
  box-shadow:var(--pq-ui-focus)!important;
}
#pqv3-app .pq-action-svg,
#pqv3-app .pq-action-svg svg{
  display:inline-flex!important;
  width:var(--pq-ui-icon-size)!important;
  height:var(--pq-ui-icon-size)!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 var(--pq-ui-icon-size)!important;
}
#pqv3-app .pq-feed-actions i{display:none!important;}
#pqv3-app .pq-feed-actions .pq-feed-like,
#pqv3-app .pq-feed-actions .pq-feed-save,
#pqv3-app .pq-feed-actions .pq-feed-remix,
#pqv3-app .pq-feed-actions .pq-feed-play{
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:var(--pq-ui-action-size)!important;
  padding:0 12px!important;
  border:0!important;
  border-radius:14px!important;
  background:transparent!important;
  color:var(--pq-ui-purple)!important;
  font-size:var(--pq-ui-meta)!important;
  font-weight:750!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
#pqv3-app .pq-feed-actions .pq-feed-like:hover,
#pqv3-app .pq-feed-actions .pq-feed-save:hover,
#pqv3-app .pq-feed-actions .pq-feed-remix:hover,
#pqv3-app .pq-feed-actions .pq-feed-play:hover,
#pqv3-app .pq-feed-actions .pq-feed-like.active,
#pqv3-app .pq-feed-actions .pq-feed-save.active{
  background:var(--pq-ui-purple-soft)!important;
  color:var(--pq-ui-purple)!important;
}
#pqv3-app .pq-comment-upvote.is-selected,
#pqv3-app .pq-comment-upvote.is-selected svg,
#pqv3-app .pq-story-upvote-btn.is-selected,
#pqv3-app .pq-story-upvote-btn.is-selected svg{
  color:var(--pq-ui-upvote)!important;
}
#pqv3-app .pq-comment-downvote.is-selected,
#pqv3-app .pq-comment-downvote.is-selected svg,
#pqv3-app .pq-story-downvote-btn.is-selected,
#pqv3-app .pq-story-downvote-btn.is-selected svg{
  color:var(--pq-ui-downvote)!important;
}
@media (max-width:760px){
  #pqv3-app .pq-clean-feed-actions,
  #pqv3-app .pq-poll-actions,
  #pqv3-app .pq-feed-actions,
  #pqv3-app .pq-story-actions,
  #pqv3-app .pq-q-card-actions{
    gap:6px!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    scrollbar-width:none!important;
  }
  #pqv3-app .pq-clean-feed-actions::-webkit-scrollbar,
  #pqv3-app .pq-poll-actions::-webkit-scrollbar,
  #pqv3-app .pq-feed-actions::-webkit-scrollbar,
  #pqv3-app .pq-story-actions::-webkit-scrollbar,
  #pqv3-app .pq-q-card-actions::-webkit-scrollbar{display:none!important;}
}
