:root{--hive-yellow: #FFC107;--nectar-orange: #FF8A00;--meetup-coral: #FF4D6D;--hive-purple: #6A00FF;--buzz-teal: #00D4C4;--midnight: #0F1220;--midnight-card: #181C30;--midnight-light:#222740;--honey-cream: #FFF7E6;--text-primary: #FFFFFF;--text-muted: rgba(255,255,255,.55);--text-dark: #0F1220;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--nav-h: 64px;--safe-bottom: env(safe-area-inset-bottom, 12px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:Nunito,sans-serif}body{background:#000;display:flex;justify-content:center;align-items:center;min-height:100vh}#app{width:390px;height:844px;background:var(--midnight);position:relative;overflow:hidden;border-radius:44px;box-shadow:0 40px 100px #000c,0 0 0 1px #ffffff0f}@media (max-width: 430px){#app{width:100vw;height:100dvh;border-radius:0;box-shadow:none}body{align-items:flex-start}}.screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:var(--midnight);overflow:hidden;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;transform:translate(30px)}.screen.active{opacity:1;pointer-events:all;transform:translate(0)}.screen.exit{opacity:0;transform:translate(-30px)}.screen-content{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.screen-content::-webkit-scrollbar{display:none}.bottom-nav{display:flex;align-items:center;justify-content:space-around;height:var(--nav-h);background:var(--midnight-card);border-top:1px solid rgba(255,255,255,.07);padding-bottom:var(--safe-bottom);flex-shrink:0;z-index:10}.nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer;padding:8px 16px;border-radius:var(--radius-sm);transition:all .15s ease;background:none;border:none;color:var(--text-muted)}.nav-item.active{color:var(--hive-yellow)}.nav-item svg{width:22px;height:22px}.nav-item span{font-size:10px;font-weight:700;letter-spacing:.3px;font-family:Space Grotesk,sans-serif}.top-bar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 8px;flex-shrink:0}.top-bar-title{font-size:18px;font-weight:800;color:var(--text-primary)}.back-btn{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--hive-yellow);font-family:Nunito,sans-serif;font-weight:700;font-size:15px;cursor:pointer;padding:4px 0}.back-btn svg{width:20px;height:20px}.card{background:var(--midnight-card);border-radius:var(--radius-md);padding:16px;border:1px solid rgba(255,255,255,.06)}.btn-primary{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--hive-yellow);color:var(--text-dark);border:none;border-radius:var(--radius-xl);font-family:Nunito,sans-serif;font-weight:900;font-size:16px;padding:18px 28px;width:100%;cursor:pointer;transition:transform .1s,box-shadow .1s;letter-spacing:.3px}.btn-primary:active{transform:scale(.97)}.btn-primary.lg{font-size:18px;padding:20px 28px;box-shadow:0 8px 32px #ffc10759}.btn-secondary{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--midnight-light);color:var(--text-primary);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);font-family:Nunito,sans-serif;font-weight:700;font-size:15px;padding:14px 20px;width:100%;cursor:pointer;transition:background .15s}.btn-secondary:active{background:#ffffff14}.avatar-stack{display:flex;align-items:center}.avatar{width:32px;height:32px;border-radius:50%;border:2px solid var(--midnight-card);margin-right:-8px;font-size:13px;display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--midnight);flex-shrink:0}.avatar-count{width:32px;height:32px;border-radius:50%;background:var(--midnight-light);border:2px solid var(--midnight-card);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:var(--text-muted);margin-right:-8px}.pill{display:inline-flex;align-items:center;gap:4px;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:100px;padding:5px 12px;font-size:12px;font-weight:700;color:var(--text-muted);cursor:pointer;transition:all .15s}.pill.active{background:#ffc10726;border-color:var(--hive-yellow);color:var(--hive-yellow)}.section-label{font-size:12px;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;font-family:Space Grotesk,sans-serif}.bee-mascot{font-size:48px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 4px 12px rgba(255,193,7,.4))}.step-dots{display:flex;gap:6px;align-items:center}.step-dot{width:8px;height:8px;border-radius:50%;background:#fff3;transition:all .2s}.step-dot.active{background:var(--hive-yellow);width:20px;border-radius:4px}.step-dot.done{background:var(--buzz-teal)}.input-field{background:var(--midnight-light);border:1.5px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);color:var(--text-primary);font-family:Nunito,sans-serif;font-size:15px;padding:14px 16px;width:100%;outline:none;transition:border-color .15s}.input-field:focus{border-color:var(--hive-yellow)}.input-field::placeholder{color:var(--text-muted)}.meetup-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.meetup-type-tile{background:var(--midnight-card);border:2px solid rgba(255,255,255,.06);border-radius:var(--radius-md);padding:20px 16px;display:flex;flex-direction:column;align-items:center;gap:10px;cursor:pointer;transition:all .15s;font-size:15px;font-weight:800;color:var(--text-primary)}.meetup-type-tile:active,.meetup-type-tile.selected{border-color:var(--hive-yellow);background:#ffc10714;color:var(--hive-yellow)}.meetup-type-tile .tile-emoji{font-size:36px}.star-row{display:flex;gap:4px}.star{font-size:22px;cursor:pointer;filter:grayscale(1) opacity(.4);transition:filter .1s}.star.lit{filter:none}.range-slider{width:100%;accent-color:var(--hive-yellow)}.chat-bubble{max-width:75%;padding:10px 14px;border-radius:18px;font-size:14px;font-weight:600;line-height:1.4}.chat-bubble.them{background:var(--midnight-light);color:var(--text-primary);border-bottom-left-radius:4px;align-self:flex-start}.chat-bubble.me{background:var(--hive-purple);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}@keyframes pulse-glow{0%,to{box-shadow:0 8px 32px #ffc1074d}50%{box-shadow:0 8px 48px #ffc1078c}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes spin-hex{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes confetti-fall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(60px) rotate(360deg);opacity:0}}@keyframes progress-bar{0%{width:0%}to{width:73%}}.float-anim{animation:float 2.8s ease-in-out infinite}.pulse-btn{animation:pulse-glow 2.2s ease-in-out infinite}.map-box{width:100%;border-radius:var(--radius-md);overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#0b0e1a;flex-shrink:0}.leaflet-container{background:#0b0e1a;font-family:Nunito,sans-serif}.bc-dark-tiles{filter:invert(1) hue-rotate(180deg) saturate(.75) brightness(.9) contrast(1.05)}.leaflet-control-attribution{background:#00000080!important;color:#ffffff80!important;font-size:9px!important}.leaflet-control-attribution a{color:#ffffffb3!important}.leaflet-bar a{background:var(--midnight-card)!important;color:#fff!important;border-color:#ffffff1a!important}.leaflet-bar a:hover{background:var(--midnight-light)!important}.bc-icon{background:none;border:none}.bc-marker{width:30px;height:30px;border-radius:50%;background:var(--c);color:var(--midnight);display:flex;align-items:center;justify-content:center;font-family:Space Grotesk,sans-serif;font-weight:700;font-size:13px;border:2px solid var(--midnight);box-shadow:0 2px 8px #00000080}.bc-sweet{width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 50% 40%,#00d4c459,#00d4c414);display:flex;align-items:center;justify-content:center;font-size:24px;border:2px solid var(--buzz-teal);box-shadow:0 0 0 6px #00d4c426,0 4px 16px #00d4c466;animation:pulse-glow 2.2s ease-in-out infinite}.bc-venue{width:14px;height:14px;border-radius:50%;background:var(--nectar-orange);border:2px solid var(--midnight);box-shadow:0 1px 4px #00000080}
