@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(../media/b6df7c92285ebcd2-s.1cox7hpc1tfbr.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(../media/eeba9b1ad34c1404-s.3t00_18uk4swp.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(../media/5d52bd6c4cb3f315-s.p.12wv-xs8vggjn.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka Fallback;src:local(Arial);ascent-override:95.64%;descent-override:23.17%;line-gap-override:0.0%;size-adjust:101.84%}.X3dRsa_className{font-family:Fredoka,Fredoka Fallback;font-style:normal}.X3dRsa_variable{--font-body:"Fredoka", "Fredoka Fallback"}
@font-face{font-family:UnifrakturMaguntia;font-style:normal;font-weight:400;font-display:swap;src:url(../media/40a3cd74afdfe30c-s.p.2vru4chvrf9f2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:UnifrakturMaguntia Fallback;src:local(Arial);ascent-override:88.12%;descent-override:28.13%;line-gap-override:0.0%;size-adjust:89.05%}.mvcmRa_className{font-family:UnifrakturMaguntia,UnifrakturMaguntia Fallback;font-style:normal;font-weight:400}.mvcmRa_variable{--font-fraktur:"UnifrakturMaguntia", "UnifrakturMaguntia Fallback"}
:root{--blue:#1c5fa8;--blue-dark:#0f3d73;--white:#fdfbf5;--parchment:#fff6df;--wood:#6b3f1d;--wood-dark:#3f220c;--beer:#f2a81d;--foam:#fffdf6;--red:#c8102e;--green:#2e7d32;--ink:#2b1a0c;--radius:18px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;font-family:var(--font-body), system-ui, sans-serif;color:var(--ink);background-color:var(--white);background-image:linear-gradient(60deg, var(--blue) 25%, transparent 25.5%, transparent 75%, var(--blue) 75.5%), linear-gradient(-60deg, var(--blue) 25%, transparent 25.5%, transparent 75%, var(--blue) 75.5%);background-size:46px 80px;background-attachment:fixed;margin:0}button,input{font:inherit;color:inherit}.bunting{z-index:20;filter:drop-shadow(0 3px 2px #0000004d);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='28'%3E%3Cpath d='M0 3h56' stroke='%233f220c' stroke-width='3'/%3E%3Cpath d='M2 4h24L14 26z' fill='%231c5fa8' stroke='%230f3d73'/%3E%3Cpath d='M30 4h24L42 26z' fill='%23fdfbf5' stroke='%23999'/%3E%3C/svg%3E") repeat-x;height:28px;position:sticky;top:0}.wrap{max-width:560px;margin:0 auto;padding:12px 16px 64px}.card{background:var(--parchment);border:4px solid var(--wood);border-radius:var(--radius);box-shadow:0 6px 0 var(--wood-dark), 0 14px 30px #00000040;margin-bottom:18px;padding:18px 16px}.hero{text-align:center;padding-top:22px}.hero .mugs{justify-content:center;align-items:center;gap:10px;font-size:44px;line-height:1;display:flex}.hero .mugs .cube{filter:drop-shadow(2px 3px #00000040);width:42px;height:50px;animation:6s ease-in-out infinite spin}@keyframes spin{0%,80%,to{transform:rotate(0)}88%{transform:rotate(-12deg)scale(1.1)}94%{transform:rotate(8deg)}}.hero .mugs span{animation:1.6s ease-in-out infinite clink;display:inline-block}.hero .mugs span:last-child{animation-delay:.1s;transform:scaleX(-1)}.hero h1{font-family:var(--font-fraktur), serif;color:var(--blue-dark);text-shadow:2px 2px 0 var(--beer);margin:6px 0 4px;font-size:clamp(34px,11vw,64px);font-weight:400;line-height:1}.hero .sub{background:var(--parchment);border:2px solid var(--wood);border-radius:10px;margin:0;padding:4px 12px;font-size:16px;font-weight:600;display:inline-block}.hero .date{background:var(--red);color:#fff;border-radius:999px;margin-top:10px;padding:4px 14px;font-size:14px;font-weight:600;display:inline-block;transform:rotate(-2deg)}@keyframes clink{0%,60%,to{transform:rotate(0)}70%{transform:rotate(18deg)}80%{transform:rotate(-6deg)}}.hero .mugs span:last-child{animation-name:clink-r}@keyframes clink-r{0%,60%,to{transform:scaleX(-1)rotate(0)}70%{transform:scaleX(-1)rotate(18deg)}80%{transform:scaleX(-1)rotate(-6deg)}}.banner{text-align:center;border:3px dashed var(--wood);background:var(--foam);border-radius:14px;margin-bottom:14px;padding:12px 14px;font-weight:600}.banner.closed{border-color:var(--red);background:#ffe1e1}.myvote{border-style:solid;border-color:var(--beer);background:#fff0c4}.myvote b{color:var(--blue-dark)}.count{text-align:center;opacity:.8;margin:4px 0 14px;font-size:14px}.search{gap:8px;margin-bottom:12px;display:flex}.search input,.desc-input{border:3px solid var(--wood);background:#fff;border-radius:14px;outline:none;flex:1;min-width:0;padding:14px;font-size:17px}.search input:focus,.desc-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1c5fa840}.add-box{border:3px dashed var(--blue);background:#e8f1fb;border-radius:14px;margin:18px 0 0;padding:12px}.add-box p{margin:0 0 8px;font-weight:600}.desc-input{width:100%;margin-bottom:10px;padding:12px;font-size:16px}.btn{appearance:none;cursor:pointer;background:var(--red);color:#fff;touch-action:manipulation;border:none;border-radius:14px;padding:14px 18px;font-size:17px;font-weight:700;transition:transform 80ms,box-shadow 80ms;box-shadow:0 4px #7d0a1d}.btn:active{transform:translateY(3px);box-shadow:0 1px #7d0a1d}.btn:disabled{opacity:.6}.btn.blue{background:var(--blue);box-shadow:0 4px 0 var(--blue-dark)}.btn.green{background:var(--green);box-shadow:0 4px #1b4d1e}.btn.small{padding:8px 12px;font-size:14px}.btn.full{width:100%}.list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.person{text-align:left;border:3px solid var(--wood);cursor:pointer;width:100%;box-shadow:0 4px 0 var(--wood);touch-action:manipulation;background:#fff;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;transition:transform 80ms,box-shadow 80ms,background .2s;display:flex}.person:active{box-shadow:0 1px 0 var(--wood);transform:translateY(3px)}.person .avatar{background:var(--parchment);border:2px solid var(--wood);border-radius:50%;flex:none;place-items:center;width:46px;height:46px;font-size:26px;display:grid}.person .who{flex:1;min-width:0}.person .name{overflow-wrap:anywhere;font-size:18px;font-weight:700;display:block}.person .desc{opacity:.75;overflow-wrap:anywhere;font-size:14px;display:block}.person .tick{flex:none;font-size:28px}.person.chosen{background:linear-gradient(180deg, var(--foam) 0 22%, var(--beer) 22% 100%);border-color:var(--blue-dark);box-shadow:0 4px 0 var(--blue-dark);animation:.5s wobble}.person.chosen .avatar{background:var(--foam)}@keyframes wobble{0%{transform:scale(1)}30%{transform:scale(1.04)rotate(-1.5deg)}60%{transform:scale(.98)rotate(1deg)}to{transform:scale(1)}}.empty{text-align:center;opacity:.8;padding:16px 8px}.toast{left:50%;bottom:calc(18px + env(safe-area-inset-bottom));z-index:50;background:var(--blue-dark);color:#fff;text-align:center;border-radius:999px;max-width:calc(100vw - 32px);padding:12px 18px;font-weight:700;animation:.35s cubic-bezier(.2,1.6,.4,1) pop;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #00000059}.toast.err{background:var(--red)}@keyframes pop{0%{opacity:0;transform:translate(-50%,30px)scale(.6)}}.rain{pointer-events:none;z-index:40;position:fixed;inset:0;overflow:hidden}.rain span{font-size:30px;animation:linear forwards fall;position:absolute;top:-50px}@keyframes fall{to{transform:translateY(110vh)rotate(540deg)}}.podium{grid-template-columns:1fr 1fr 1fr;align-items:end;gap:8px;margin:10px 0 18px;display:grid}.step{text-align:center}.step .pname{overflow-wrap:anywhere;margin-bottom:4px;font-size:15px;font-weight:700}.step .medal{font-size:34px}.step .block{color:#fff;border:3px solid var(--wood-dark);border-bottom:none;border-radius:10px 10px 0 0;place-items:center;font-size:22px;font-weight:700;display:grid}.step.p1 .block{background:var(--beer);height:130px;color:var(--ink)}.step.p2 .block{background:var(--blue);height:95px}.step.p3 .block{background:var(--wood);height:70px}.step.p1 .medal{font-size:46px;animation:1s infinite bounce}@keyframes bounce{50%{transform:translateY(-8px)}}.winner-title{font-family:var(--font-fraktur), serif;text-align:center;color:var(--blue-dark);margin:0;font-size:34px}.ranking{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ranking li{border:2px solid var(--wood);background:#fff;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.ranking .rank{text-align:center;width:28px;font-weight:700}.ranking .rname{overflow-wrap:anywhere;flex:1;min-width:0}.ranking .votes{white-space:nowrap;font-weight:700}.admin-row{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.admin-row .btn{flex:1}.admin-item{border:2px solid var(--wood);background:#fff;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;display:flex}.admin-item .rname{overflow-wrap:anywhere;flex:140px;min-width:0}.admin-item select{font:inherit;border-radius:8px;max-width:100%;padding:6px;font-size:16px}.footer{text-align:center;color:#fff;text-shadow:0 1px 3px #0009;margin-top:8px;font-weight:600}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
