:root{--sfv-primary:#ba2118;--sfv-primary-contrast:#ffffff}
.sfv-wrap{max-width:1100px;margin:0 auto;padding:12px}
.sfv-title{font-size:28px;margin:10px 0 16px 0}
.sfv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.sfv-card{border:1px solid #eee;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.sfv-image img{width:100%;height:auto;display:block}
.sfv-info{padding:12px 12px 0 12px}
.sfv-actions{padding:12px;display:flex;justify-content:center}
.sfv-vote-btn{background:var(--sfv-primary);color:var(--sfv-primary-contrast);border:none;border-radius:12px;padding:12px 18px;font-weight:700;cursor:pointer}
.sfv-vote-btn:hover{filter:brightness(.95)}
/* Thanks page tweaks */
.sfv-thanks-note{margin-top:12px;margin-bottom:8px;text-align:center;opacity:.85}
.sfv-thanks-back{margin-top:16px;text-align:center}
.sfv-back-link.sfv-back-primary{display:inline-block;padding:12px 18px;border-radius:12px;
  background:var(--sfv-primary);color:var(--sfv-primary-contrast);font-weight:700;text-decoration:none}
.sfv-back-link.sfv-back-primary:hover{filter:brightness(.95)}
/* HOTFIX alta precedência (contra temas/minificadores) */
.sfv-vote-btn,.sfv-back-link.sfv-back-primary{
  background:#ba2118 !important;background-image:none !important;color:#ffffff !important;border-color:#ba2118 !important
}

/* === SFV UI Fixes (UI version) ============================================= */

.sfv-card{ display:flex; flex-direction:column; }
.sfv-info{ flex:1 1 auto; }
.sfv-actions{ margin-top:auto; display:flex; justify-content:center; align-items:center; }

.sfv-vote-btn{ min-width:220px; text-align:center; border:0; outline:none; }
.sfv-vote-btn[disabled]{ opacity:.7; cursor:not-allowed; }

.sfv-card .sfv-image{ aspect-ratio:4/3; overflow:hidden; }
.sfv-card .sfv-image img{ width:100%; height:100%; object-fit:cover; display:block; }

#sfv-live-results{ display:block; }
.sfv-result-row{ display:grid; grid-template-columns:1fr auto; align-items:center; gap:10px 14px;
  margin:12px 0; padding:8px 0; border-bottom:1px solid #eee; }
.sfv-result-title{ font-weight:600; line-height:1.2; }
.sfv-result-num{ justify-self:end; white-space:nowrap; font-variant-numeric:tabular-nums; opacity:.9; }
.sfv-result-bar{ grid-column:1/-1; height:12px; background:#f1f1f1; border-radius:999px; position:relative; overflow:hidden; }
.sfv-result-bar::after{ content:""; position:absolute; left:0; top:0; bottom:0; width:var(--pct);
  background: var(--sfv-primary,#ba2118); border-radius:999px; }

@media(max-width:600px){
  .sfv-result-row{ grid-template-columns:1fr; }
  .sfv-result-num{ justify-self:start; margin-top:4px; }
}
/* === /SFV UI Fixes ========================================================= */
