@import"https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap";*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;height:100%;overscroll-behavior:none}.bg-ripple{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1}.bg-ripple span{position:absolute;top:50%;left:50%;width:200vmax;height:200vmax;margin:-100vmax 0 0 -100vmax;border-radius:50%;background:#72727134;transform:scale(0);animation:bg-ripple 10s linear infinite}@keyframes bg-ripple{0%{transform:scale(0);opacity:.7}95%{opacity:0}to{transform:scale(1);opacity:0}}.bg-image{position:fixed;top:0;left:0;width:100vw;height:100vh;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:-2}:root{height:100dvh}@supports (height:100svh){:root{height:100svh}}.page{display:flex;flex-direction:column;height:100%}.page{width:100vw;max-width:100vw}.top{flex:0 0 10%;display:flex;align-items:flex-end;justify-content:center;padding-top:.5rem}.bottom{flex:0 0 10%;display:flex;align-items:flex-start;justify-content:center;padding-top:.5rem}.middle{flex:1 1 0;min-height:0;display:flex;align-items:center;justify-content:center}.middle img{height:100%;width:auto;max-width:100%}.join-button,.info-button,.support-button{font-size:1.1rem}@media (max-width: 640px){.join-button,.info-button,.support-button{font-size:1rem}}.wordsearch-background{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:-1;display:flex;flex-direction:column;overflow:hidden}.ws-row{display:flex;margin:0;padding:0}.ws-cell{box-sizing:border-box;width:24px;height:24px;line-height:24px;font-family:Courier New,Courier,monospace;font-size:14px;text-align:center;color:#000000b0;-webkit-user-select:none;user-select:none}.ws-cell--highlight{background-color:#ff0;color:#000;opacity:.8}.ws-cell--bold{font-weight:200;-webkit-text-stroke:.5px currentColor;text-shadow:0 0 1px currentColor}.ws-cell--bold.ws-cell--highlight{color:inherit;-webkit-text-stroke:0;text-shadow:none}.bar.top{position:relative;display:flex;justify-content:center;align-items:center;padding:.5rem 1rem}.button-stack{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem}.info-button,.support-button{position:static;min-width:150px;text-align:center}.bar.top .counter{position:absolute;top:16px;right:16px;font-size:1.5rem;background:#fffc;padding:4px 8px;border-radius:4px;opacity:0;transition:opacity .4s;pointer-events:none}.bar.top .counter.visible{opacity:1}.bar.top .attendee-count{margin-right:.5rem}.support-button{font-size:.9rem!important}.modal-body,.modal-body h2,.modal-body p,.modal-body a,.modal-content,.modal-content *{font-family:Roboto,sans-serif}.modal-image{width:100%;max-height:60vh;height:auto;object-fit:contain;margin:1rem 0;border-radius:8px}.slot-machine-wrapper{text-align:center;margin:1.25rem 0;padding:0 .75rem;box-sizing:border-box}.slotmachine{display:flex;flex-direction:column;align-items:center;gap:.25rem;margin:1rem 0;width:100%}.slot-row{display:flex;width:100%;justify-content:center;align-items:center}.time-slot{font-weight:700;margin-right:.5rem;width:7ch;text-align:right}.reel{display:flex;align-items:center;justify-content:flex-start;min-height:3.5rem;padding:.5rem;border:2px solid #333;border-radius:6px;background:#fff;text-align:left;word-break:break-word;font-size:.9rem;line-height:1.2;overflow-wrap:break-word;opacity:0;transform:translateY(-8px);transition:opacity .3s ease,transform .3s ease}.reel--visible{opacity:1;transform:translateY(0)}.reel--clickable{cursor:pointer;font-weight:700}@keyframes reelFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px) scale(1.03)}}@media (prefers-reduced-motion:no-preference){.reel--clickable{animation:reelFloat 2.5s ease-in-out infinite}.reel--clickable:active{animation:none;transform:translateY(0) scale(.96)}}.reel a,.reel a:visited,.reel a:hover,.reel a:focus{color:inherit!important;text-decoration:none!important}.modal-extra{margin-top:1rem;text-align:center;font-size:.85rem;line-height:1.4}.modal-extra .modal-footer{margin-top:.5rem;font-style:italic;font-size:.8em}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-x:hidden}.modal-content{position:relative;width:90%;max-width:600px;background:#e9e8e8;border-radius:8px;padding:1.5rem;box-shadow:0 4px 12px #00000026;overflow-x:hidden}.close-button{position:absolute;top:.75rem;right:.75rem;background:transparent;border:none;font-size:1.5rem;line-height:1;cursor:pointer}.modal-body{max-height:80vh;overflow-y:auto;padding:1rem}.modal-content h2{margin-top:0}.modal-content label{display:block;margin:1rem 0}.modal-content input[type=text]{width:100%;padding:.5rem;margin-top:.25rem;box-sizing:border-box}.modal-content fieldset{margin:1rem 0;border:1px solid #ccc;padding:.5rem}.modal-content a{color:#06c;text-decoration:none}.modal-content a:hover{text-decoration:underline}.ticket-buttons{display:flex;flex-direction:column;align-items:center;gap:3rem}.ticket-buttons .join-button,.ticket-buttons .join-button.large{padding:.35rem .75rem;line-height:1}.time-slot{font-weight:400;margin-right:.5rem;width:11ch;text-align:right;white-space:nowrap}@media (max-width:640px){.reel{font-size:.85rem;min-height:3rem}.modal-extra{font-size:.8rem}}@media (max-width:480px){.modal-content{width:95%;max-width:400px;padding:1rem}.reel{min-height:50px;font-size:.9rem}.modal-extra{font-size:.78rem}}@media (max-width:420px){.reel{font-size:.8rem;min-height:2.5rem}}.modal-content input[type=text],.modal-content input[type=radio],.modal-content label{font-size:16px}@media (min-width:480px){.modal-content input[type=text]{font-size:.875rem}}.join-button,.info-button{border:2px solid #000;background:radial-gradient(circle at 30% 30%,#fff,#f7f7f7 60%,#e7e7e7);border-radius:999px;font-size:1.5rem;color:#111;text-shadow:0 1px 0 #fff;box-shadow:0 6px #000,0 10px 18px #0000004d;cursor:pointer}.join-button:hover,.info-button:hover{box-shadow:0 12px #000,0 16px 25px #00000059}.join-button:active,.info-button:active{box-shadow:0 4px #000,0 4px 10px #00000040}@media (prefers-reduced-motion:no-preference){.join-button,.info-button{animation:breathe 4s ease-in-out infinite}}.join-button.large{font-size:1.3rem;padding:1.2rem}.info-button{font-size:1.1rem}
