.vote-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}
.vote-eyebrow{color:#ff906a;font:700 12px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.08em}
.vote-heading form{margin:0}
.vote-heading .button{min-height:38px;padding:8px 14px;font-size:14px}
.vote-reward{display:flex;gap:14px;align-items:center;padding:18px;margin:0 0 20px;border:1px solid #67512b;background:#332a1838;border-radius:3px;color:#ffdc79}
.vote-reward img{object-fit:contain;flex-shrink:0}
.vote-reward strong,.vote-reward span{display:block;font:600 17px/1.5 Arial,Helvetica,sans-serif}
.vote-reward span{color:#d2c6ab;font-size:14px;font-weight:400}
.card-vote-dialog .vote-no-reward{font-size:15px}
.vote-clock{padding:22px 20px;border:1px solid #41596b;background:radial-gradient(ellipse at 50% 0,#223c4b66,transparent 75%),#0b141c;margin-bottom:20px;text-align:center}
.vote-clock span,.vote-clock small{display:block;color:#b9cddb;font:15px/1.5 Arial,Helvetica,sans-serif}
.vote-clock strong{display:block;margin:6px 0;font:700 32px/1.3 Arial,Helvetica,sans-serif;font-variant-numeric:tabular-nums;color:#fff}
.card-vote-dialog .vote-message.is-error{color:#ffae94}
.card-vote-dialog .vote-message.is-success{color:#65ddb6}
.card-vote-dialog .vote-submit{width:100%;gap:10px}
.vote-retry{margin-top:12px;width:100%}
.vote-availability{font:15px/1.5 Arial,Helvetica,sans-serif;color:#c6d6e2;margin:0 0 20px;padding:14px 18px;border:1px solid #2c424f;border-left:2px solid #f3552b;border-right:2px solid #f3552b;background:radial-gradient(ellipse at 50% 0,#243b4a66,transparent 80%),#101920;text-align:center;text-wrap:balance;font-variant-numeric:tabular-nums}
.card-vote-dialog [hidden],.card-vote-summary [hidden]{display:none!important}
.card-vote-dialog [data-vote-balance]{font-size:15px}
.card-vote-dialog .vote-message,.card-vote-dialog [data-vote-balance]{text-align:center;text-wrap:balance}
.card-vote-dialog .button,[data-card-vote]{transition:background-color .18s,border-color .18s,box-shadow .18s,transform .18s,filter .18s}
.card-vote-dialog .button:focus-visible,[data-card-vote]:focus-visible{outline:2px solid #ff8c63;outline-offset:4px}
@media(hover:hover) and (pointer:fine){
 .card-vote-dialog .button:hover:not(:disabled),[data-card-vote]:hover:not(:disabled){border-color:#f79573;box-shadow:0 0 18px #ef59252b,inset 0 1px #ffffff20;filter:brightness(1.12)}
}
@media(prefers-reduced-motion:no-preference){
 .card-vote-dialog[open]{animation:vote-enter .2s ease-out both}
 .card-vote-dialog .vote-message.is-success{animation:vote-confirmed .4s ease-out both}
 .card-vote-dialog .button:active:not(:disabled),[data-card-vote]:active:not(:disabled){transform:translateY(1px) scale(.985)}
 @media(hover:hover) and (pointer:fine){.card-vote-dialog .button:hover:not(:disabled):not(:active),[data-card-vote]:hover:not(:disabled):not(:active){transform:translateY(-2px)}}
}
@keyframes vote-enter{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@keyframes vote-confirmed{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.card-vote-dialog .button,[data-card-vote]{transition:none!important;transform:none!important}}

.card-vote-dialog .vote-public-note { font-size: 12px; color: #a5bac9; }
.vote-public-note a { color: #dbeaf4; text-decoration: underline; text-underline-offset: 3px; }
