/* Styles moved from page-interim-results.php */
#wpadminbar{display:none!important}
html{margin-top:0!important}
body{padding-top:0!important;overflow-x:hidden;font-family:'Rajdhani','Plus Jakarta Sans',sans-serif}
.projector-display{background:radial-gradient(circle at 12% 8%,rgba(0,232,255,.4),transparent 45%),radial-gradient(circle at 88% 92%,rgba(247,92,255,.32),transparent 50%),radial-gradient(circle at 90% 10%,rgba(255,215,0,.12),transparent 40%),linear-gradient(160deg,#050912 0%,#0a1730 55%,#0d2b42 100%);min-height:100vh;color:#fff}
.projector-title{color:#fff!important;font-family:'Orbitron','Plus Jakarta Sans',sans-serif;letter-spacing:.04em;text-shadow:0 2px 4px rgba(0,0,0,.4),0 0 40px rgba(0,232,255,.45),0 0 70px rgba(247,92,255,.25)}
.results-card{background:rgba(8,15,35,.4);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(0,232,255,.12);border-radius:24px;box-shadow:0 20px 45px rgba(2,6,23,.35);color:#fff}
.category-badge{font-family:'Orbitron','Plus Jakarta Sans',sans-serif;box-shadow:0 0 0 2px rgba(0,232,255,.5),0 8px 24px rgba(0,232,255,.25)}

/* Candidate card: fixed-width photo panel (properly framed, not stretched) + info body */
.candidate-card{position:relative;display:flex;align-items:stretch;border-radius:18px;overflow:hidden;min-height:100px;margin-bottom:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);box-shadow:0 10px 28px rgba(2,6,23,.3);transition:transform .25s ease,box-shadow .25s ease}
.candidate-card:last-child{margin-bottom:0}
.candidate-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(2,6,23,.4)}
.candidate-card.rank-1{box-shadow:0 0 0 2px rgba(255,215,0,.55),0 16px 36px rgba(255,165,0,.25)}

.candidate-card-media{position:relative;width:90px;flex-shrink:0;overflow:hidden}
.candidate-card-media img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}
.candidate-card-media::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,15,35,.28) 0%,rgba(8,15,35,0) 100%)}

.candidate-card-content{position:relative;z-index:2;flex:1;min-width:0;display:flex;align-items:center;gap:18px;padding:14px 20px}

.candidate-rank-badge{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.25rem;flex-shrink:0;box-shadow:0 4px 14px rgba(0,0,0,.4)}
.rank-1 .candidate-rank-badge{background:linear-gradient(135deg,#FFD700,#FFA500);color:#5c3d00}
.rank-2 .candidate-rank-badge{background:linear-gradient(135deg,#E5E7EB,#9CA3AF);color:#1e1b2e}
.rank-3 .candidate-rank-badge{background:linear-gradient(135deg,#D9A066,#9C6B30);color:#fff}
.rank-other .candidate-rank-badge{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25);box-shadow:none}

.candidate-info{flex:1;min-width:0}
.candidate-number-label{font-size:.75rem;font-weight:700;letter-spacing:.08em;color:#f75cff;text-transform:uppercase;margin-bottom:2px}
.candidate-name{font-size:1.5rem;font-weight:800;font-family:'Orbitron','Plus Jakarta Sans',sans-serif;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-shadow:0 2px 10px rgba(0,0,0,.5)}
.candidate-class{font-size:1rem;color:rgba(255,255,255,.75);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}

.candidate-vote-badge{flex-shrink:0;text-align:center;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.25);border-radius:16px;padding:10px 18px;min-width:92px}
.rank-1 .candidate-vote-badge{background:linear-gradient(135deg,#FFD700,#FFA500);border-color:transparent}
.candidate-vote-count{display:block;font-size:1.6rem;font-weight:800;color:#fff;line-height:1}
.rank-1 .candidate-vote-count{color:#5c3d00}
.candidate-vote-label{display:block;font-size:.65rem;font-weight:700;letter-spacing:.08em;color:rgba(255,255,255,.7);margin-top:2px}
.rank-1 .candidate-vote-label{color:rgba(92,61,0,.8)}

@media (min-width:992px){
    .candidate-card{min-height:140px}
    .candidate-card-media{width:150px}
    .candidate-card-content{min-height:140px;padding:22px 28px}
    .candidate-rank-badge{width:58px;height:58px;font-size:1.5rem}
    .candidate-name{font-size:1.8rem}
    .candidate-class{font-size:1.1rem}
    .candidate-vote-badge{padding:12px 22px;min-width:110px}
    .candidate-vote-count{font-size:1.9rem}
}
@media (min-width:1200px){
    .candidate-card{min-height:160px}
    .candidate-card-media{width:170px}
    .candidate-card-content{min-height:160px;padding:26px 32px}
    .candidate-rank-badge{width:66px;height:66px;font-size:1.7rem}
    .candidate-name{font-size:2.1rem}
    .candidate-class{font-size:1.2rem}
    .candidate-vote-badge{padding:14px 26px;min-width:120px}
    .candidate-vote-count{font-size:2.2rem}
}
@media (min-width:768px) and (max-width:991px){
    .candidate-card{min-height:110px}
    .candidate-card-media{width:120px}
    .candidate-card-content{min-height:110px;padding:16px 20px}
    .candidate-rank-badge{width:44px;height:44px;font-size:1.1rem}
    .candidate-name{font-size:1.3rem}
    .candidate-class{font-size:.9rem}
    .candidate-vote-badge{padding:8px 14px;min-width:80px}
    .candidate-vote-count{font-size:1.4rem}
}
@media (min-width:701px) and (max-width:767px){
    .candidate-card{min-height:100px}
    .candidate-card-media{width:100px}
    .candidate-card-content{min-height:100px;padding:14px 16px;gap:12px}
    .candidate-rank-badge{width:38px;height:38px;font-size:1rem}
    .candidate-name{font-size:1.15rem}
    .candidate-class{font-size:.85rem}
    .candidate-vote-badge{padding:6px 12px;min-width:72px}
    .candidate-vote-count{font-size:1.2rem}
}
@media (max-width:700px){
    body{font-size:12px}
    .display-4{font-size:1.4rem!important}
    .fs-5{font-size:.9rem!important}
    .fs-6{font-size:.8rem!important}
    .container-fluid{padding:10px!important}
    .results-card{padding:10px!important}
    .candidate-card{min-height:84px!important;margin-bottom:8px!important}
    .candidate-card-media{width:74px!important}
    .candidate-card-content{min-height:84px!important;padding:10px 12px!important;gap:10px!important}
    .candidate-rank-badge{width:32px!important;height:32px!important;font-size:.85rem!important}
    .candidate-number-label{font-size:.6rem!important}
    .candidate-name{font-size:.95rem!important}
    .candidate-class{font-size:.75rem!important}
    .candidate-vote-badge{padding:5px 10px!important;min-width:60px!important;border-radius:12px!important}
    .candidate-vote-count{font-size:1rem!important}
    .candidate-vote-label{font-size:.55rem!important}
}
@media (max-width:650px){
    body{font-size:11px}
    .display-4{font-size:1.2rem!important}
    .fs-5{font-size:.8rem!important}
    .fs-6{font-size:.7rem!important}
    .container-fluid{padding:8px!important}
    .results-card{padding:8px!important}
    .candidate-card{min-height:72px!important;margin-bottom:6px!important}
    .candidate-card-media{width:62px!important}
    .candidate-card-content{min-height:72px!important;padding:8px 10px!important;gap:8px!important}
    .candidate-rank-badge{width:28px!important;height:28px!important;font-size:.75rem!important}
    .candidate-name{font-size:.85rem!important}
    .candidate-class{font-size:.68rem!important}
    .candidate-vote-badge{padding:4px 8px!important;min-width:52px!important}
    .candidate-vote-count{font-size:.85rem!important}
}
