:root{--green:#14432f;--green-2:#1f5c42;--red:#c8342c;--gold:#f4c95d;--cream:#fbf6ec;--ink:#23302a;--muted:#6a776f;--line:#e6dfd0;color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--green);min-height:100dvh;margin:0}.app{max-width:560px;margin:0 auto;padding-bottom:96px}.top{padding:16px 20px}.top a{color:var(--gold);font-size:1.15rem;font-weight:700;text-decoration:none}main{padding:0 12px}h1.event{color:#fff;margin:4px 8px 12px;font-size:1.3rem}.card{background:var(--cream);border-radius:16px;margin-bottom:12px;padding:18px;box-shadow:0 2px 8px #0003}.card h2{color:var(--green);margin:0 0 10px;font-size:1.1rem}.card p{margin:0 0 10px;line-height:1.45}.hint{color:var(--muted);font-size:.9rem}main>.hint{color:#cfe0d6;text-align:center}.warn{border-left:3px solid var(--gold);background:#fff3d6;border-radius:6px;padding:8px 10px;font-size:.92rem}.error{color:var(--red);font-size:.92rem;font-weight:600}label{margin-bottom:12px;font-size:.92rem;font-weight:600;display:block}input,select,textarea{width:100%;font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;margin-top:5px;padding:11px;font-size:16px}button,.button{background:var(--red);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:10px;padding:12px 18px;font-weight:700;text-decoration:none;display:inline-block}button:disabled{opacity:.45;cursor:not-allowed}button.secondary{background:var(--green-2);margin:4px 4px 4px 0}button.block{width:100%;margin-bottom:8px;display:block}button.link{color:var(--green-2);background:0 0;padding:4px;font-weight:600;text-decoration:underline}button.danger{color:#ffd6d2;margin:8px auto;display:block}.card button.danger{color:var(--red)}.row{align-items:center;gap:8px;display:flex}.row.wrap{flex-wrap:wrap}.row.wrap select{flex:130px;margin-top:0}.list{margin:0 0 12px;padding:0;list-style:none}.list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:9px 0;display:flex}.list li:last-child{border-bottom:0}.list a{color:var(--green-2);font-weight:700}.list em{color:var(--muted);font-size:.85rem;font-style:normal}.requests li{align-items:flex-start}.requests p{margin:4px 0}.result{background:#dff2e4;border-radius:6px;padding:6px 8px}.pill{white-space:nowrap;border-radius:99px;padding:3px 8px;font-size:.76rem;font-weight:700}.pill.on{color:#17693a;background:#d9f2df}.pill.on:before{content:"● "}.pill.off{color:var(--muted);background:#eee8db}.qr{text-align:center}.qr img{border-radius:8px;width:220px;max-width:100%;margin:0 auto 8px;display:block}.reveal-label{text-align:center;color:var(--muted);margin-bottom:2px!important}.reveal-name{text-align:center;color:var(--red);overflow-wrap:anywhere;font-size:2rem;font-weight:800;margin:0!important}.draw-anim{text-align:center;font-size:3rem;animation:1.2s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.messages{margin:8px 0 0;padding:0;list-style:none}.messages li{border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border-radius:10px;justify-content:space-between;gap:10px;margin-bottom:7px;padding:9px 11px;display:flex}.mark{color:var(--muted);white-space:nowrap;font-size:.78rem}.banner{background:var(--gold);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding:10px 12px;font-weight:600;display:flex}.banner button{padding:7px 12px}.tabs{background:var(--cream);border-top:1px solid var(--line);justify-content:center;padding:4px 2px;display:flex;position:fixed;bottom:0;left:0;right:0}.tabs button{min-width:0;max-width:96px;color:var(--muted);white-space:nowrap;background:0 0;flex:1 1 0;padding:4px 0;font-size:.7rem;position:relative}.tab-icon{font-size:1.15rem;line-height:1.3;display:block}.tabs button.active{color:var(--red)}.badge{background:var(--red);color:#fff;border-radius:99px;min-width:16px;padding:0 4px;font-size:.68rem;position:absolute;top:0;left:55%}.blurred{filter:blur(.45em);-webkit-user-select:none;user-select:none}.center{text-align:center;margin:6px 0 0!important}button.back{color:var(--gold);margin:0 0 8px}summary{cursor:pointer;margin-bottom:10px;font-weight:600}.whoami{color:#cfe0d6;margin:-8px 8px 12px;font-size:.9rem}.messages li.unread{border-color:var(--gold);background:#fff3d6;font-weight:600}.new-tag{color:var(--red);white-space:nowrap;font-size:.72rem;font-weight:800}.messages li.unread{border-color:var(--red);animation:1.6s ease-in-out infinite unread-halo}@keyframes unread-halo{0%,to{box-shadow:0 0 2px 1px #c8342c66}50%{box-shadow:0 0 12px 4px #c8342ccc}}@media (prefers-reduced-motion:reduce){.messages li.unread{animation:none;box-shadow:0 0 8px 2px #c8342c99}}
