@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,500&display=swap";.group{margin-bottom:36px}.group__header{margin-bottom:20px;padding:0 4px}.group__title{color:var(--color-text);align-items:center;gap:12px;font-size:1.5rem;display:flex}.group__title:before{content:"";background:var(--color-electric);border-radius:2px;width:3px;height:22px;display:inline-block}.group--warm .group__title:before{background:var(--color-warm)}.group__cards{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=640px){.group__cards{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.group__title{font-size:1.25rem}.group__header{align-items:center}}.group__cards:has(>:only-child){justify-content:center;display:flex}.group__cards:has(>:only-child)>*{width:min(450px,100%)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;transition:box-shadow .2s,border-color .2s;display:flex}.card:hover{box-shadow:var(--shadow-md)}.card--sm{padding:16px 14px}.card--md{padding:22px 20px}.card--lg{padding:28px 24px}.combobox{position:relative}.combobox__control{background:var(--color-cotton);border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:text;align-items:center;gap:10px;min-height:44px;padding:11px 14px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.combobox--open .combobox__control{border-color:var(--color-electric);background:var(--color-surface);box-shadow:0 0 0 3px var(--color-electric-soft);border-bottom-right-radius:0;border-bottom-left-radius:0}.combobox--selected .combobox__control{border-color:var(--color-electric);background:var(--color-electric-soft)}.combobox__icon{color:var(--color-text-muted);align-items:center;transition:color .15s;display:flex}.combobox--selected .combobox__icon,.combobox--open .combobox__icon{color:var(--color-electric)}.combobox__input{min-width:0;color:var(--color-text);background:0 0;border:none;outline:none;flex:1;font-size:.9rem;font-weight:500}.combobox__input::placeholder{color:var(--color-text-muted);font-weight:400}.combobox--selected .combobox__input{color:var(--color-electric);font-weight:600}.combobox__clear{width:20px;height:20px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;transition:all .15s;display:flex}.combobox__clear:hover{color:var(--color-text);background:#2d2d2d14}.combobox__list{background:var(--color-surface);border:1.5px solid var(--color-electric);border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:20;border-top:none;max-height:240px;margin:0;padding:4px 0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.combobox__option{color:var(--color-text);cursor:pointer;align-items:center;gap:10px;padding:9px 14px;font-size:.88rem;font-weight:500;transition:background .1s;display:flex}.combobox__option:hover,.combobox__option--active{background:var(--color-electric-soft)}.combobox__option mark{color:var(--color-electric);background:0 0;font-weight:700}.combobox__avatar{background:var(--color-cotton);border:1px solid var(--color-border);width:24px;height:24px;color:var(--color-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.62rem;font-weight:700;display:flex}.combobox__option-name{flex:1}.combobox__empty{text-align:center;color:var(--color-text-muted);padding:14px;font-size:.85rem;font-style:italic}.combobox--warm.combobox--open .combobox__control{border-color:var(--color-warm);box-shadow:0 0 0 3px var(--color-warm-soft)}.combobox--warm.combobox--selected .combobox__control{border-color:var(--color-warm);background:var(--color-warm-soft)}.combobox--warm.combobox--selected .combobox__icon,.combobox--warm.combobox--open .combobox__icon,.combobox--warm.combobox--selected .combobox__input{color:var(--color-warm)}.combobox--warm .combobox__list{border-color:var(--color-warm)}.combobox--warm .combobox__option:hover,.combobox--warm .combobox__option--active{background:var(--color-warm-soft)}.combobox--warm .combobox__option mark{color:var(--color-warm)}.combobox--disabled .combobox__control{opacity:.5;cursor:not-allowed;background:var(--color-cotton);border-color:var(--color-border)}.combobox--disabled .combobox__input{cursor:not-allowed}@media (width<=640px){.combobox__list{max-height:200px}}.vote-card{position:relative}.vote-card--answered{background:linear-gradient(180deg, var(--color-electric-softer) 0%, var(--color-surface) 40%);border-color:#3171c666}.group--warm .vote-card--answered{background:linear-gradient(180deg, var(--color-warm-soft) 0%, var(--color-surface) 40%);border-color:#d97a4d66}.vote-card__badge{background:var(--color-electric);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;display:flex;position:absolute;top:14px;right:14px}.group--warm .vote-card__badge{background:var(--color-warm)}.vote-card__head{justify-self:center;margin-bottom:16px}.vote-card__icon{object-fit:contain;border-radius:var(--radius-xs);flex-shrink:0;width:100px;height:100px}.vote-card__title{padding-top:4px;font-size:1.25rem;line-height:1.35}.vote-card__combobox{margin-top:auto}@media (width<=640px){.vote-card{padding:18px 16px}}.btn{cursor:pointer;font-weight:600;font-family:var(--font-sans);border:none;border-radius:999px;transition:background .15s,transform .1s,box-shadow .15s}.btn--primary{background:var(--color-electric);color:#fff;box-shadow:0 4px 14px #3171c640}.btn--primary:hover:not(:disabled){background:var(--color-electric-dark)}.btn--primary:active:not(:disabled){transform:scale(.98)}.btn--primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.btn--secondary{color:var(--color-text-muted);border:1.5px solid var(--color-border);background:0 0}.btn--secondary:hover:not(:disabled){border-color:var(--color-text-muted);color:var(--color-text)}.btn--ghost{background:var(--color-surface);color:var(--color-text-muted);border:1px solid var(--color-border)}.btn--ghost:hover:not(:disabled){color:var(--color-electric);border-color:var(--color-electric)}.btn--ghost:disabled{opacity:.6;cursor:wait}.btn--sm{padding:8px 16px;font-size:.82rem}.btn--md{padding:12px 28px;font-size:.95rem}.btn--lg{text-transform:uppercase;letter-spacing:.08em;padding:16px 40px;font-size:.95rem}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;background:#2d2d2d73;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface);border-radius:var(--radius-lg);text-align:center;max-width:380px;box-shadow:var(--shadow-lg);padding:32px 28px}.modal__title{color:var(--color-text);margin-bottom:12px;font-size:1.5rem}.modal__text{font-size:.95rem;line-height:1.5}.modal__actions{margin-top:24px}.voter-gate{justify-content:center;align-items:center;min-height:60vh;padding:24px 0;display:flex}.voter-gate__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:460px;box-shadow:var(--shadow-md);border-top:3px solid var(--color-electric);padding:36px 32px;transition:border-color .2s}.voter-gate--warm .voter-gate__card{border-top-color:var(--color-warm)}.voter-gate__title{text-align:center;margin:0 0 10px;font-size:1.6rem}.voter-gate__subtitle{text-align:center;margin:0 0 28px;font-size:.92rem;line-height:1.5}.voter-gate__form{flex-direction:column;gap:18px;display:flex}.voter-gate__field{flex-direction:column;gap:8px;display:flex}.voter-gate__label{color:var(--color-text-muted);letter-spacing:.02em;font-size:.82rem;font-weight:600}.voter-gate__select-wrapper{position:relative}.voter-gate__select{appearance:none;background:var(--color-cotton);border:1.5px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text);cursor:pointer;padding:12px 40px 12px 14px;font-family:inherit;font-size:.92rem;font-weight:500;transition:border-color .15s,background .15s,box-shadow .15s}.voter-gate__select:hover{border-color:var(--color-electric)}.voter-gate__select:focus{border-color:var(--color-electric);box-shadow:0 0 0 3px var(--color-electric-soft);outline:none}.voter-gate__select:valid{border-color:var(--color-electric);font-weight:600}.voter-gate--warm .voter-gate__select:hover,.voter-gate--warm .voter-gate__select:focus,.voter-gate--warm .voter-gate__select:valid{border-color:var(--color-warm)}.voter-gate--warm .voter-gate__select:focus{box-shadow:0 0 0 3px var(--color-warm-soft)}.voter-gate__select-wrapper:after{content:"";border-right:2px solid var(--color-text-muted);border-bottom:2px solid var(--color-text-muted);pointer-events:none;width:8px;height:8px;position:absolute;top:50%;right:16px;transform:translateY(-70%)rotate(45deg)}.voter-gate__submit{width:100%;margin-top:8px}@media (width<=640px){.voter-gate__card{padding:28px 22px}.voter-gate__title{font-size:1.35rem}}.voting-form__count{background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;padding:4px 12px}.voting-form__error{color:var(--color-danger);background:var(--color-danger-soft);border-radius:var(--radius-sm);margin-bottom:20px;padding:12px 16px;font-size:.9rem}.voting-form__submit{margin:36px auto 0;display:block}.voting-form__done{padding:64px 16px}.voting-form__done h2{margin-bottom:8px;font-size:1.9rem}.result-card__head{margin-bottom:18px}.result-card__icon{object-fit:contain;border-radius:var(--radius-xs);flex-shrink:0;width:100px;height:100px}.result-card__title{padding-top:4px;font-size:1.25rem;line-height:1.35}.winner{background:linear-gradient(180deg, var(--color-electric-softer) 0%, var(--color-surface) 100%);border-radius:var(--radius-md);border:1px solid #3171c633;margin-top:auto;padding:14px}.group--warm .winner{background:linear-gradient(180deg, var(--color-warm-soft) 0%, var(--color-surface) 100%);border-color:#d97a4d40}.winner__avatar{background:var(--color-electric);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.8rem;font-weight:700;display:flex;box-shadow:0 3px 10px #3171c64d}.group--warm .winner__avatar{background:var(--color-warm);box-shadow:0 3px 10px #d97a4d4d}.winner__body{flex-direction:column;min-width:0;display:flex}.winner__label{color:var(--color-electric);letter-spacing:.08em;margin-bottom:2px}.group--warm .winner__label{color:var(--color-warm)}.winner__name{color:var(--color-text);font-size:.92rem}.winner__votes{background:var(--color-electric);color:#fff;border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:.75rem;font-weight:700}.group--warm .winner__votes{background:var(--color-warm)}.winner__votes--single{background:var(--color-electric-soft);color:var(--color-electric)}.group--warm .winner__votes--single{background:var(--color-warm-soft);color:var(--color-warm)}.result-card__empty{margin-top:auto;padding:22px 0 8px}@media (width<=640px){.result-card{padding:18px 16px}}.results-view__loading{padding:56px 16px;font-size:1rem}.results-header{margin-bottom:36px;padding:0 4px}.stat{flex-direction:column;display:flex}.stat__value{color:var(--color-text);margin-bottom:4px;font-size:2rem;line-height:1}.stat__label{letter-spacing:.12em}@media (width<=640px){.results-header{flex-direction:column;align-items:flex-start}}:root{--color-cotton:#f4f3f1;--color-moonless:#2d2d2d;--color-electric:#3171c6;--color-electric-dark:#24568f;--color-electric-soft:#3171c614;--color-electric-softer:#3171c60a;--color-warm:#d97a4d;--color-warm-soft:#d97a4d1a;--color-bg:var(--color-cotton);--color-text:var(--color-moonless);--color-text-muted:#726f68;--color-surface:#fff;--color-border:#e5e2db;--color-danger:#c1483a;--color-danger-soft:#c1483a14;--shadow-sm:0 1px 3px #2d2d2d0a;--shadow-md:0 2px 10px #2d2d2d0d;--shadow-lg:0 12px 32px #2d2d2d1a;--radius-lg:18px;--radius-md:12px;--radius-sm:8px;--font-serif:"Fraunces", "Iowan Old Style", Georgia, serif;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}h1,h2,h3,p,ul{margin:0}button,input{font-family:inherit}.page{max-width:880px;margin:0 auto;padding:40px 20px 80px}.page-header{text-align:center;margin-bottom:48px}.page-header__title{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--color-text);margin-bottom:10px;font-size:2.75rem;font-style:italic;font-weight:500}.page-header__subtitle{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.9rem}@media (width<=640px){.page{padding:24px 16px 100px}.page-header__title{font-size:2rem}}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.shrink-0{flex-shrink:0}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-6{gap:28px}.text-serif{font-family:var(--font-serif);font-style:italic;font-weight:500}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:.85rem}.text-xs{font-size:.75rem}.text-center{text-align:center}.uppercase{text-transform:uppercase;letter-spacing:.08em}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.italic{font-style:italic}.font-bold{font-weight:700}.font-semibold{font-weight:600}
