.v-breadcrumb-nav{position:-webkit-sticky;position:sticky;top:var(--h-h);z-index:999;background:rgba(255,255,255,0.98);border-bottom:1px solid var(--s);min-height:var(--sp-40);display:flex;align-items:center}
.v-breadcrumb-wrapper{display:flex;align-items:center;padding:var(--sp-12) var(--sp-20);width:100%;margin:0 auto}
.v-b-label{font-size:var(--fs-11);font-weight:var(--w-ext);color:var(--tx-m);text-transform:uppercase;letter-spacing:0.5px}
.v-b-sep{margin:0 var(--sp-10);color:var(--tx-m);font-size:var(--fs-10);opacity:0.5}
.v-b-current{font-size:var(--fs-14);font-weight:var(--w-bold);color:var(--tx)}
.v-b-back{margin-left:auto;font-size:var(--fs-11);font-weight:var(--w-bold);color:var(--p);text-decoration:none;background:#fff1f2;padding:var(--sp-4) var(--sp-10);border-radius:var(--r-l);transition:0.2s}
.v-b-back:hover{background:var(--p);color:var(--w)}

.v-survey-hero { background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray); border: 1px solid var(--s); padding: var(--sp-24) var(--sp-20); text-align: center; margin-bottom: var(--sp-16); }
.v-main-title { font-size: var(--fs-20); font-weight: var(--w-ext); color: var(--tx); line-height: 1.2; margin: 0 0 var(--sp-12) 0; letter-spacing: -0.5px; }
.v-main-desc { font-size: var(--fs-14); color: var(--tx-m); line-height: 1.5; margin: 0 0 var(--sp-16) 0; }
.v-meta-notice { display: inline-block; font-size: var(--fs-11); color: var(--tx-m); background: var(--w); border: 1px solid var(--s); padding: var(--sp-6) var(--sp-12); border-radius: var(--r-m); }
.v-meta-notice strong { color: var(--p); text-transform: uppercase; margin-right: var(--sp-4); }

@media (min-width: 600px) {
.v-survey-hero { padding: var(--sp-40) var(--sp-32)}
.v-main-title { font-size: var(--fs-24); }
.v-main-desc { font-size: var(--fs-15); }
.v-meta-notice { font-size: var(--fs-12); }
}

.v-editorial-header{text-align:left;margin-bottom:var(--sp-32)}
.v-main-title{font-size:var(--fs-24);font-weight:var(--w-ext);color:var(--tx);line-height:1.2;margin-bottom:var(--sp-12);letter-spacing:-0.5px}
.v-main-desc{font-size:var(--fs-16);color:var(--tx-m);line-height:1.6;margin-bottom:var(--sp-20);max-width:800px}
.v-main-notice{padding:var(--sp-16) 0;border-top:1px solid var(--s);border-bottom:1px solid var(--s)}
.v-main-notice p{font-size:var(--fs-14);color:var(--tx-m);line-height:1.5;margin:0}
.v-main-notice strong{color:#d97706;font-weight:var(--w-bold);text-transform:uppercase;font-size:var(--fs-12);margin-right:var(--sp-5)}
.v-candidatos-link{margin-top:var(--sp-40);padding:var(--sp-24);background:var(--bg);border-radius:var(--r-m);text-align:left}
.v-candidatos-link p{font-size:var(--fs-14);color:var(--tx);margin:0;font-weight:var(--w-med)}
.v-candidatos-link a{color:var(--p);text-decoration:none;font-weight:var(--w-bold);border-bottom:1.5px solid var(--p)}
.v-candidatos-link a:hover{color:var(--tx);border-color:var(--tx)}

.v-container{max-width:550px;margin:0 auto;padding:var(--sp-20) var(--sp-14);font-family:var(--f)}
.v-header{text-align:center;margin:var(--sp-20) 0 var(--sp-30)}
.v-title{font-size:var(--fs-20);font-weight:var(--w-ext);text-transform:uppercase;color:var(--tx)}
.v-desc{font-size:var(--fs-14);color:var(--tx-m);margin-top:var(--sp-5)}

.v-selector-grid{display:flex;flex-direction:column;gap:var(--sp-12)}
.v-selector-item{display:flex;align-items:center;padding:var(--sp-18);background:var(--w);border:2px solid var(--s);border-radius:var(--r-l);text-decoration:none;color:var(--tx);font-weight:var(--w-ext);transition:0.2s}
.v-selector-item:hover{border-color:var(--p);background:#fff9f9}
.v-selector-dot{width:var(--sp-10);height:var(--sp-10);background:var(--s);border-radius:var(--r-full);margin-right:var(--sp-14)}
.v-selector-item:hover .v-selector-dot{background:var(--p)}
.v-selector-item span{flex-grow:1;font-size:var(--fs-16)}
.v-selector-item svg{width:var(--sp-18);height:var(--sp-18);color:var(--tx-m);opacity:0.5}

.v-section{margin-bottom:var(--sp-40)}
.v-question{font-size:var(--fs-20);font-weight:var(--w-reg);color:var(--tx);margin-bottom:var(--sp-20);line-height:1.4;border-bottom:1px solid var(--s);padding-bottom:var(--sp-14)}
.v-question strong{color:var(--p);font-weight:var(--w-ext)}
.v-options-list{display:flex;flex-direction:column;gap:var(--sp-10)}
.v-item input{display:none}
.v-item-box{display:flex;align-items:center;background:var(--w);padding:var(--sp-12);border-radius:var(--r-l);border:1px solid var(--s);cursor:pointer;gap:var(--sp-12);transition:0.2s}
.v-item input:checked + .v-item-box{border-color:var(--p);background:#fff9f9;box-shadow:0 4px 12px rgba(227,19,48,0.08)}
.v-item-img{width:var(--sp-60);height:var(--sp-60);border-radius:var(--r-m);overflow:hidden;background:var(--s);flex-shrink:0;display:flex;align-items:center;justify-content:center}
.v-item-img img{width:100%;height:100%;object-fit:cover}
.v-item-main{flex-grow:1;min-width:0}
.v-item-name{font-size:var(--fs-14);font-weight:var(--w-ext);color:var(--tx);line-height:1.2}
.v-item-party{font-size:var(--fs-10);color:var(--tx-m);text-transform:uppercase;margin-top:var(--sp-4)}
.v-item-logo{width:var(--sp-32);height:var(--sp-32);flex-shrink:0}
.v-item-logo img{width:100%;height:100%;object-fit:contain}
.v-check{width:var(--sp-20);height:var(--sp-20);border:2px solid var(--s);border-radius:var(--r-full);position:relative}
.v-item input:checked + .v-item-box .v-check{border-color:var(--p);background:var(--p)}
.v-item input:checked + .v-item-box .v-check::after{content:'';position:absolute;width:7px;height:4px;border-left:2px solid var(--w);border-bottom:2px solid var(--w);transform:rotate(-45deg);inset:0;margin:auto}
.v-neutral-icon{background:var(--s);color:var(--tx-m);font-weight:var(--w-ext);font-size:var(--fs-20)}
.v-neutral .v-item-box{background:var(--bg);border-style:dashed}
.v-submit{width:100%;padding:var(--sp-20);background:var(--p);color:var(--w);border:none;border-radius:var(--r-l);font-weight:var(--w-ext);font-size:var(--fs-16);cursor:pointer;transition:0.3s}
.v-submit:active{transform:scale(0.98)}
.v-error-msg{background:#fff1f2;color:#e11d48;padding:var(--sp-12);border-radius:var(--r-m);font-size:var(--fs-12);font-weight:var(--w-bold);margin-bottom:var(--sp-14);border:1px solid #fda4af;text-align:center;animation:vFadeIn 0.3s ease}
@keyframes vFadeIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}

.v-post-voto-wrapper{max-width:600px;margin:0 auto;padding:var(--sp-10);box-sizing:border-box}
.v-voto-success{text-align:center;padding:var(--sp-16);background:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--r-l);margin-bottom:var(--sp-16)}
.v-success-icon{width:var(--sp-32);height:var(--sp-32);background:#22c55e;color:var(--w);border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;margin:0 auto var(--sp-8);font-weight:var(--w-bold)}
.v-voto-success h3{margin:0;color:#166534;font-size:var(--fs-16);font-weight:var(--w-ext)}
.v-voto-success p{margin:var(--sp-2) 0 0;font-size:var(--fs-12);color:#15803d}
.v-encuesta-card{background:var(--w);padding:var(--sp-12);border-radius:var(--r-l);border:1px solid var(--s);box-sizing:border-box;position:relative}
.v-live-badge{display:inline-flex;align-items:center;gap:var(--sp-5);background:#fee2e2;color:var(--p);font-size:var(--fs-10);font-weight:var(--w-ext);padding:var(--sp-2) var(--sp-8);border-radius:var(--r-full);margin-bottom:var(--sp-10)}
.v-dot{width:var(--sp-8);height:var(--sp-8);background:var(--p);border-radius:var(--r-full);animation:vpulse 1.5s infinite}
@keyframes vpulse{0%,100%{opacity:1}50%{opacity:0.3}}
.v-encuesta-header{text-align:center;margin-bottom:var(--sp-16);border-bottom:3px solid var(--p);padding-bottom:var(--sp-10)}
.v-encuesta-header h2{font-weight:var(--w-ext);font-size:var(--fs-20);margin:0;color:var(--tx);text-transform:uppercase}
.v-encuesta-header .v-encuesta-subtitle{font-size:var(--fs-10);color:var(--tx-m);font-weight:var(--w-bold);margin-top:var(--sp-4)}
.v-encuesta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-10)}
.v-encuesta-cargo-title{font-size:var(--fs-10);text-transform:uppercase;color:var(--tx-m);margin-bottom:var(--sp-12);border-left:3px solid #facc15;padding-left:var(--sp-8);font-weight:var(--w-ext)}
.v-encuesta-candidate-row{margin-bottom:var(--sp-8);display:flex;gap:var(--sp-8);align-items:center}
.v-encuesta-avatar{width:var(--sp-32);height:var(--sp-32);border-radius:var(--r-m);background:var(--bg);overflow:hidden;flex-shrink:0;border:1px solid var(--s)}
.v-encuesta-avatar img{width:100%;height:100%;object-fit:cover}
.v-encuesta-info{flex-grow:1;min-width:0}
.v-encuesta-info-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--sp-2)}
.v-encuesta-name{font-weight:var(--w-ext);color:var(--tx);font-size:var(--fs-11);line-height:1.1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
.v-encuesta-pct-val{font-weight:var(--w-ext);color:var(--tx);font-size:var(--fs-12);margin-left:var(--sp-4);flex-shrink:0}
.v-encuesta-progress-bg{height:var(--sp-6);background:var(--bg);border-radius:var(--r-s);overflow:hidden}
.v-encuesta-progress-bar{height:100%;background:var(--p)}
.v-nsno-mini-row{display:flex;justify-content:space-between;padding:var(--sp-6) var(--sp-10);background:var(--bg);border-radius:var(--r-m);margin-top:var(--sp-10);font-size:var(--fs-10);color:var(--tx-m);text-transform:uppercase;border:1px dashed var(--s)}

.v-encuesta-ficha{margin-top:var(--sp-16);padding:var(--sp-12);background:var(--bg);border-radius:var(--r-m);border:1px solid var(--s)}
.v-encuesta-ficha h4{font-size:var(--fs-10);font-weight:var(--w-ext);text-transform:uppercase;color:var(--tx-m)}
.v-encuesta-ficha p{font-size:var(--fs-10);line-height:1.4;color:var(--tx-m);text-align:justify}
.v-encuesta-footer{margin-top:var(--sp-16);padding-top:var(--sp-10);border-top:1px solid var(--s);display:flex;justify-content:space-between;align-items:center}
.v-encuesta-footer-note{font-size:var(--fs-10);color:var(--tx-m);font-weight:var(--w-med)}
.v-encuesta-brand{background:var(--tx);color:var(--w);padding:var(--sp-4) var(--sp-8);font-weight:var(--w-ext);font-size:var(--fs-11)}
.v-btn-candidatos{display:block;width:100%;padding:var(--sp-16);background:var(--tx);color:var(--w);text-decoration:none;border-radius:var(--r-m);font-weight:var(--w-ext);text-transform:uppercase;font-size:var(--fs-14);text-align:center;margin:var(--sp-16) 0}
.v-section-title{font-size:var(--fs-14);text-transform:uppercase;font-weight:var(--w-ext);margin-bottom:var(--sp-16); padding: var(--sp-8);border-bottom:2px solid var(--p)}
.v-news-list{display:flex;flex-direction:column;gap:var(--sp-10)}
.v-news-item{display:flex;gap:var(--sp-12);text-decoration:none;color:inherit;background:var(--w);border:1px solid var(--s);padding:var(--sp-10);border-radius:var(--r-m)}
.v-news-thumb{width:100px;aspect-ratio:16/9;border-radius:var(--r-s);overflow:hidden;flex-shrink:0}
.v-news-thumb img{width:100%;height:100%;object-fit:cover}
.v-news-content h5{margin:0;font-size:var(--fs-14);line-height:1.3;font-weight:var(--w-bold)}
.v-news-content span{font-size:var(--fs-11);color:var(--tx-m);margin-top:var(--sp-4);display:block}

.v-info-footer { background: var(--w); border: 1px solid var(--s); border-radius: var(--r-l); padding: var(--sp-40) var(--sp-24); text-align: center; margin-top: var(--sp-20); box-shadow: var(--sh-sm); }
.v-info-title { font-family: var(--f); font-size: var(--fs-24); font-weight: var(--w-ext); color: var(--tx); margin: 0 0 var(--sp-12) 0; letter-spacing: -0.5px; }
.v-info-desc { font-size: var(--fs-16); color: var(--tx-m); margin: 0 0 var(--sp-24) 0; line-height: 1.5; max-width: 500px; margin-inline: auto; }
.v-btn-votar, .v-btn-info { display: inline-flex; align-items: center; justify-content: center; padding: var(--sp-16) var(--sp-32); border-radius: var(--r-full); font-weight: var(--w-bold); font-size: var(--fs-14); text-decoration: none; transition: all 0.3s ease; text-transform: uppercase; letter-spacing: 0.5px; }
.v-btn-votar { background: var(--p); color: var(--w); box-shadow: 0 10px 15px -3px rgba(227,19,48,0.3); }
.v-btn-votar:hover { background: var(--p-d); transform: translateY(-2px); box-shadow: 0 12px 20px -3px rgba(227,19,48,0.4); color: var(--w); }
.v-btn-info { background: var(--tx); color: var(--w); box-shadow: var(--sh-sm); }
.v-btn-info:hover { background: #000; transform: translateY(-2px); box-shadow: var(--sh-soft); color: var(--w); }

@media (max-width: 768px) {
.v-info-footer { padding: var(--sp-32) var(--sp-20); margin-top: var(--sp-32); }
.v-info-title { font-size: var(--fs-20); }
.v-info-desc { font-size: var(--fs-14); margin-bottom: var(--sp-20); }
.v-btn-votar, .v-btn-info { width: 100%; padding: var(--sp-14) var(--sp-24); }
}

@media (max-width:600px){.v-main-title{font-size:var(--fs-20)} .v-main-desc{font-size:var(--fs-14)} .v-encuesta-header h2{font-size:var(--fs-18)}}
@media (max-width:340px){.v-encuesta-grid{grid-template-columns:1fr}}
@media (min-width:601px){
.v-encuesta-card{padding:var(--sp-24)}
.v-encuesta-header h2{font-size:var(--fs-24)}
.v-encuesta-name{font-size:var(--fs-14)}
.v-encuesta-pct-val{font-size:var(--fs-16)}
.v-encuesta-avatar{width:var(--sp-40);height:var(--sp-40)}
.v-news-thumb{width:140px}
.v-news-content h5{font-size:var(--fs-16)}
}

.v-post-actions { display: flex; flex-direction: column; gap: var(--sp-12); margin: var(--sp-24) 0; align-items: center; }
.v-btn-full { width: 100%; text-align: center; }
.v-link-secondary { font-size: var(--fs-12); color: var(--tx-m); font-weight: var(--w-bold); text-decoration: underline; transition: 0.2s; }
.v-link-secondary:hover { color: var(--p); }
.v-copybox { background: #1e293b; border: 1px solid #334155; border-radius: var(--r-l); padding: var(--sp-20); color: var(--w); display: flex; flex-direction: column; gap: var(--sp-12); margin: var(--sp-24) 0; text-align: center; }
.v-cb-muted { color: #94a3b8; font-size: var(--fs-12); font-weight: var(--w-bold); text-transform: uppercase; letter-spacing: 0.5px; }
.v-cb-code { background: #0f172a; border: 1px solid #334155; border-radius: var(--r-m); padding: var(--sp-14); font-size: var(--fs-12); color: #e2e8f0; font-family: monospace; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; box-sizing: border-box; }
.v-cb-btn { background: #334155; border: 1px solid #475569; border-radius: var(--r-m); color: var(--w); padding: var(--sp-14); cursor: pointer; transition: 0.2s; font-size: var(--fs-14); font-weight: var(--w-ext); width: 100%; text-transform: uppercase; border: 1px solid transparent; }
.v-cb-btn:hover { background: var(--p); border-color: var(--p); transform: translateY(-1px); }