:root{--csp-sv-violet:#6d4aff;--csp-sv-violet-dark:#5234dc;--csp-sv-ink:#172033;--csp-sv-muted:#6b7280;--csp-sv-line:#e5e7eb;--csp-sv-soft:#f7f7fb;--csp-sv-success:#0f9f6e;--csp-sv-danger:#c73e4d}
.csp-sv-modal[hidden],.csp-sv-panel[hidden],#csp-sv-max-wrap[hidden],.csp-sv-preview[hidden]{display:none!important}
.csp-sv-modal-open{overflow:hidden}
.csp-sv-toolbar-item button{appearance:none;background:transparent;border:0;cursor:pointer;padding:0;color:inherit}
.csp-sv-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:20px}
.csp-sv-backdrop{position:absolute;inset:0;background:rgba(12,18,31,.64);backdrop-filter:blur(8px)}
.csp-sv-dialog{position:relative;width:min(760px,100%);max-height:min(900px,calc(100vh - 40px));overflow:auto;background:#fff;border-radius:24px;box-shadow:0 32px 90px rgba(13,19,35,.28);color:var(--csp-sv-ink)}
.csp-sv-dialog-header{display:flex;justify-content:space-between;align-items:flex-start;padding:26px 28px 18px;border-bottom:1px solid var(--csp-sv-line)}
.csp-sv-dialog-header h2{font-size:26px;line-height:1.2;margin:4px 0 0;color:var(--csp-sv-ink)}
.csp-sv-kicker{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--csp-sv-violet)}
.csp-sv-icon-button{width:38px;height:38px;border:1px solid var(--csp-sv-line);border-radius:50%;background:#fff;font-size:25px;line-height:1;color:#596174;cursor:pointer}
.csp-sv-icon-button:hover,.csp-sv-icon-button:focus-visible{border-color:var(--csp-sv-violet);color:var(--csp-sv-violet);outline:3px solid rgba(109,74,255,.14)}
.csp-sv-tabs{display:flex;gap:8px;padding:14px 28px 0}
.csp-sv-tab{border:0;background:transparent;color:var(--csp-sv-muted);font-weight:750;padding:10px 14px;border-radius:12px;cursor:pointer}
.csp-sv-tab.is-active{background:#f0edff;color:var(--csp-sv-violet-dark)}
.csp-sv-panel{padding:22px 28px 28px}
.csp-sv-field{position:relative;margin-bottom:18px}
.csp-sv-field label,.csp-sv-fieldset legend{display:block;font-size:13px;font-weight:800;margin:0 0 8px;color:#30384a}
.csp-sv-field label span,.csp-sv-fieldset legend span{font-weight:500;color:var(--csp-sv-muted)}
.csp-sv-field textarea,.csp-sv-field input,.csp-sv-field select,.csp-sv-option-row input{box-sizing:border-box;width:100%;border:1px solid #d9dce3;border-radius:13px;background:#fff;padding:12px 14px;color:var(--csp-sv-ink);font:inherit;transition:border-color .18s,box-shadow .18s}
.csp-sv-field textarea:focus,.csp-sv-field input:focus,.csp-sv-field select:focus,.csp-sv-option-row input:focus{border-color:var(--csp-sv-violet);box-shadow:0 0 0 3px rgba(109,74,255,.12);outline:0}
.csp-sv-counter{position:absolute;right:10px;bottom:8px;font-size:11px;color:#8b91a0;background:#fff;padding:2px 5px}
.csp-sv-fieldset{border:0;padding:0;margin:0 0 20px}
.csp-sv-options-editor{display:grid;gap:9px;margin-bottom:10px}
.csp-sv-option-row{display:grid;grid-template-columns:28px 1fr 35px;align-items:center;gap:8px}
.csp-sv-option-row>span{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:#f0edff;color:var(--csp-sv-violet-dark);font-size:12px;font-weight:800}
.csp-sv-option-row>button{width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:#8b91a0;font-size:20px;cursor:pointer}
.csp-sv-option-row>button:hover:not(:disabled){background:#fff0f1;color:var(--csp-sv-danger)}
.csp-sv-option-row>button:disabled{opacity:.25;cursor:not-allowed}
.csp-sv-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.csp-sv-switch{display:flex;grid-column:1/-1;align-items:center;gap:10px;padding:2px 0 18px;font-size:13px;font-weight:650;cursor:pointer}
.csp-sv-switch input{position:absolute;opacity:0;pointer-events:none}
.csp-sv-switch>span{position:relative;width:42px;height:24px;border-radius:99px;background:#d8dbe3;transition:.2s}
.csp-sv-switch>span:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.18);transition:.2s}
.csp-sv-switch input:checked+span{background:var(--csp-sv-violet)}
.csp-sv-switch input:checked+span:after{transform:translateX(18px)}
.csp-sv-switch input:focus-visible+span{outline:3px solid rgba(109,74,255,.18)}
.csp-sv-context{display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid #ded8ff;border-radius:14px;background:#f8f6ff;margin:0 0 18px}
.csp-sv-context>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#ebe6ff;color:var(--csp-sv-violet)}
.csp-sv-context strong,.csp-sv-context small{display:block}.csp-sv-context strong{font-size:12px}.csp-sv-context small{color:var(--csp-sv-muted);margin-top:2px}
.csp-sv-actions{display:flex;align-items:center;gap:9px;padding-top:18px;border-top:1px solid var(--csp-sv-line)}
.csp-sv-action-spacer{flex:1}
.csp-sv-primary,.csp-sv-secondary{appearance:none;border-radius:12px;padding:11px 16px;font-weight:800;line-height:1.2;cursor:pointer;transition:.18s}
.csp-sv-primary{border:1px solid var(--csp-sv-violet);background:var(--csp-sv-violet);color:#fff;box-shadow:0 7px 18px rgba(109,74,255,.22)}
.csp-sv-primary:hover,.csp-sv-primary:focus-visible{background:var(--csp-sv-violet-dark);border-color:var(--csp-sv-violet-dark);transform:translateY(-1px);outline:3px solid rgba(109,74,255,.16)}
.csp-sv-secondary{border:1px solid #d9dce3;background:#fff;color:#384152}
.csp-sv-secondary:hover,.csp-sv-secondary:focus-visible{border-color:var(--csp-sv-violet);color:var(--csp-sv-violet-dark);outline:3px solid rgba(109,74,255,.1)}
.csp-sv-secondary:disabled{opacity:.5;cursor:not-allowed}
.csp-sv-status,.csp-sv-card-status{min-height:20px;margin:7px 0;font-size:13px}.csp-sv-status.is-error,.csp-sv-card-status.is-error,.csp-sv-mine.is-error{color:var(--csp-sv-danger)}.csp-sv-status.is-success,.csp-sv-card-status.is-success{color:var(--csp-sv-success)}.csp-sv-status.is-busy,.csp-sv-card-status.is-busy{color:var(--csp-sv-violet-dark)}
.csp-sv-preview{margin:18px 0;padding:18px;border:1px solid var(--csp-sv-line);border-radius:16px;background:var(--csp-sv-soft)}
.csp-sv-preview h3{font-size:18px;margin:12px 0}.csp-sv-preview ul{display:grid;gap:8px;list-style:none;margin:0;padding:0}.csp-sv-preview li{padding:10px 12px;border:1px solid var(--csp-sv-line);background:#fff;border-radius:11px}
.csp-sv-mine{display:grid;gap:11px;min-height:150px}
.csp-sv-mine-item{padding:15px;border:1px solid var(--csp-sv-line);border-radius:14px}.csp-sv-mine-item h3{font-size:15px;margin:0 0 5px}.csp-sv-mine-item p{font-size:12px;color:var(--csp-sv-muted);margin:0 0 10px}.csp-sv-mine-actions{display:flex;gap:8px}.csp-sv-mine-actions button{padding:8px 12px;font-size:12px}
.csp-sv-link{appearance:none;border:0;background:transparent;color:var(--csp-sv-violet-dark);font-weight:750;cursor:pointer;padding:7px}.csp-sv-link.is-danger{color:var(--csp-sv-danger)}
.csp-sv-skeleton{height:88px;border-radius:14px;background:linear-gradient(90deg,#f2f3f5 25%,#fafafa 42%,#f2f3f5 62%);background-size:400% 100%;animation:csp-sv-shimmer 1.2s ease infinite}
@keyframes csp-sv-shimmer{0%{background-position:100% 0}100%{background-position:0 0}}

.csp-sv-card{margin:18px 0 4px;padding:20px;border:1px solid #e1e3ea;border-radius:19px;background:linear-gradient(180deg,#fff 0,#fbfbfe 100%);box-shadow:0 9px 28px rgba(31,39,58,.07);color:var(--csp-sv-ink)}
.csp-sv-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.csp-sv-badge{display:inline-flex;align-items:center;border-radius:99px;padding:5px 9px;font-size:10px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.csp-sv-badge-active{background:#e8fbf4;color:#087b56}.csp-sv-badge-scheduled{background:#edf2ff;color:#3857b7}.csp-sv-badge-closed{background:#eff1f4;color:#5f6775}.csp-sv-badge-draft{background:#fff6de;color:#966b08}
.csp-sv-card-type{font-size:11px;font-weight:750;color:var(--csp-sv-muted)}
.csp-sv-card h3{font-size:20px;line-height:1.35;margin:0 0 6px;color:var(--csp-sv-ink)}
.csp-sv-time{font-size:11px;color:var(--csp-sv-muted);margin-bottom:16px}
.csp-sv-card-options{display:grid;gap:9px}.csp-sv-card-option{position:relative;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:12px 13px;border:1px solid #e0e3e9;border-radius:13px;background:#fff;cursor:pointer;overflow:hidden;transition:.18s}.csp-sv-card-option:hover{border-color:#c9bfff}.csp-sv-card-option.is-selected{border-color:var(--csp-sv-violet);background:#f8f6ff}.csp-sv-card-option input{position:absolute;opacity:0}.csp-sv-control{display:grid;place-items:center;width:20px;height:20px;border:2px solid #b9bfca;border-radius:50%;background:#fff;z-index:2}.csp-sv-card-option input[type=checkbox]+.csp-sv-control{border-radius:6px}.csp-sv-card-option input:checked+.csp-sv-control{border-color:var(--csp-sv-violet);box-shadow:inset 0 0 0 4px #fff;background:var(--csp-sv-violet)}.csp-sv-card-option input[type=checkbox]:checked+.csp-sv-control{box-shadow:none}.csp-sv-card-option input[type=checkbox]:checked+.csp-sv-control:after{content:"✓";color:#fff;font-size:12px;font-weight:900}.csp-sv-card-option input:focus-visible+.csp-sv-control{outline:3px solid rgba(109,74,255,.17)}.csp-sv-option-label{font-size:13px;font-weight:650;z-index:2}.csp-sv-card-option strong{font-size:12px;color:var(--csp-sv-violet-dark);z-index:2}.csp-sv-result-track{position:absolute;inset:auto 0 0;height:3px;background:#f0f1f4}.csp-sv-result-track span{display:block;height:100%;background:linear-gradient(90deg,var(--csp-sv-violet),#9d84ff);transition:width .55s ease}
.csp-sv-results-locked,.csp-sv-turnout{font-size:11px;color:var(--csp-sv-muted);margin:12px 0 0}.csp-sv-card-actions{display:flex;align-items:center;gap:10px;margin-top:13px}.csp-sv-voted{font-size:12px;font-weight:750;color:var(--csp-sv-success)}.csp-sv-vote-form.is-loading{opacity:.68;pointer-events:none}
@media(max-width:640px){.csp-sv-modal{padding:0;align-items:end}.csp-sv-dialog{max-height:94vh;border-radius:22px 22px 0 0}.csp-sv-dialog-header{padding:20px 18px 15px}.csp-sv-dialog-header h2{font-size:22px}.csp-sv-tabs{padding:11px 18px 0;overflow:auto}.csp-sv-panel{padding:18px}.csp-sv-grid{grid-template-columns:1fr}.csp-sv-actions{flex-wrap:wrap}.csp-sv-action-spacer{display:none}.csp-sv-actions button{flex:1 1 42%}.csp-sv-card{padding:16px;border-radius:16px}.csp-sv-card h3{font-size:18px}.csp-sv-card-actions{align-items:flex-start;flex-direction:column}.csp-sv-card-actions .csp-sv-primary{width:100%}}
@media(prefers-reduced-motion:reduce){.csp-sv-primary,.csp-sv-result-track span,.csp-sv-skeleton{transition:none;animation:none}}
