:root{--bg:#ffffff;--surface:#ffffff;--raised:#f7f8fa;--fg:#0b0d12;--muted:#5b6472;--line:#e7e9ee;--track:#eef0f5;--accent:#1b4dff;--accent-fg:#ffffff;--accent-soft:#e8edff;--ok:#0a7d3c;--pop:#ff3d7f;--focus:#1b4dff;--radius:14px;--radius-lg:20px;--maxw:640px;--row-h:56px;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--bg:#0b0d12;--surface:#12151c;--raised:#161a22;--fg:#f4f6fa;--muted:#9aa4b2;--line:#232833;--track:#1b1f28;--accent:#5b82ff;--accent-fg:#0b0d12;--accent-soft:#17203a;--ok:#35d07f;--pop:#ff6ea1;--focus:#5b82ff}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--fg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-feature-settings:"tnum" 1;line-height:1.4;-webkit-font-smoothing:antialiased}main{max-width:var(--maxw);margin:0 auto;padding:clamp(18px,4vw,32px) clamp(16px,5vw,28px) 72px}h1,h2,h3{margin:0;letter-spacing:-.025em}a{color:inherit}.brandbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0 clamp(18px,5vw,28px)}.wordmark{gap:8px;text-decoration:none;font-weight:800;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;line-height:1.05;color:var(--fg)}.wordmark,.wordmark .mark{display:inline-flex;align-items:center}.wordmark .mark{width:22px;height:22px;border-radius:7px;background:var(--accent);color:var(--accent-fg);justify-content:center;flex:none;font-size:13px;font-weight:900}.wordmark .lines{display:flex;flex-direction:column}.wordmark .lines span:last-child{color:var(--accent)}.brandbar .navlink{font-size:.8rem;font-weight:650;color:var(--muted);text-decoration:none;white-space:nowrap}.brandbar .navlink:hover{color:var(--fg)}.hero{margin-bottom:clamp(20px,5vw,28px)}.hero .eyebrow{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);padding:5px 10px;border-radius:999px;margin-bottom:12px}.hero h1{font-size:clamp(2rem,9vw,3.1rem);font-weight:850;line-height:1.02}.hero .tagline{margin:12px 0 0;font-size:clamp(.98rem,3.6vw,1.1rem);color:var(--muted);max-width:30ch}.hero .counter{margin-top:14px;font-size:.9rem;font-weight:600;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hero .counter strong{color:var(--fg);font-weight:800}.section{margin-top:clamp(26px,6vw,40px)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.section-head h2{font-size:1.05rem;font-weight:750}.section-head .meta{font-size:.82rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.board,.rows{position:relative}.rows{list-style:none;margin:0;padding:0}.row{position:absolute;top:0;left:0;width:100%;height:var(--row-h);display:grid;grid-template-columns:1.5rem 1.9rem 1fr auto;align-items:center;grid-gap:10px;gap:10px;padding:4px 0;transition:transform .48s cubic-bezier(.22,1,.36,1);will-change:transform}.row .rank{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;color:var(--muted);text-align:right;font-size:.95rem}.row .flag{width:1.7rem;height:1.24rem;border-radius:4px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14)}.row .emoji{font-size:1.3rem;text-align:center}.row .body{min-width:0;display:flex;flex-direction:column;justify-content:center}.row .name{display:block;font-weight:650;font-size:.98rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row.is-yours .name:after{content:"your vote";margin-left:8px;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);padding:2px 6px;border-radius:999px;vertical-align:middle}.bar-track{margin-top:6px;height:8px;background:var(--track);overflow:hidden}.bar-fill,.bar-track{display:block;border-radius:6px}.bar-fill{height:100%;background:var(--accent);transition:width .62s cubic-bezier(.22,1,.36,1);min-width:2px}.row.is-yours .bar-fill{background:var(--pop)}.row .stat{display:flex;flex-direction:column;justify-content:center;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.row .count{font-weight:750;font-size:.98rem}.row .share{font-size:.78rem;color:var(--muted)}.empty{border:1px dashed var(--line);border-radius:var(--radius);padding:36px 20px;text-align:center;color:var(--muted)}.empty strong{display:block;color:var(--fg);font-size:1.05rem;margin-bottom:4px}.panel{margin-top:clamp(24px,6vw,34px)}.combo{position:relative}.combo-input{width:100%;height:56px;padding:0 16px;font-size:1.05rem;color:var(--fg);background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius);outline:none}.combo-input:focus-visible{border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 22%,transparent)}.listbox{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;max-height:46vh;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 14px 40px rgba(6,10,20,.16);padding:6px;margin:0;list-style:none}.option{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:10px;cursor:pointer;font-size:1rem}.option .flag{width:1.7rem;height:1.24rem;border-radius:4px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14);flex:none}.option[aria-selected=true]{background:var(--accent-soft)}.option .code{margin-left:auto;color:var(--muted);font-size:.8rem}.vote-btn{margin-top:12px;width:100%;height:58px;font-size:1.1rem;font-weight:800;color:var(--accent-fg);background:var(--accent);border:none;border-radius:var(--radius);cursor:pointer;transition:transform .12s ease,filter .14s ease,opacity .14s ease}.vote-btn:hover{filter:brightness(1.06)}.vote-btn:active{transform:scale(.985)}.vote-btn:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 60%,transparent);outline-offset:2px}.vote-btn:disabled{opacity:.5;cursor:not-allowed}.confirm{border:1.5px solid var(--accent-soft);background:var(--raised);border-radius:var(--radius-lg);padding:20px;animation:pop-in .38s cubic-bezier(.22,1,.36,1) both}@keyframes pop-in{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}.confirm .tick{gap:8px;font-weight:800;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ok)}.confirm .tick,.confirm .tick .dot{display:inline-flex;align-items:center}.confirm .tick .dot{width:18px;height:18px;border-radius:50%;background:var(--ok);color:#fff;justify-content:center;font-size:11px;animation:tick-pop .42s cubic-bezier(.22,1,.36,1) both}@keyframes tick-pop{0%{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}.confirm .choice{display:flex;align-items:center;gap:12px;margin-top:12px}.confirm .choice .flag{width:2.2rem;height:1.6rem;border-radius:4px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14);flex:none}.confirm .choice .label{font-size:1.25rem;font-weight:800;letter-spacing:-.02em}.confirm .standing{margin-top:10px;font-size:1rem;color:var(--fg)}.confirm .standing strong{font-weight:800}.confirm .nudge{margin-top:4px;font-size:.9rem;color:var(--muted)}.confirm .again{display:block;margin-top:10px;color:var(--muted);font-size:.82rem}.share-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.share-btn{display:inline-flex;align-items:center;gap:7px;height:42px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);background:var(--surface);color:var(--fg);font-size:.88rem;font-weight:700;cursor:pointer;text-decoration:none;transition:transform .12s ease,border-color .14s ease}.share-btn:hover{border-color:var(--accent)}.share-btn:active{transform:scale(.97)}.share-btn.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.form-msg{margin-top:10px;font-size:.9rem;color:var(--muted);min-height:1.2em}.form-msg[data-tone=error]{color:#c0392b}.hint{margin-top:10px;font-size:.8rem;color:var(--muted)}.more{margin-top:clamp(40px,10vw,72px);border-top:1px solid var(--line);padding-top:22px}.more h2{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.poll-grid{display:grid;grid-gap:12px;gap:12px}.poll-card{display:block;text-decoration:none;border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:18px;background:var(--surface);transition:border-color .16s ease,transform .16s ease}.poll-card:hover{border-color:var(--accent);transform:translateY(-2px)}.poll-card .status{font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:999px;display:inline-block;margin-bottom:10px}.poll-card .status.live{background:var(--accent-soft);color:var(--accent)}.poll-card .status.closed,.poll-card .status.soon{background:var(--track);color:var(--muted)}.poll-card .q{font-size:1.15rem;font-weight:800;letter-spacing:-.02em;line-height:1.15}.poll-card .winner{display:flex;align-items:center;gap:10px;margin-top:12px}.poll-card .winner .flag{width:1.9rem;height:1.4rem;border-radius:4px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14);flex:none}.poll-card .winner .wname{font-weight:800;font-size:1.02rem}.poll-card .sub{margin-top:8px;font-size:.85rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.poll-card .cta{margin-top:12px;font-size:.86rem;font-weight:700;color:var(--accent)}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-foot{margin-top:48px;font-size:.78rem;text-align:center}.page-foot,.page-foot a{color:var(--muted)}@media (prefers-reduced-motion:reduce){.bar-fill,.poll-card,.row,.share-btn,.vote-btn{transition:none!important}.confirm,.confirm .tick .dot{animation:none!important}}