@font-face{font-family:Bricolage Grotesque;src:url(/fonts/BricolageGrotesque.woff2) format("woff2-variations");font-weight:200 800;font-stretch:75% 100%;font-style:normal;font-display:swap}:root{--bg:#fff;--card:#f3f5f9;--ink:#12142b;--mute:#6a6e8c;--line:#dde2ea;--blue:#2563eb;--blue-soft:#e0ebff;--ok:#13a37b;--warn:#b7791f;--danger:#d1435b;--on:#fff;--font:"Bricolage Grotesque",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:ui-monospace,Menlo,Consolas,monospace}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:17px;letter-spacing:-.01em;color:var(--ink)}.brand:hover{text-decoration:none}.logo{width:30px;height:30px;border-radius:9px;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:800;flex:none}main.container{max-width:560px;margin:0 auto;padding:24px 18px 48px}main.wide{max-width:760px}.hero{max-width:1080px;margin:0 auto;padding:32px 24px 56px;display:grid;grid-gap:48px;gap:48px;align-items:start}@media (min-width:860px){.hero{grid-template-columns:1fr 1fr;gap:64px;min-height:100vh;align-items:center}.hero-copy{position:-webkit-sticky;position:sticky;top:48px}}.hero-title{font-size:clamp(38px,6vw,60px);line-height:1;letter-spacing:-.04em;font-weight:800;margin:0 0 18px}.hero-sub{color:var(--mute);font-size:18px;line-height:1.5;margin:0 0 32px;max-width:42ch}.how{border-top:1px solid var(--line);padding-top:24px}.how-title{font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--mute);margin:0 0 18px}.how-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px}.how-steps li{display:flex;gap:14px;align-items:flex-start;font-size:15px;line-height:1.5;max-width:46ch}.how-steps li b{font-weight:700}.how-num{flex:none;width:28px;height:28px;border-radius:50%;background:var(--blue-soft);color:var(--blue);font-weight:800;font-size:14px;display:grid;place-items:center}.hero-list{background:linear-gradient(180deg,#fbfcfe,var(--bg));border:1px solid var(--line);border-radius:24px;padding:22px 20px;max-height:88vh;overflow:auto}@media (min-width:860px){.hero-list{box-shadow:0 24px 60px -32px rgba(18,20,43,.35)}}.hero-list-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}.opt-cta{display:inline-block;margin-top:12px;color:var(--blue);font-weight:700;font-size:14px}h1{font-size:34px;line-height:1.05;letter-spacing:-.03em;margin:0 0 8px}h1,h2{font-weight:800}h2{font-size:20px;letter-spacing:-.02em;margin:28px 0 12px}.lead,.sub{margin:0 0 22px;font-size:15px;line-height:1.45}.hint,.lead,.muted,.sub{color:var(--mute)}.hint{font-size:13px;margin:14px 2px 0;line-height:1.4}.card{background:var(--card);border-radius:18px;padding:16px 18px;box-shadow:0 1px 0 var(--line)}.card+.card{margin-top:12px}.opt{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:var(--card);border:2px solid transparent;border-radius:18px;padding:14px 16px;margin-bottom:10px;color:inherit;font:inherit;cursor:pointer;box-shadow:0 1px 0 var(--line);transition:transform .15s,border-color .2s,background .2s;text-decoration:none}.opt:active{transform:scale(.985)}.opt:hover{text-decoration:none}.opt.picked{border-color:var(--blue);background:var(--blue-soft)}.av{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;flex:none;font-size:16px}.who{flex:1 1;min-width:0}.who b{display:block;font-size:17px}.who span{color:var(--mute);font-size:14px}.rank{width:34px;height:34px;border-radius:50%;border:2px dashed var(--line);display:grid;place-items:center;font-weight:800;color:#fff;flex:none;transition:all .2s}.picked .rank{border:0;background:var(--blue);transform:scale(1.08)}.grid{display:grid;grid-gap:12px;gap:12px}.steps{display:flex;gap:6px}.steps i{width:26px;height:6px;border-radius:3px;background:var(--line);transition:background .3s,width .3s}.steps i.on{background:var(--blue);width:40px}.steps i.done{background:var(--ok)}.seg{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:14px}.seg button{font:inherit;font-weight:600;padding:18px 6px;border-radius:16px;border:2px solid transparent;background:var(--card);color:inherit;cursor:pointer;box-shadow:0 1px 0 var(--line);transition:all .2s}.seg button[aria-pressed=true]{border-color:var(--blue);background:var(--blue-soft)}.seg button big{display:block;font-size:26px;margin-bottom:4px}.sum{background:var(--card);border-radius:18px;padding:6px 16px;margin-bottom:26px}.sum div{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:15px}.sum div:last-child{border:0}.sum span{color:var(--mute)}.sum b{text-align:right}.nav{display:flex;gap:10px;margin-top:22px}.btn{font:inherit;font-weight:700;font-size:16px;padding:16px;border-radius:16px;border:0;background:var(--blue);color:var(--on);cursor:pointer;transition:opacity .2s,transform .15s;text-align:center}.btn.block{width:100%;display:block}.btn.grow{flex:1 1}.btn.ghost{flex:0 0 auto;background:transparent;color:var(--mute);padding:16px 18px}.btn.secondary{background:var(--blue-soft);color:var(--blue)}.btn.sm{padding:10px 14px;font-size:14px;border-radius:12px}.btn:disabled{opacity:.35;cursor:not-allowed}.btn:not(:disabled):active{transform:scale(.98)}a.btn:hover{text-decoration:none}label.field{display:block;margin-bottom:14px;font-size:14px;font-weight:600;color:var(--mute)}.input,input:not([type]),input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{width:100%;margin-top:6px;padding:14px;font:inherit;font-size:15px;color:var(--ink);background:var(--bg);border:2px solid var(--line);border-radius:14px;transition:border-color .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none}textarea{resize:vertical;min-height:92px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue)}select{background-image:none;cursor:pointer}::placeholder{color:var(--mute);opacity:.7}.input-inline{width:auto;margin-top:0}.row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;padding:5px 11px;border-radius:999px;background:var(--card);color:var(--mute)}.badge:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.badge.open{color:var(--ok);background:#e3f6ef}.badge.draft{color:var(--mute)}.badge.closed{color:var(--warn);background:#fbf1dd}.badge.published{color:var(--blue);background:var(--blue-soft)}.meta{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;color:var(--mute);font-size:14px}.meta code,code.inline{font-family:var(--mono);background:var(--card);padding:2px 7px;border-radius:7px;font-size:13px}.dot{opacity:.5}.back{display:inline-block;margin-bottom:14px;color:var(--mute);font-size:14px}.turnout{margin-top:12px}.turnout .t{height:10px;border-radius:6px;background:var(--line);overflow:hidden}.turnout .f{height:100%;border-radius:6px;background:var(--blue)}.turnout .label{font-size:13px;color:var(--mute);margin-top:6px}.bars{margin-top:8px}.bar{margin:12px 0}.bar .l{display:flex;justify-content:space-between;font-size:14px;margin-bottom:5px}.bar .t{height:12px;background:var(--line);overflow:hidden}.bar .f,.bar .t{border-radius:6px}.bar .f{height:100%;transition:width 1s cubic-bezier(.2,.8,.2,1)}.bar.winner .l b:after{content:" · winner";color:var(--ok);font-weight:700}.alert{padding:13px 15px;border-radius:14px;font-size:14px;margin-bottom:14px;line-height:1.45}.alert.error{color:var(--danger);background:#fdeaed}.alert.success{color:var(--ok);background:#e3f6ef}.alert.info{color:var(--mute);background:var(--card)}.center{text-align:center}.seal{width:84px;height:84px;margin:6px auto 18px;border-radius:50%;background:var(--ok);display:grid;place-items:center;animation:pop .5s cubic-bezier(.2,1.6,.4,1)}.seal svg{width:42px;height:42px;stroke:#fff;fill:none;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60;animation:draw .5s .25s forwards}@keyframes pop{0%{transform:scale(.2);opacity:0}}@keyframes draw{to{stroke-dashoffset:0}}.receipt{background:var(--card);border-radius:18px;padding:18px;margin:18px 0;text-align:left}.code{font-family:var(--mono);font-size:26px;font-weight:700;letter-spacing:.06em;color:var(--blue);margin:2px 0 8px;word-break:break-all}.receipt small{color:var(--mute);line-height:1.45;display:block}.holdwrap{position:relative;overflow:hidden;isolation:isolate;border-radius:28px;padding:38px 0 24px;display:grid;place-items:center;grid-gap:18px;gap:18px;background:#fff;border:1px solid var(--line)}.blob{position:absolute;z-index:-1;border-radius:50%;filter:blur(26px);opacity:.8;transition:scale 1.1s cubic-bezier(.2,.8,.2,1)}.b1{width:180px;height:180px;background:#2563eb;left:-30px;top:-30px;animation:drift 9s ease-in-out infinite alternate}.b2{width:150px;height:150px;background:#ff8a3d;right:-24px;top:40px;animation:drift 11s ease-in-out infinite alternate-reverse}.b3{width:170px;height:170px;background:#13a37b;left:32%;bottom:-70px;animation:drift 13s ease-in-out infinite alternate}.holding .blob{scale:1.4}@keyframes drift{to{transform:translate(40px,26px)}}.hold{position:relative;z-index:1;width:156px;height:156px;border-radius:50%;border:1px solid rgba(255,255,255,.75);background:linear-gradient(145deg,rgba(255,255,255,.6),rgba(255,255,255,.14));-webkit-backdrop-filter:blur(18px) saturate(1.7);backdrop-filter:blur(18px) saturate(1.7);color:var(--ink);font:inherit;font-weight:800;font-size:17px;cursor:pointer;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;box-shadow:0 14px 34px rgba(37,99,235,.28),inset 0 1px 1px rgba(255,255,255,.95),inset 0 -10px 20px rgba(255,255,255,.18);transition:transform .25s}.holding .hold{transform:scale(.95)}.hold svg{position:absolute;inset:0;transform:rotate(-90deg)}.hold circle{fill:none;stroke-width:8}.hold .bg{stroke:rgba(255,255,255,.55)}.hold .fg{stroke:var(--ink);stroke-linecap:round;stroke-dasharray:439.8;stroke-dashoffset:439.8}.hold span{position:relative;text-shadow:0 1px 10px rgba(255,255,255,.9)}.liquid{position:absolute;inset:9px;border-radius:50%;overflow:hidden;pointer-events:none}.liquid:before{content:"";position:absolute;left:-15%;right:-15%;top:0;height:100%;border-radius:42%;transform:translateY(calc(100% - var(--p,0)*100%));background:linear-gradient(180deg,rgba(37,99,235,.5),rgba(19,163,123,.55));transition:transform .5s ease-out}.holding .liquid:before{transition:none}.holdlabel{position:relative;font-size:13px;color:var(--ink);opacity:.75;text-align:center;padding:0 16px}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:var(--mute);font-weight:600}td,th{padding:8px;border-bottom:1px solid var(--line)}td code{font-family:var(--mono);color:var(--blue);font-size:13px}fieldset{border:1px solid var(--line);border-radius:18px;padding:14px 16px 6px;margin:0 0 12px;background:var(--card)}legend{font-weight:800;padding:0 6px;letter-spacing:-.01em}.empty{text-align:center;color:var(--mute);padding:40px 16px;border:2px dashed var(--line);border-radius:18px}.toolbar{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.tag{display:inline-block;font-size:12px;margin-top:6px}.tag,ol.rounds{color:var(--mute)}ol.rounds{font-size:14px;padding-left:18px}ol.rounds li{margin-bottom:4px}.hide{display:none}.toast-wrap{position:fixed;left:0;right:0;bottom:24px;display:flex;justify-content:center;z-index:50;pointer-events:none;padding:0 16px}.toast{pointer-events:auto;max-width:440px;width:100%;display:flex;align-items:flex-start;gap:12px;background:var(--ink);color:#fff;border-radius:16px;padding:14px 16px;box-shadow:0 12px 34px rgba(18,20,43,.3);font-size:15px;line-height:1.4;animation:toast-in .25s cubic-bezier(.2,.8,.2,1)}.toast.warn{background:#1f1333}.toast .ico{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:var(--warn);color:#fff}.toast.voted .ico{background:var(--ok)}.toast b{display:block}.toast .x{margin-left:auto;background:none;border:0;color:rgba(255,255,255,.7);font-size:18px;cursor:pointer;padding:0 4px}@keyframes toast-in{0%{transform:translateY(16px);opacity:0}}.faint{font-size:13px}.faint,.lead{color:var(--mute)}.lead{margin:0 0 22px;font-size:15px;line-height:1.45}main.container.narrow{max-width:460px}.grid.cols-2{grid-template-columns:1fr}@media (min-width:620px){.grid.cols-2{grid-template-columns:1fr 1fr}}.card-link{display:block;transition:transform .15s,border .2s;border:2px solid transparent}.card-link:hover{text-decoration:none;border-color:var(--blue)}.card-title{font-size:18px;font-weight:800;letter-spacing:-.01em}.turnout .track{height:10px;border-radius:6px;background:var(--line);overflow:hidden}.turnout .fill{height:100%;border-radius:6px;background:var(--blue)}.result-row{margin:12px 0;list-style:none}.result-row .top{display:flex;justify-content:space-between;font-size:14px;margin-bottom:5px}.result-row .cand{font-weight:700}.result-row .votes{color:var(--mute)}.result-row .track{height:12px;border-radius:6px;background:var(--line);overflow:hidden}.result-row .bar{height:100%;border-radius:6px;background:var(--blue);transition:width 1s cubic-bezier(.2,.8,.2,1)}.result-row.winner .cand:after{content:" · winner";color:var(--ok);font-weight:700;font-size:12px}.result-row.winner .bar{background:var(--ok)}.result-row.abstain .cand,.result-row.abstain .cand:after{color:var(--mute);font-weight:600}.result-row.abstain .cand:after{content:" · abstentions";font-size:12px}.result-row.abstain .bar{background:var(--line)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation-duration:.01s!important}}