@font-face{font-family:League Gothic;font-style:normal;font-display:swap;font-weight:400;src:url(/build/assets/league-gothic-latin-400-normal-BQfHUhlb.woff2)format("woff2"),url(/build/assets/league-gothic-latin-400-normal-DHErDkGv.woff)format("woff")}@font-face{font-family:Stick No Bills;font-style:normal;font-display:swap;font-weight:800;src:url(/build/assets/stick-no-bills-latin-800-normal-x3Nne76_.woff2)format("woff2"),url(/build/assets/stick-no-bills-latin-800-normal-Fh5hsVCz.woff)format("woff")}:root{--fuechse-rot:#d71920;--fuechse-grau-dunkel:#1d1d1d;--fuechse-schwarz:#000;--fuechse-weiss:#fff;--hafenstahl:#9a9a9a;--fuechse-orange:#f36f21;--neutral-900:#1a1a1a;--neutral-800:#1d1e1c;--neutral-700:#2b2b2b;--neutral-600:#333;--neutral-500:#444;--neutral-300:#ccc;--bg:var(--fuechse-grau-dunkel);--bg-card:var(--neutral-700);--bg-inset:var(--neutral-900);--bg-transparent-rot:#d7192033;--border-transparent:#ffffff1a;--text:var(--fuechse-weiss);--text-muted:var(--hafenstahl);--text-error:#ff8a8f;--success:#3fae5a;--font-h1:"Stick No Bills", "League Gothic", Impact, sans-serif;--font-heading:"League Gothic", Impact, "Arial Narrow", sans-serif;--font-text:"Trebuchet MS", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--radius-card:10px;--radius-button:4px;--shadow-card:0 4px 15px #0000004d;--transition:.3s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background-color:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-text);flex-direction:column;line-height:1.5;display:flex}img,svg{max-width:100%;display:block}input,button,select,textarea{font:inherit;color:inherit}h1{font-family:var(--font-h1);letter-spacing:.02em;font-weight:800;line-height:1.05}h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:.01em;font-weight:400;line-height:1.1}h2 strong,h2 b,h3 strong,h3 b{font-weight:inherit;text-shadow:.4px 0,-.4px 0,0 .4px,0 -.4px}a{color:var(--fuechse-rot);transition:color var(--transition);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--fuechse-weiss);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.btn{border:2px solid var(--fuechse-rot);border-radius:var(--radius-button);background-color:var(--bg-transparent-rot);min-height:48px;color:var(--text);font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background-color var(--transition), border-color var(--transition), transform var(--transition), box-shadow var(--transition);justify-content:center;align-items:center;gap:.5em;padding:10px 32px;font-size:1.35rem;line-height:1.1;text-decoration:none;display:inline-flex}.btn:hover{background-color:var(--fuechse-rot);color:var(--text);text-decoration:none;transform:translateY(-2px);box-shadow:0 5px 15px #d719204d}.btn:active{transform:translateY(0)}.btn:disabled,.btn[aria-disabled=true]{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.btn--solid{background-color:var(--fuechse-rot)}.btn--solid:hover{background-color:#bf161c}.btn--ghost{border-color:var(--hafenstahl);background-color:#1d1d1d33}.btn--ghost:hover{border-color:var(--hafenstahl);background-color:var(--hafenstahl);box-shadow:none}.btn--light{border-color:var(--fuechse-weiss);background-color:var(--fuechse-weiss);color:var(--fuechse-grau-dunkel)}.btn--light:hover{border-color:var(--neutral-300);background-color:var(--neutral-300);color:var(--fuechse-grau-dunkel);box-shadow:none}.btn--block{width:100%}.btn--small{min-height:36px;padding:4px 16px;font-size:1.1rem}.btn--large{min-height:60px;padding:12px 40px;font-size:1.7rem}.divider{background:linear-gradient(90deg, transparent, var(--fuechse-rot), transparent);border:0;height:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.fan-header,.fan,.fan-footer__inner{width:100%;max-width:640px;margin:0 auto;padding-left:16px;padding-right:16px}.fan-header{justify-content:space-between;align-items:center;gap:16px;padding-top:12px;padding-bottom:12px;display:flex}.fan-header__brand{flex-shrink:0;display:block}.fan-header__brand img{width:auto;height:56px}.fan-header__wordmark{font-family:var(--font-heading);letter-spacing:.04em;color:var(--text);text-transform:uppercase;font-size:1.6rem}.fan-header__link{color:var(--text-muted);font-size:.85rem}.fan-header__link:hover{color:var(--text)}.fan{flex:1;padding-bottom:32px}.fan-footer{border-top:1px solid var(--border-transparent);color:var(--text-muted);text-align:center;font-size:.8rem}.fan-footer__inner{padding-top:20px;padding-bottom:calc(24px + env(safe-area-inset-bottom))}.fan-footer nav{justify-content:center;gap:20px;margin-bottom:6px;display:flex}.fan-footer a{color:var(--text-muted)}.fan-footer a:hover{color:var(--text)}.match{text-align:center;padding:12px 0 24px}.match__kicker{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}.match__title{color:var(--text);margin:6px 0 8px;font-size:clamp(2.5rem,12vw,3.75rem)}.match__teams{font-family:var(--font-heading);letter-spacing:.02em;font-size:1.55rem;line-height:1.15}.match__vs{color:var(--fuechse-rot);margin:0 .3em}.vote-title{color:var(--fuechse-rot);text-align:center;margin-bottom:14px;font-size:2rem}.candidates{border:0;gap:12px;display:grid}.candidate{border:2px solid var(--border-transparent);border-radius:var(--radius-card);background-color:var(--bg-card);box-shadow:var(--shadow-card);cursor:pointer;transition:border-color var(--transition), background-color var(--transition), transform .15s ease;-webkit-tap-highlight-color:transparent;grid-template-columns:84px 1fr auto;align-items:center;gap:14px;padding:10px 16px 10px 10px;display:grid;position:relative;overflow:hidden}.candidate:hover{border-color:#d7192080}.candidate:active{transform:scale(.99)}.candidate.is-selected{border-color:var(--fuechse-rot);background-color:#3a1f20}.candidate:has(.candidate__input:checked){border-color:var(--fuechse-rot);background-color:#3a1f20}.candidate:has(.candidate__input:focus-visible){outline:2px solid var(--fuechse-weiss);outline-offset:2px}.candidate__input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.candidate__photo{z-index:1;aspect-ratio:4/5;background-color:var(--neutral-600);border-radius:6px;width:84px;position:relative;overflow:hidden}.candidate__photo img{object-fit:cover;width:100%;height:100%}.candidate__initials{height:100%;color:var(--text-muted);font-family:var(--font-heading);place-items:center;font-size:2.2rem;display:grid}.candidate__body{z-index:1;flex-direction:column;min-width:0;display:flex;position:relative}.candidate__number{color:var(--fuechse-rot);font-family:var(--font-heading);letter-spacing:.06em;font-size:1.15rem}.candidate__first{color:var(--neutral-300);font-size:.9rem;line-height:1.2}.candidate__last{color:var(--text);font-family:var(--font-heading);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:1.9rem;line-height:1.05;overflow:hidden}.candidate__position{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-top:2px;font-size:.75rem}.candidate__watermark{color:#ffffff0b;font-family:var(--font-heading);pointer-events:none;font-size:6.5rem;line-height:1;position:absolute;bottom:-.18em;right:52px}.candidate__check{z-index:1;border:2px solid var(--hafenstahl);width:30px;height:30px;transition:background-color var(--transition), border-color var(--transition);border-radius:50%;place-items:center;display:grid;position:relative}.candidate__check svg{opacity:0;width:16px;height:16px;transition:opacity .2s,transform .2s;transform:scale(.5)}.candidate.is-selected .candidate__check{border-color:var(--fuechse-rot);background-color:var(--fuechse-rot)}.candidate:has(.candidate__input:checked) .candidate__check{border-color:var(--fuechse-rot);background-color:var(--fuechse-rot)}.candidate.is-selected .candidate__check svg{opacity:1;transform:scale(1)}.candidate:has(.candidate__input:checked) .candidate__check svg{opacity:1;transform:scale(1)}.vote-actions{z-index:5;padding:20px 0 calc(16px + env(safe-area-inset-bottom));background:linear-gradient(to bottom, #1d1d1d00, var(--bg) 35%);margin-top:8px;position:sticky;bottom:0}.vote-hint{color:var(--text-muted);text-align:center;margin-top:10px;font-size:.8rem}.form-error{border-left:3px solid var(--fuechse-rot);border-radius:var(--radius-button);background-color:var(--bg-transparent-rot);color:var(--text-error);margin:12px 0 0;padding:10px 14px}.notice{border-radius:var(--radius-card);background-color:var(--bg-card);box-shadow:var(--shadow-card);text-align:center;padding:36px 24px 32px;position:relative;overflow:hidden}.notice:before{content:"";background:linear-gradient(90deg, transparent, var(--fuechse-rot), transparent);height:3px;position:absolute;top:0;left:0;right:0}.notice__icon{border:2px solid var(--fuechse-rot);background-color:var(--bg-transparent-rot);border-radius:50%;place-items:center;width:68px;height:68px;margin:0 auto 18px;display:grid}.notice__icon svg{width:30px;height:30px}.notice__icon--pulse{animation:2.4s ease-in-out infinite pulse}.notice__title{color:var(--text);margin-bottom:10px;font-size:2.3rem}.notice p{max-width:30em;color:var(--neutral-300);margin:0 auto}.notice p+p{margin-top:8px}.notice__small{font-size:.85rem;color:var(--text-muted)!important}.notice .btn{margin-top:22px}@keyframes pulse{0%,to{box-shadow:0 0 #d7192073}50%{box-shadow:0 0 0 14px #d7192000}}.winners{text-align:center;margin-bottom:28px}.winners__kicker{color:var(--fuechse-rot);font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px;font-size:1.5rem}.winners__list{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.winner{border:2px solid var(--fuechse-rot);border-radius:var(--radius-card);background-color:var(--bg-card);width:180px;box-shadow:0 4px 20px var(--bg-transparent-rot);padding:12px 12px 16px}.winners--tie .winner{width:150px}.winner__photo{aspect-ratio:4/5;background-color:var(--neutral-600);border-radius:6px;margin-bottom:10px;overflow:hidden}.winner__photo img{object-fit:cover;width:100%;height:100%}.winner__photo .candidate__initials{font-size:3.5rem}.winner__number{color:var(--fuechse-rot);font-family:var(--font-heading);font-size:1.3rem}.winner__name{font-family:var(--font-heading);text-transform:uppercase;font-size:1.8rem;line-height:1.05}.winner__votes{color:var(--text-muted);flex-wrap:wrap;justify-content:center;gap:0 8px;margin-top:4px;font-size:.85rem;display:flex}.section-title{color:var(--fuechse-rot);text-align:center;margin:24px 0 14px;font-size:2rem}.results{gap:16px;list-style:none;display:grid}.result__head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;display:flex}.result__name{font-family:var(--font-heading);letter-spacing:.02em;font-size:1.45rem}.result__name span{color:var(--fuechse-rot);margin-right:6px}.result__value{color:var(--neutral-300);white-space:nowrap;font-size:.9rem}.result__bar{background-color:var(--neutral-600);border-radius:5px;height:10px;overflow:hidden}.result__fill{background-color:var(--hafenstahl);border-radius:5px;height:100%}.result--winner .result__fill{background-color:var(--fuechse-rot)}.results__total{color:var(--text-muted);text-align:center;margin-top:20px;font-size:.9rem}
