@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap");:root{--bg:#000;--bg-card:#111;--bg-card-2:#1a1a1a;--fg:#fff;--fg-2:#eee;--fg-muted:#888;--fg-dim:#555;--border:#2a2a2a;--border-bright:#444;--purple:#c084fc;--purple-dim:rgba(192,132,252,.15);--purple-glow:rgba(192,132,252,.4);--cyan:#22d3ee;--cyan-dim:rgba(34,211,238,.15);--pink:#f472b6;--pink-dim:rgba(244,114,182,.15);--indigo:#818cf8;--indigo-dim:rgba(129,140,248,.15);--grad-purple:linear-gradient(135deg,#1a0040,#040828);--grad-cyan:linear-gradient(135deg,#00182a,#040820);--grad-pink:linear-gradient(135deg,#2a0820,#0a0020);--grad-hero:linear-gradient(160deg,#0d001a,#000510 50%,#00050d)}*,:after,:before{box-sizing:border-box;padding:0;margin:0}html{-webkit-tap-highlight-color:transparent}body{background:var(--bg);color:var(--fg-2);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5;overflow-x:hidden;max-width:500px;margin:0 auto;min-height:100vh;min-height:100dvh;border-left:1px solid var(--border);border-right:1px solid var(--border);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none}button,input,textarea{font-family:inherit;outline:none}::-webkit-scrollbar{width:0;height:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes glow-pulse{0%,to{box-shadow:0 0 10px var(--purple-glow),0 0 20px var(--purple-dim)}50%{box-shadow:0 0 20px var(--purple-glow),0 0 40px var(--purple-dim)}}@keyframes spin-slow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes scale-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes badge-enter{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fadeIn .4s ease forwards}.animate-slide-up{animation:slideUp .5s ease forwards}.animate-scale-in{animation:scale-in .3s ease forwards}.animate-float{animation:float 3s ease-in-out infinite}.animate-glow{animation:glow-pulse 2s ease-in-out infinite}.glass-card{background:hsla(0,0%,100%,.04);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid hsla(0,0%,100%,.08);border-radius:16px}.btn-primary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 24px;background:var(--purple);color:#fff;font-size:15px;font-weight:600;border-radius:50px;transition:all .2s ease;cursor:pointer;border:none}.btn-primary:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);filter:brightness(.95)}.btn-secondary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 24px;background:hsla(0,0%,100%,.06);color:var(--fg-2);font-size:15px;font-weight:600;border-radius:50px;border:1px solid var(--border-bright);transition:all .2s ease;cursor:pointer}.btn-secondary:hover{background:hsla(0,0%,100%,.1)}.btn-outline-purple{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;background:var(--purple-dim);color:var(--purple);font-size:12px;font-weight:600;border-radius:50px;border:1px solid rgba(192,132,252,.4);cursor:pointer;transition:all .2s}.btn-outline-purple:hover{background:rgba(192,132,252,.25)}.btn-outline-cyan{background:var(--cyan-dim);color:var(--cyan);border-radius:50px;border:1px solid rgba(34,211,238,.4)}.btn-outline-cyan,.btn-outline-pink{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-outline-pink{background:var(--pink-dim);color:var(--pink);border-radius:50px;border:1px solid rgba(244,114,182,.4)}.pill-purple{background:var(--purple-dim);color:var(--purple);border-radius:50px;border:1px solid rgba(192,132,252,.3)}.pill-cyan,.pill-purple{display:inline-block;padding:4px 12px;font-size:11px;font-weight:600}.pill-cyan{background:var(--cyan-dim);color:var(--cyan);border-radius:50px;border:1px solid rgba(34,211,238,.3)}.pill-pink{background:var(--pink-dim);color:var(--pink);border-radius:50px;border:1px solid rgba(244,114,182,.3)}.pill-muted,.pill-pink{display:inline-block;padding:4px 12px;font-size:11px;font-weight:600}.pill-muted{color:var(--fg-muted);border-radius:50px}.field,.pill-muted{background:hsla(0,0%,100%,.05);border:1px solid var(--border-bright)}.field{width:100%;padding:14px 16px;border-radius:14px;color:var(--fg-2);font-size:14px;transition:border-color .2s}.field:focus{border-color:var(--purple);background:rgba(192,132,252,.06)}.field::placeholder{color:var(--fg-dim)}.divider{display:flex;align-items:center;gap:12px;color:var(--fg-dim);font-size:11px}.divider:after,.divider:before{content:"";flex:1 1;height:1px;background:var(--border)}.badge-dj{background:var(--purple-dim);color:var(--purple);border-radius:50px;border:1px solid rgba(192,132,252,.4)}.badge-dj,.badge-promoter{display:inline-flex;align-items:center;padding:3px 10px;font-size:10px;font-weight:700;letter-spacing:.5px}.badge-promoter{background:var(--cyan-dim);color:var(--cyan);border-radius:50px;border:1px solid rgba(34,211,238,.4)}.badge-fa{display:inline-flex;align-items:center;padding:3px 10px;background:var(--pink-dim);color:var(--pink);font-size:10px;font-weight:700;border-radius:50px;border:1px solid rgba(244,114,182,.4);letter-spacing:.5px}.btn-outline-cyan,.btn-outline-pink,.btn-outline-purple,.btn-primary,.btn-secondary,.icon-btn,[role=button],a,button{min-height:44px;min-width:44px}.icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center}.btn-primary:active{transform:scale(.97);filter:brightness(.9)}.btn-secondary:active{transform:scale(.97);opacity:.8}.btn-outline-cyan:active,.btn-outline-pink:active,.btn-outline-purple:active{transform:scale(.95);opacity:.75}[role=button],a,button{touch-action:manipulation}.skeleton{background:linear-gradient(90deg,var(--bg-card) 25%,hsla(0,0%,100%,.06) 50%,var(--bg-card) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease infinite;border-radius:8px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.offline-banner{position:fixed;top:env(safe-area-inset-top);left:0;right:0;background:#7c3aed;color:#fff;text-align:center;font-size:12px;font-weight:700;padding:8px 16px;z-index:9999;letter-spacing:.3px}@media print{body{background:#fff!important;color:#000!important}button,nav{display:none!important}#ticket-pdf{box-shadow:none!important;border:1px solid #ddd!important;margin:20px auto!important;page-break-inside:avoid;break-inside:avoid}}.leaflet-container{background:#050505!important;border:none!important;font-family:inherit!important}.neon-marker-purple{filter:drop-shadow(0 0 5px var(--purple-glow))}.neon-marker-cyan,.neon-marker-purple{transition:transform .3s cubic-bezier(.4,0,.2,1)}.neon-marker-cyan{filter:drop-shadow(0 0 5px var(--cyan-dim))}.leaflet-popup-content-wrapper{background:var(--bg-card)!important;color:#fff!important;border-radius:16px!important;border:1px solid var(--border)!important;padding:0!important;overflow:hidden;box-shadow:0 10px 40px rgba(0,0,0,.6)!important}.leaflet-popup-content{margin:0!important;width:220px!important}.leaflet-popup-tip{background:var(--bg-card)!important;border:1px solid var(--border)!important}.radar-pulse{position:relative;width:12px;height:12px;background:var(--purple);border-radius:50%;border:2px solid #fff;box-shadow:0 0 10px var(--purple)}.radar-pulse:after{content:"";position:absolute;top:-12px;left:-12px;right:-12px;bottom:-12px;border:2px solid var(--purple);border-radius:50%;animation:radar-pulse-anim 2s infinite;opacity:0}@keyframes radar-pulse-anim{0%{transform:scale(.5);opacity:.8}to{transform:scale(2.5);opacity:0}}@keyframes toastIn{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-color-scheme:light){:root{--bg:#f0f0f5;--bg-card:#fff;--bg-card-2:#f5f5fa;--fg:#0a0a0a;--fg-2:#111;--fg-muted:#555;--fg-dim:#888;--border:#d8d8e0;--border-bright:#bbc;--purple:#8b46d8;--purple-dim:rgba(139,70,216,.12);--purple-glow:rgba(139,70,216,.35);--cyan:#0e9ec4;--cyan-dim:rgba(14,158,196,.12);--pink:#d63a8a;--pink-dim:rgba(214,58,138,.12);--indigo:#5c6bc0;--indigo-dim:rgba(92,107,192,.12)}body{border-left-color:var(--border);border-right-color:var(--border)}.glass-card{background:hsla(0,0%,100%,.85);border-color:rgba(0,0,0,.08);box-shadow:0 2px 12px rgba(0,0,0,.08)}.field{background:rgba(0,0,0,.04);border-color:var(--border-bright);color:var(--fg-2)}.field:focus{background:rgba(139,70,216,.05)}.field::placeholder{color:var(--fg-dim)}.skeleton{background:linear-gradient(90deg,#e0e0ea 25%,#f0f0f8 50%,#e0e0ea 75%);background-size:200% 100%}}