html,body,#root{margin:0;padding:0;width:100%;height:100%;font-family:Grandstander,cursive;background:var(--bg);color:var(--text);transition:background-color .3s,color .3s;min-height:100%;position:relative;overflow-x:hidden}body{position:relative}#root{position:relative;z-index:2}.effects-root{z-index:0!important}body{position:relative;background:var(--bg);overflow-x:hidden;z-index:0}#root{position:relative;z-index:1;background:transparent}body:before{content:"";position:fixed;inset:0 0 auto 0;height:clamp(120px,22vh,240px);background:linear-gradient(to bottom,#0006,#0000);pointer-events:none;z-index:1}h1,h2,h3,.page-title,.panel-title,.app-title,.nav,.navbar{text-shadow:0 1px 2px rgba(0,0,0,.4),0 0 12px rgba(0,0,0,.25);-webkit-text-stroke:.5px rgba(0,0,0,.18)}body[data-holiday=new_year] h1,body[data-holiday=new_year] .page-title,body[data-holiday=new_year] .app-title{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.55),0 0 22px rgba(50,180,255,.3)}.card,.panel,.list,.list-item,.glass,.participants-list,.participants-item{background:color-mix(in oklab,var(--card) 92%,transparent 8%);-webkit-backdrop-filter:blur(8px) saturate(1.05);backdrop-filter:blur(8px) saturate(1.05)}button,.btn{box-shadow:inset 0 1px #ffffff1f,0 2px 6px #0000002e}body:before{content:"";position:fixed;top:-25%;right:-25%;bottom:-25%;left:-25%;--g1: color-mix(in oklab, var(--accent) 100%, white 0%);--g2: color-mix(in oklab, var(--accent) 40%, white 60%);--g3: color-mix(in oklab, var(--accent) 20%, var(--bg) 80%);background:conic-gradient(from 180deg at 50% 50%,var(--g1),var(--g2),var(--g3),var(--g2),var(--g1));filter:blur(60px) saturate(115%);opacity:.45;animation:global-swirl 18s linear infinite;pointer-events:none;z-index:-1}.page-wrapper{display:flex;flex-direction:column;min-height:100vh}.page-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}select,input,textarea,option,input::placeholder,textarea::placeholder{font-family:Grandstander,cursive,sans-serif}:root{--name-color: var(--accent);--name-glow: color-mix(in oklab, var(--accent) 70%, white 30%);--flicker-duration: 2.6s}@property --g1{syntax: "<color>"; inherits: false; initial-value: #0000;}@property --g2{syntax: "<color>"; inherits: false; initial-value: #0000;}@property --g3{syntax: "<color>"; inherits: false; initial-value: #0000;}@property --angle{syntax: "<angle>"; inherits: false; initial-value: 180deg;}:root{--g1: color-mix(in oklab, var(--accent) 100%, white 0%);--g2: color-mix(in oklab, var(--accent) 45%, white 55%);--g3: color-mix(in oklab, var(--accent) 15%, var(--bg) 85%);--angle: 180deg}body[data-theme=dark]{--g1: color-mix(in oklab, var(--accent) 100%, white 10%);--g2: color-mix(in oklab, var(--accent) 55%, white 35%);--g3: color-mix(in oklab, var(--accent) 25%, var(--bg) 75%)}body:before{content:"";position:fixed;top:-25%;right:-25%;bottom:-25%;left:-25%;z-index:0;background:conic-gradient(from var(--angle) at 50% 50%,var(--g1),var(--g2),var(--g3),var(--g2),var(--g1));filter:blur(60px) saturate(115%);opacity:.45;animation:global-swirl 18s linear infinite;transition:--g1 .7s ease,--g2 .7s ease,--g3 .7s ease,--angle .7s ease,opacity .4s ease,filter .4s ease}@keyframes global-swirl{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.05)}to{transform:rotate(360deg) scale(1)}}#root,.app,.page,.page-wrapper,.page-content,.main-ui{position:relative;z-index:1;background:transparent}@media(prefers-reduced-motion:reduce){body:before{animation:none}}.app,.page{min-height:100dvh;display:flex;flex-direction:column}.main-ui{flex:1;display:flex;flex-direction:column;position:relative;max-width:600px;margin:60px auto 40px;padding:40px;background:var(--card);border-radius:10px;text-align:center;box-shadow:0 4px 12px #0000001a;transition:background-color .3s}.main-ui h2{margin-bottom:5px;margin-top:-3px}.main-ui:has(.history-empty),.main-ui:has(.sb-empty){background:transparent;box-shadow:none;border:0;padding:0}.page,.page-wrapper,.page-content,.main-ui,.app{position:relative;z-index:1;background:transparent}.main-ui,.card,.team-selector-content{background:var(--card);border-radius:16px;box-shadow:0 10px 30px #00000014}@media(max-width:700px){.main-ui{margin:20px auto 40px;max-width:95%}}@media(max-width:768px){.main-ui{margin:16px auto;padding:16px;max-width:95%}button{font-size:16px}h1{font-size:32px}}button{font-family:inherit;cursor:pointer;border:none;border-radius:5px;font-size:14px;padding:8px 12px;margin:5px;background:var(--button);color:#fff;transition:background-color .2s ease}button:hover{background:var(--button-hover)}button:focus-visible{outline:2px solid #ff9900;outline-offset:2px}.popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:grid;place-items:center;z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);overflow:hidden;touch-action:none;pointer-events:auto}.popup-content{max-width:min(740px,92vw);max-height:85vh;background:var(--modal-bg);color:var(--text);border-radius:16px;padding:clamp(16px,3vw,28px);box-shadow:0 20px 60px #00000040;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;pointer-events:auto;touch-action:auto}.popup-title{margin:0 0 12px;text-align:center}.popup-paragraph{white-space:pre-line;margin:0 0 16px;line-height:1.6}.popup-list{margin:8px 0 18px;padding-left:1.25rem;list-style:disc;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;pointer-events:auto;touch-action:auto}.popup-item{margin:8px 0;line-height:1.6;text-wrap:pretty}.popup-close-btn{display:block;margin:12px auto 0;padding:10px 18px;border:0;border-radius:12px;background:var(--button);color:#fff;font-weight:700;cursor:pointer;box-shadow:0 8px 18px color-mix(in oklab,var(--button) 30%,transparent);flex-shrink:0}.popup-close-btn:hover{background:var(--button-hover)}.loading-wrap{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:transparent}.loading-card{background:var(--card);border:1px solid color-mix(in oklab,var(--accent) 14%,transparent);box-shadow:0 18px 60px #0000002e;border-radius:18px;padding:28px 32px;text-align:center;min-width:280px}.hat{font-size:36px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.15))}.loading-title{font-weight:800;font-size:22px;margin-top:8px}.loading-tip{margin-top:6px;opacity:.7}.loader{display:flex;gap:8px;justify-content:center;margin:12px 0 6px}.loader i{width:10px;height:10px;border-radius:50%;background:var(--accent);opacity:.35;animation:bub 1.1s infinite ease-in-out}.loader i:nth-child(2){animation-delay:.12s}.loader i:nth-child(3){animation-delay:.24s}@keyframes bub{0%,80%,to{transform:translateY(0);opacity:.35}40%{transform:translateY(-8px);opacity:1}}.garlands-overlay{position:absolute;inset:0 0 auto 0;height:160px;pointer-events:none}.garlands-svg{width:100%;height:100%;display:block;overflow:visible}.garland-wire{fill:none;stroke:color-mix(in oklab,var(--text) 40%,transparent 60%);stroke-width:2;opacity:.5}.bulb .bulb-core{fill:var(--accent)}.bulb .bulb-glow{fill:var(--accent);opacity:.35;filter:blur(6px)}.bulb{animation:bulb-blink 2.6s infinite ease-in-out}.bulb.delay{animation-delay:1.3s}@keyframes bulb-blink{0%,to{opacity:.9}50%{opacity:.2}}@media(prefers-reduced-motion:reduce){.bulb{animation:none}}.pumpkins-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.pumpkin{position:absolute;font-size:28px;text-shadow:0 0 10px rgba(255,140,0,.3);animation:pumpkin-float linear infinite;will-change:transform;-webkit-user-select:none;user-select:none}@keyframes pumpkin-float{0%{transform:translate(-50%,-50%) var(--scale, scale(1)) translateY(0);opacity:.9}50%{transform:translate(-50%,-50%) var(--scale, scale(1)) translateY(-12px);opacity:1}to{transform:translate(-50%,-50%) var(--scale, scale(1)) translateY(0);opacity:.9}}@media(prefers-reduced-motion:reduce){.pumpkin{animation:none}}.hearts-overlay{position:absolute;top:-5%;right:0;bottom:0;left:0;pointer-events:none}.heart{position:absolute;top:-10%;transform:translate(-50%,-50%);animation:heart-fall linear infinite;text-shadow:0 0 8px rgba(255,77,143,.35);will-change:transform,opacity;-webkit-user-select:none;user-select:none;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",system-ui,sans-serif}@keyframes heart-fall{0%{transform:translate(-50%,-50%) rotate(var(--rot)) translate(0);opacity:0}10%{opacity:1}to{transform:translate(-50%,110vh) rotate(calc(var(--rot) + 40deg)) translate(var(--drift));opacity:.95}}@media(prefers-reduced-motion:reduce){.heart{animation:none}}.petals-overlay{position:absolute;top:-5%;right:0;bottom:0;left:0;pointer-events:none}.petal{position:absolute;top:-8%;transform:translate(-50%,-50%);animation:petal-fall ease-in-out infinite;text-shadow:0 0 8px rgba(232,92,171,.2);filter:drop-shadow(0 2px 2px rgba(0,0,0,.12));will-change:transform,opacity;-webkit-user-select:none;user-select:none;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",system-ui,sans-serif}@keyframes petal-fall{0%{transform:translate(-50%,-50%) rotate(-10deg);opacity:0}10%{opacity:1}50%{transform:translate(calc(-50% + var(--drift)),50vh) rotate(10deg)}to{transform:translate(calc(-50% - var(--drift)),110vh) rotate(-10deg);opacity:.95}}@media(prefers-reduced-motion:reduce){.petal{animation:none}}.easter-overlay{position:absolute;top:-5%;right:0;bottom:0;left:0;pointer-events:none}.egg{position:absolute;top:-8%;transform:translate(-50%,-50%);animation:egg-fall ease-in-out infinite;text-shadow:0 0 8px rgba(255,209,102,.25);will-change:transform,opacity;-webkit-user-select:none;user-select:none;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",system-ui,sans-serif}@keyframes egg-fall{0%{transform:translate(-50%,-50%) rotate(-8deg);opacity:0}10%{opacity:1}50%{transform:translate(calc(-50% + var(--drift)),50vh) rotate(8deg)}to{transform:translate(calc(-50% - var(--drift)),110vh) rotate(-8deg);opacity:.95}}.confetti{position:absolute;top:-8%;transform:translate(-50%,-50%) rotate(var(--rot));animation:confetti-fall linear infinite;opacity:.9;border-radius:2px;background:var(--confettiColor, #ffd1a7);box-shadow:0 0 0 0 var(--confettiColor),0 0 0 0 var(--confettiColor)}.confetti:nth-child(4n){--confettiColor: #ffd1a7}.confetti:nth-child(4n+1){--confettiColor: #c8f7d6}.confetti:nth-child(4n+2){--confettiColor: #cde4ff}.confetti:nth-child(4n+3){--confettiColor: #ffe1f0}@keyframes confetti-fall{0%{transform:translate(-50%,-50%) rotate(var(--rot));opacity:0}10%{opacity:.9}to{transform:translate(calc(-50% + var(--drift)),110vh) rotate(calc(var(--rot) + 180deg));opacity:.95}}@media(prefers-reduced-motion:reduce){.egg,.confetti{animation:none}}.trees-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.trees-layer{position:absolute;bottom:0;width:200%;display:flex}.trees-layer.far{bottom:56px;animation:trees-scroll-far 55s linear infinite}.trees-layer.near{bottom:0;animation:trees-scroll-near 38s linear infinite}.trees-svg{width:50%;height:180px;overflow:visible}.trees-layer.far .trees-svg{height:140px}.tree-far{fill:var(--trees-far, #050d18)}.tree-near{fill:var(--trees-near, #071c2f)}.tree-trunk{fill:color-mix(in oklab,#02060b 65%,var(--trees-near, #071c2f) 35%)}.ground-far{fill:color-mix(in oklab,var(--trees-far, #050d18) 70%,#000 30%);opacity:.9}.ground-near{fill:color-mix(in oklab,var(--trees-near, #071c2f) 75%,#000 25%);opacity:.96}@keyframes trees-scroll-far{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes trees-scroll-near{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.trees-layer.far,.trees-layer.near{animation:none}}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:8px;background:#fff;box-shadow:0 4px 12px #00000026;font-size:.95rem;font-weight:500;pointer-events:auto;animation:toastSlideIn .3s ease-out;min-width:300px;max-width:400px}.toast.toast-success{background:#f0fdf4;border:1px solid #86efac;color:#166534}.toast.toast-error{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.toast.toast-info{background:#f0f9ff;border:1px solid #7dd3fc;color:#0c4a6e}.toast.toast-warning{background:#fffbeb;border:1px solid #fcd34d;color:#92400e}.toast-content{display:flex;align-items:center;gap:8px}.toast-icon{font-size:1.1rem;flex-shrink:0}.toast-message{flex:1;line-height:1.4}.toast-close{background:none;border:none;color:inherit;cursor:pointer;font-size:1rem;padding:0;flex-shrink:0;opacity:.6;transition:opacity .2s ease;display:flex;align-items:center;justify-content:center}.toast-close:hover{opacity:1}@keyframes toastSlideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastSlideOut{0%{transform:translate(0);opacity:1}to{transform:translate(400px);opacity:0}}.toast.toast-exit{animation:toastSlideOut .3s ease-in forwards}@media(max-width:600px){.toast-container{top:10px;right:10px;left:10px}.toast{min-width:auto;max-width:none}}
