:root{--bg-primary:#050508;--bg-secondary:#0c0c12;--bg-tertiary:#13131d;--glass-bg:#0c0c12a6;--glass-border:#ffffff0f;--glass-border-focus:#ff5a5f59;--text-primary:#fff;--text-secondary:#9ca3af;--text-muted:#6b7280;--grad-primary:linear-gradient(135deg, #ff5a5f 0%, #ff7a45 45%, #d946ef 100%);--grad-primary-hover:linear-gradient(135deg, #d946ef 0%, #ff5a5f 55%, #ff7a45 100%);--grad-secondary:linear-gradient(135deg, #8b5cf6 0%, #d946ef 100%);--grad-dark:linear-gradient(180deg, #12121c 0%, #06060a 100%);--grad-accent:linear-gradient(45deg, #ff5a5f, #ff7a45, #8b5cf6, #d946ef);--accent-rose:#ff5a5f;--accent-orange:#ff7a45;--accent-violet:#8b5cf6;--accent-green:#10b981;--accent-red:#ef4444;--shadow-sm:0 4px 12px #0000004d;--shadow-md:0 16px 40px #0000008c, 0 0 1px #ffffff14;--shadow-lg:0 28px 72px #000000bf, 0 0 2px #ffffff1f;--shadow-glow:0 0 25px #ff5a5f59, 0 0 50px #d946ef26;--shadow-glow-green:0 0 25px #10b9814d;--font-headings:"Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;font-family:var(--font-body);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.light-theme{--bg-primary:#f6f8fa;--bg-secondary:#fff;--bg-tertiary:#eff2f6;--glass-bg:#ffffffbf;--glass-border:#0f172a0f;--glass-border-focus:#ff5a5f80;--text-primary:#090d16;--text-secondary:#475569;--text-muted:#64748b;--grad-dark:linear-gradient(180deg, #eff2f6 0%, #e2e8f0 100%);--shadow-sm:0 4px 12px #0f172a08;--shadow-md:0 16px 40px #0f172a0f;--shadow-lg:0 28px 72px #0f172a14;--shadow-glow:0 0 25px #ff5a5f26;--shadow-glow-green:0 0 25px #10b98126;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.light-theme .form-control{color:var(--text-primary);background:#0f172a08}.light-theme .form-control:focus{background:#0f172a0d}.light-theme .btn-secondary{background:#0f172a08;border-color:#0f172a14}.light-theme .btn-secondary:hover{background:#0f172a0f;border-color:#0f172a1f}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);min-height:100svh;line-height:1.5;position:relative;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:-1;background-image:linear-gradient(90deg,#ffffff04 1px,#0000 1px),linear-gradient(#ffffff04 1px,#0000 1px);background-size:44px 44px;width:100%;height:100%;position:fixed;top:0;left:0}.light-theme body:before{background-image:linear-gradient(90deg,#0f172a05 1px,#0000 1px),linear-gradient(#0f172a05 1px,#0000 1px)}#root{flex-direction:column;width:100%;min-height:100svh;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-headings);letter-spacing:-.02em;color:var(--text-primary);font-weight:700}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@keyframes pulse-glow{0%{box-shadow:0 0 15px #ff5a5f33}50%{box-shadow:0 0 30px #ff5a5f8c}to{box-shadow:0 0 15px #ff5a5f33}}@keyframes pop-in{0%{opacity:0;transform:scale(.9)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes slide-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes rotate-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)rotate(-1deg)}75%{transform:translate(4px)rotate(1deg)}}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}.glass-panel{-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);box-shadow:var(--shadow-md), inset 0 1px 0 #ffffff14, inset 0 -1px 0 #00000026;background:linear-gradient(135deg,#16161e73 0%,#0c0c1299 100%);border-radius:28px;transition:all .5s cubic-bezier(.16,1,.3,1)}.glass-panel:hover{box-shadow:var(--shadow-lg), 0 0 30px #ff5a5f14, inset 0 1px 0 #ffffff26, inset 0 -1px 0 #0000001a;border-color:#ff5a5f38;transform:translateY(-4px)}.glass-panel:focus-within{border-color:var(--glass-border-focus)}.btn{font-family:var(--font-headings);cursor:pointer;border:none;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:12px 28px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative;overflow:hidden}.btn-primary{background:var(--grad-primary);color:#fff;box-shadow:var(--shadow-glow)}.btn-primary:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff40 50%,#0000 100%);width:30%;height:200%;transition:all .6s cubic-bezier(.19,1,.22,1);position:absolute;top:-50%;left:-60%;transform:rotate(30deg)}.btn-primary:hover{background:var(--grad-primary-hover);transform:translateY(-2px);box-shadow:0 8px 30px #ff5a5f66,0 0 40px #d946ef33}.btn-primary:hover:after{left:130%}.btn-primary:active{box-shadow:var(--shadow-glow);transform:translateY(1px)}.btn-secondary{color:var(--text-primary);background:#ffffff0d;border:1px solid #ffffff14}.btn-secondary:hover{background:#ffffff1a;border-color:#ffffff26;transform:translateY(-1px)}.btn-secondary:active{transform:translateY(1px)}.btn-premium{background:var(--grad-secondary);color:#fff;position:relative;overflow:hidden}.btn-premium:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff40 50%,#0000 100%);width:30%;height:200%;transition:all .6s cubic-bezier(.19,1,.22,1);position:absolute;top:-50%;left:-60%;transform:rotate(30deg)}.btn-premium:hover{transform:translateY(-2px);box-shadow:0 8px 30px #8b5cf666,0 0 40px #d946ef33}.btn-premium:hover:after{left:130%}.btn-premium:active{transform:translateY(1px)}.btn-icon-only{border-radius:50%;width:48px;height:48px;padding:0;font-size:1.25rem}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.form-group{text-align:left;flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.form-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.form-control{border:1px solid var(--glass-border);color:#fff;font-family:var(--font-body);-webkit-user-select:text;user-select:text;background:#ffffff08;border-radius:12px;width:100%;padding:12px 16px;font-size:1rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-control:focus{background:#ffffff0d;border-color:#0000;outline:none;box-shadow:0 0 0 1px #ff5a5f80,0 0 15px #ff5a5f26}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.leaflet-container{border:1px solid var(--glass-border);font-family:var(--font-body);box-shadow:var(--shadow-sm);border-radius:16px;background:var(--bg-primary)!important}.leaflet-bar{border:1px solid var(--glass-border)!important;box-shadow:var(--shadow-sm)!important}.leaflet-bar a{transition:background .2s;background-color:var(--bg-secondary)!important;color:var(--text-primary)!important;border-bottom:1px solid var(--glass-border)!important}.leaflet-bar a:hover{background-color:var(--bg-tertiary)!important}.leaflet-popup-content-wrapper{background:var(--bg-secondary)!important;border:1px solid var(--glass-border)!important;color:var(--text-primary)!important;box-shadow:var(--shadow-md)!important;border-radius:12px!important}.leaflet-popup-tip{background:var(--bg-secondary)!important;border:1px solid var(--glass-border)!important}.qr-container{box-shadow:var(--shadow-md);background:#fff;border-radius:16px;justify-content:center;align-items:center;margin-top:10px;padding:12px;display:inline-flex}.qr-placeholder{color:#111;background-color:#f3f4f6;border:2px dashed #ccc;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;width:140px;height:140px;font-size:.75rem;display:flex}.premium-badge{background:var(--grad-secondary);color:#fff;text-transform:uppercase;border-radius:20px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.animate-float{animation:4s ease-in-out infinite float}.animate-pop-in{animation:.4s cubic-bezier(.34,1.56,.64,1) forwards pop-in}.animate-slide-up{animation:.5s cubic-bezier(.16,1,.3,1) forwards slide-up}.shake{animation:.3s ease-in-out shake}.bg-glowing-blobs{z-index:-1;pointer-events:none;background-color:var(--bg-primary);width:100vw;height:100vh;transition:background-color .5s;position:fixed;top:0;left:0;overflow:hidden}.blob{filter:blur(100px);opacity:.15;transition:all 1.5s ease-in-out;position:absolute}.light-theme .blob{opacity:.11;filter:blur(80px)}.blob-1{background:radial-gradient(circle,#ff5a5f 0%,#0000 70%);width:55vw;height:55vw;animation:25s ease-in-out infinite alternate liquid-1;top:-10%;left:-10%}.blob-2{background:radial-gradient(circle,#8b5cf6 0%,#0000 70%);width:65vw;height:65vw;animation:30s ease-in-out infinite alternate liquid-2;bottom:-15%;right:-10%}.blob-3{background:radial-gradient(circle,#ff7a45 0%,#0000 70%);width:45vw;height:45vw;animation:20s ease-in-out infinite alternate liquid-3;top:40%;left:50%}@keyframes liquid-1{0%{border-radius:42% 58% 70% 30%/45% 45% 55% 55%;transform:translate(0)scale(1)}50%{border-radius:70% 30% 52% 48%/60% 40%;transform:translate(8vw,6vh)scale(1.15)}to{border-radius:30% 70% 40% 60%/50% 60% 40% 50%;transform:translate(-4vw,12vh)scale(.95)}}@keyframes liquid-2{0%{border-radius:50% 50% 30% 70%/50% 60% 40% 50%;transform:translate(0)scale(1)}50%{border-radius:30% 70% 70% 30%/50% 30% 70% 50%;transform:translate(-10vw,-8vh)scale(.9)}to{border-radius:60% 40% 50% 50%/40% 60%;transform:translate(6vw,4vh)scale(1.08)}}@keyframes liquid-3{0%{border-radius:40% 60% 60% 40%/60% 50% 50% 40%;transform:translate(0)scale(.95)}50%{border-radius:55% 45% 35% 65%/45% 55%;transform:translate(12vw,-4vh)scale(1.1)}to{border-radius:45% 55% 55% 45%/55% 45%;transform:translate(-8vw,-10vh)scale(1)}}.header-controls{align-items:center;gap:16px;display:flex}.header-user-greeting{color:var(--text-secondary);align-items:center;gap:6px;font-size:.85rem;display:flex}.header-switch-lobby-btn{color:var(--text-secondary);cursor:pointer;font-size:.85rem;font-family:var(--font-headings);background:0 0;border:none;align-items:center;gap:6px;font-weight:600;transition:color .2s;display:flex}.header-premium-btn{color:var(--accent-violet);cursor:pointer;background:#8b5cf61a;border:1px solid #8b5cf640;border-radius:12px;align-items:center;gap:4px;padding:4px 12px;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.header-premium-btn:hover{background:#8b5cf633;border-color:#8b5cf666;transform:translateY(-1px)}@media (width<=576px){.header-controls{gap:8px}.header-user-greeting span,.header-switch-lobby-btn span,.header-premium-btn span,.premium-badge span{display:none}}
