.ses-vote-wrap{max-width:820px;margin:24px auto;padding:16px;border:1px solid #e5e5e5;border-radius:10px}
.ses-card{background:#fff;border:1px solid #eee;padding:14px;border-radius:10px;margin-top:12px}
#ses-access-form label{display:block;margin-bottom:6px;font-weight:600}
#ses-access-form input{width:100%;max-width:360px;padding:10px;border:1px solid #ddd;border-radius:8px}
#ses-access-form button{margin-top:10px;padding:10px 14px;border-radius:8px;border:0;background:#1d4ed8;color:#fff;cursor:pointer}
#ses-submit-vote{padding:10px 14px;border-radius:8px;border:0;background:#16a34a;color:#fff;cursor:pointer}
.ses-msg{margin-top:10px}
.ses-error{color:crimson}
.ses-ok{color:green}
.ses-position{margin-top:14px;padding-top:10px;border-top:1px solid #f0f0f0}
.ses-ballot-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:10px;border:1px solid #eef2ff;border-radius:10px;overflow:hidden}
.ses-ballot-table thead th{background:#eff6ff;text-align:left;font-weight:700;padding:10px 12px;border-bottom:1px solid #e5e7eb;font-size:.95em}
.ses-ballot-table tbody td{padding:10px 12px;border-bottom:1px solid #f1f5f9;vertical-align:middle}
.ses-ballot-table tbody tr:last-child td{border-bottom:0}
.ses-ballot-row{cursor:pointer}
.ses-ballot-row:hover{background:#f8fafc}
.ses-td-photo{width:80px}
.ses-td-select{width:90px;text-align:center}
.ses-photo{width:70px;height:70px;object-fit:cover;border-radius:10px;border:1px solid #eee;background:#fff}
.ses-photo-placeholder{width:70px;height:70px;border-radius:10px;border:1px dashed #cbd5e1;display:flex;align-items:center;justify-content:center;color:#64748b}
.ses-name{font-weight:700}
.ses-manifesto{font-size:.92em;color:#444;margin-top:2px;max-width:640px}
.ses-muted{color:#666}

@media (max-width:560px){
  .ses-ballot-table thead{display:none}
  .ses-ballot-table, .ses-ballot-table tbody, .ses-ballot-table tr, .ses-ballot-table td{display:block;width:100%}
  .ses-ballot-table tbody td{border-bottom:0}
  .ses-ballot-row{border-bottom:1px solid #f1f5f9;padding:10px 12px}
  .ses-td-photo{padding-top:0}
  .ses-td-select{text-align:left}
}

.ses-ballot-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px}

#ses-next,#ses-submit-vote{margin-left:auto}
