html,body{height:100vh;margin:0;padding:0;background:#1B2828;overflow:hidden;position:fixed;width:100%;}#wrap{position:relative;width:100%;height:100vh;overflow:hidden;}#map{position:absolute;inset:0;opacity:0;transition:opacity 0.3s ease;}.maplibregl-ctrl-attrib,.maplibregl-ctrl-attrib-inner{background:none !important;background-color:transparent !important;color:rgba(255,255,255,0.3) !important;font-size:10px !important;}.maplibregl-ctrl-attrib a{color:rgba(255,255,255,0.4) !important;text-decoration:none !important;}.maplibregl-ctrl-attrib a:hover{color:rgba(255,255,255,0.6) !important;}#fx{position:absolute;inset:0;pointer-events:none;}#icons{position:absolute;inset:0;pointer-events:none;}.tag{position:absolute;left:2rem;bottom:2rem;padding:.6rem 1rem;background:rgba(27,40,40,.75);color:#fff;font:600 14px/1.2 system-ui,-apple-system,Segoe UI,Roboto;border-radius:12px;backdrop-filter:blur(6px);box-shadow:0 8px 24px rgba(0,0,0,.35);}.debug-panel{position:absolute;bottom:1rem;right:1rem;padding:.5rem .8rem;background:rgba(27,40,40,.85);color:#00A1A1;font:500 12px/1.4 'Courier New',monospace;border-radius:6px;backdrop-filter:blur(6px);box-shadow:0 4px 12px rgba(0,0,0,.3);}.debug-panel button{margin-top:0.5rem;padding:0.3rem 0.6rem;background:#00A1A1;color:#1B2828;border:none;border-radius:4px;cursor:pointer;font:500 11px 'Courier New',monospace;}.debug-panel button:hover{background:#00c9c9;}.edit-items-btn{position:absolute;top:1rem;left:1rem;padding:0.6rem 1rem;background:rgba(27,40,40,.85);color:#00A1A1;border:2px solid #00A1A1;border-radius:8px;cursor:pointer;font:600 14px system-ui,-apple-system,Segoe UI,Roboto;backdrop-filter:blur(6px);box-shadow:0 4px 12px rgba(0,0,0,.3);z-index:101;transition:all 0.2s;display:none;}.edit-items-btn:hover{background:rgba(0,161,161,.2);transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.4);}.edit-items-btn.active{background:#00A1A1;color:#1B2828;}.toolbar{position:absolute;top:0;left:0;right:0;background:rgba(27,40,40,.9);backdrop-filter:blur(8px);box-shadow:0 2px 8px rgba(0,0,0,.3);display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px;z-index:100;align-content:flex-start;}.toolbar-icon{width:44px;height:44px;cursor:grab;flex-shrink:0;border-radius:4px;transition:transform 0.1s;}.toolbar-icon:hover{transform:scale(1.1);}.toolbar-icon:active{cursor:grabbing;}.bottom-cta{position:fixed;bottom:3rem;left:50%;transform:translateX(-50%);text-align:center;z-index:102;width:100%;padding:0 1rem;box-sizing:border-box;}.bottom-cta.hidden{display:none;}.tagline{margin:0;font:700 48px system-ui,-apple-system,Segoe UI,Roboto;color:#fff;text-shadow:0 4px 12px rgba(0,0,0,0.6);transition:text-shadow 0.3s ease;}.tagline.typing-glow{text-shadow:0 0 20px rgba(237,161,73,0.8),0 0 40px rgba(237,161,73,0.6),0 0 60px rgba(237,161,73,0.4),0 4px 12px rgba(0,0,0,0.6);animation:taglineGlowPulse 2s ease-in-out infinite;}@keyframes taglineGlowPulse{0%,100%{text-shadow:0 0 20px rgba(237,161,73,0.8),0 0 40px rgba(237,161,73,0.6),0 0 60px rgba(237,161,73,0.4),0 4px 12px rgba(0,0,0,0.6);}50%{text-shadow:0 0 30px rgba(237,161,73,1),0 0 60px rgba(237,161,73,0.8),0 0 90px rgba(237,161,73,0.6),0 4px 12px rgba(0,0,0,0.6);}}.email-form{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:nowrap;}.email-input{padding:0.75rem 1rem;font:500 14px system-ui,-apple-system,Segoe UI,Roboto;background:rgba(27,40,40,0.85);color:#fff;border:2px solid #FF3940;border-radius:8px;backdrop-filter:blur(6px);box-shadow:0 4px 12px rgba(0,0,0,0.3);width:280px;transition:all 0.2s;}.email-input::placeholder{color:rgba(255,255,255,0.5);}.email-input:focus{outline:none;border-color:#FF3940;box-shadow:0 4px 16px rgba(255,57,64,0.4);}.submit-btn{padding:0.75rem 1.5rem;font:600 14px system-ui,-apple-system,Segoe UI,Roboto;background:#FF3940;color:#fff;border:2px solid #FF3940;border-radius:8px;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,0.3);transition:all 0.2s;white-space:nowrap;}.submit-btn:hover{background:#ff5158;transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,0.4);}.tagline-cursor{display:inline-block;width:3px;height:1em;background:#EDA149;margin-left:4px;margin-bottom:-0.15em;animation:blink 0.7s infinite;}.tagline-cursor.invisible{opacity:0;}.tagline-spacer{display:inline-block;width:7px;height:1em;opacity:0;margin-right:4px;}@keyframes blink{0%,49%{opacity:1;}50%,100%{opacity:0;}}.tagline-cursor.invisible{animation:none !important;}@media (max-width:768px){.bottom-cta{bottom:1.5rem;}.tagline{font-size:28px;margin:0;}.email-form{gap:6px;}.email-input{width:180px;padding:0.6rem 0.75rem;font-size:16px;}.submit-btn{padding:0.6rem 1rem;font-size:14px;}}.speech-bubble{position:absolute;background:#ffffff;color:#000000;font:700 16px 'Courier New','Courier',monospace;padding:12px 16px;border:3px solid #000000;border-radius:12px;box-shadow:0 8px 20px rgba(0,0,0,0.5),inset 0 0 0 2px #ffffff;pointer-events:none;z-index:103;width:200px;max-width:200px;text-align:center;word-wrap:break-word;overflow-wrap:break-word;transform:translate(-50%,-100%);margin-top:-40px;opacity:0;animation:speechBubbleFadeIn 0.3s ease-out forwards;}@keyframes speechBubbleFadeIn{from{opacity:0;transform:translate(-50%,-100%) scale(0.8);}to{opacity:1;transform:translate(-50%,-100%) scale(1);}}.speech-bubble.hide{animation:speechBubbleFadeOut 0.2s ease-in forwards;}@keyframes speechBubbleFadeOut{from{opacity:1;transform:translate(-50%,-100%) scale(1);}to{opacity:0;transform:translate(-50%,-100%) scale(0.8);}}.speech-bubble::after{content:'';position:absolute;bottom:-15px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:15px solid transparent;border-right:15px solid transparent;border-top:15px solid #000000;}.speech-bubble::before{content:'';position:absolute;bottom:-9px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-top:12px solid #ffffff;z-index:1;}.speech-bubble .cursor{display:none;}@media (max-width:768px){.speech-bubble{font-size:14px;padding:10px 14px;width:180px;max-width:180px;}}.keyboard-hint{text-align:center;color:rgba(255,255,255,0.6);font:400 14px system-ui,-apple-system,Segoe UI,Roboto;text-shadow:0 2px 8px rgba(0,0,0,0.4);margin:0.5rem 0;opacity:1;}.keyboard-hint.fade-out{animation:hintFadeOut 1.5s ease-in forwards;}@keyframes hintFadeIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}@keyframes hintFadeOut{from{opacity:1;transform:translateY(0);}to{opacity:0;transform:translateY(-10px);}}