.labvotos-widget{font-family:system-ui,sans-serif;border:1px solid #dce5f3;border-radius:12px;background:#fff;color:#182844;padding:18px;max-width:760px;margin:1.4rem 0;box-shadow:0 3px 14px #16325a0a}.labvotos-widget header{display:flex;justify-content:space-between;gap:12px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#667b98}.labvotos-widget header strong{color:#245ce4}.labvotos-demo{color:#245ce4;background:#eef4ff;padding:7px 9px;border-radius:5px;font-size:11px;font-weight:800}.labvotos-row{display:grid;grid-template-columns:22px minmax(100px,1fr) auto 60px;gap:12px;align-items:center;border-top:1px solid #edf1f5;padding:12px 0;font-size:13px}.labvotos-position{color:#98a7bb}.labvotos-row b,.labvotos-row small{display:block}.labvotos-row small{font-size:11px;color:#8c9caf;font-weight:400}.labvotos-row strong{text-align:right}.labvotos-row em{font-style:normal;font-weight:700;color:#245ce4;text-align:right}.labvotos-track{height:5px;background:#eaf0f8;border-radius:8px;overflow:hidden;margin-top:7px}.labvotos-track i{height:100%;display:block;background:#245ce4;border-radius:8px}.labvotos-widget footer{font-size:11px;color:#93a0b0;border-top:1px solid #edf1f5;padding-top:10px}.labvotos-percent{display:inline-block;background:#eaf1ff;color:#245ce4;border-radius:7px;padding:7px 10px;font-weight:700}.labvotos-empty{color:#7789a1;padding:12px;border:1px dashed #d9e4f3;border-radius:8px}.labvotos-news{list-style:none;padding:0}.labvotos-news li{border-bottom:1px solid #e5ebf3;padding:12px 0}.labvotos-news a{display:block;color:#245ce4;font-weight:700}.labvotos-news small{color:#8b9caf}.labvotos-admin{max-width:1180px}.labvotos-pill{font-size:12px;background:#eaf1ff;color:#245ce4;padding:5px 8px;border-radius:6px;vertical-align:middle}.labvotos-columns{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:22px}.labvotos-card{background:#fff;border:1px solid #dde5ef;border-radius:10px;padding:22px}.labvotos-card h2{margin-top:25px}.labvotos-card h2:first-child{margin-top:0}.labvotos-card label{display:block;font-weight:600;margin:14px 0}.labvotos-card label input:not([type=checkbox]){display:block;width:100%;max-width:600px;margin-top:6px}.labvotos-card .labvotos-check{font-weight:400}.labvotos-card code{display:block;padding:9px;margin:8px 0}.labvotos-card li{padding:6px 0;border-bottom:1px solid #edf1f5}@media(max-width:850px){.labvotos-columns{grid-template-columns:1fr}.labvotos-row{grid-template-columns:20px 1fr 60px}.labvotos-row strong{display:none}}

.labvotos-service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:20px}.labvotos-service-grid article{padding:24px;border:1px solid #dde5ef;border-radius:12px;background:#fff}.labvotos-service-grid h2{font-size:21px;margin:0 0 12px}.labvotos-service-grid p,.labvotos-service-detail p{font-size:16px;line-height:1.7}.labvotos-service-detail nav{font-size:14px;margin-bottom:24px}.labvotos-service-detail li{margin-bottom:12px;line-height:1.7}.labvotos-service-action{display:inline-block;background:#245ce4;color:white!important;padding:14px 20px;border-radius:8px;text-decoration:none;margin:16px 0}.labvotos-service-source{font-size:13px!important;color:#66788c}.labvotos-service-intro{font-size:19px!important}.labvotos-service-grid a:focus-visible,.labvotos-service-detail a:focus-visible{outline:3px solid #245ce4;outline-offset:4px}
.labvotos-secure-handoff{margin:26px 0;padding:20px;border:1px solid #cddcf0;background:#f5f9ff;border-radius:8px}.labvotos-secure-handoff strong{display:block;font-size:17px;color:#173a66}.labvotos-secure-handoff p{margin:7px 0 16px;color:#536b84}.labvotos-live-status{padding:10px 0;color:#567086;font-size:14px}.labvotos-live-title{margin:18px 0 8px}.labvotos-live-root .labvotos-row{transition:background-color .2s}.labvotos-live-root .labvotos-row:hover{background:#f8faff}
.labvotos-service-card{position:relative;overflow:hidden}.labvotos-service-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#fff3d8;color:#e39a00;font-size:28px;font-weight:700;margin-bottom:16px}.labvotos-service-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.labvotos-service-actions .labvotos-service-action{margin:0}.labvotos-service-more{border:1px solid #d8e1ef;background:#fff;color:#245ce4;border-radius:8px;padding:13px 16px;font-weight:700;cursor:pointer}.labvotos-modal{max-width:520px;width:calc(100% - 32px);border:0;border-radius:14px;padding:28px;box-shadow:0 20px 70px #14233d44}.labvotos-modal::backdrop{background:#14233d88}.labvotos-modal-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:26px;cursor:pointer}.labvotos-candidate-toolbar{display:flex;gap:10px;margin:18px 0;flex-wrap:wrap}.labvotos-candidate-toolbar input,.labvotos-candidate-toolbar select{border:1px solid #d8e1ef;border-radius:8px;padding:11px 12px;background:#fff;min-height:42px}.labvotos-candidate-toolbar input{flex:1;min-width:220px}.labvotos-candidate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.labvotos-candidate-card{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid #e4eaf2;border-radius:10px;background:#fbfcfe}.labvotos-candidate-card[hidden]{display:none}.labvotos-candidate-number{min-width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#fff3d8;color:#d98900;font-size:13px;font-weight:800}.labvotos-candidate-card h3{margin:0 0 5px;font-size:16px}.labvotos-candidate-card p,.labvotos-candidate-card small{margin:0;color:#66788c;font-size:12px}.labvotos-candidate-empty{padding:16px;background:#f6f8fb;border-radius:8px}

/* Shared mobile rhythm for widgets embedded in client themes. */
@media (max-width: 600px) {
  .labvotos-widget { margin: 14px 0; padding: 14px; border-radius: 8px; }
  .labvotos-widget header { align-items: flex-start; flex-direction: column; }
  .labvotos-row { gap: 8px; font-size: 12px; }
  .labvotos-service-grid { gap: 12px; }
  .labvotos-service-grid article { padding: 18px; border-radius: 8px; }
  .labvotos-service-grid p, .labvotos-service-detail p { font-size: 15px; line-height: 1.55; }
  .labvotos-service-action, .labvotos-service-more { width: 100%; margin: 10px 0 0; text-align: center; }
  .labvotos-service-actions { display: grid; grid-template-columns: 1fr; gap: 0; }
  .labvotos-columns { gap: 12px; margin-top: 16px; }
  .labvotos-card { padding: 17px; border-radius: 8px; }
  .labvotos-candidate-toolbar input { min-width: 0; width: 100%; }
}
