:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}#root{width:100%;height:100%}.app-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;width:100vw;box-sizing:border-box;overflow:hidden;transition:background-color .5s ease}.app-container.dark-mode{background-color:#1a1a1a}.app-container.light-mode{background-color:#fafafa}.band-name{font-family:Inter,sans-serif;font-weight:900;text-transform:uppercase;text-align:center;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:38vmin;line-height:.75;letter-spacing:-.06em;margin:0;padding:0;word-break:break-all;overflow:hidden;transition:color .5s ease;filter:contrast(.8) saturate(0)}.app-container.dark-mode .band-name{color:#fafafa}.app-container.light-mode .band-name{color:#1a1a1a}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.navbar{position:fixed;top:0;left:0;width:100%;height:60px;z-index:999;box-sizing:border-box;pointer-events:none}.navbar-mobile-menu-container{display:flex;justify-content:flex-end;align-items:center;width:100%;height:100%;padding-right:20px;pointer-events:auto}.navbar .mobile-menu-icon{position:static;margin-left:auto}.logo{height:6em;width:6em;padding:1.5em;border-radius:50%;object-fit:cover;will-change:filter;transition:filter .3s;box-sizing:border-box}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.under-construction{text-align:center;font-family:Inter,sans-serif;font-weight:500;font-size:4vmin;margin-top:1vh;text-transform:uppercase;transition:color .5s ease}.app-container.dark-mode .under-construction{color:#fafafa}.app-container.light-mode .under-construction{color:#1a1a1a}.map-viewer{position:fixed;top:0;left:0;width:100vw;height:100vh;margin:0;padding:0;overflow:hidden}.container{position:absolute;top:0;left:0;width:100%;height:100%;display:block}canvas{display:block;width:100%;height:100%}.info{position:absolute;bottom:20px;left:20px;top:auto;right:auto;background:#1a1a1ad9;color:#fafafa;padding:10px 15px;border-radius:6px;max-width:320px;z-index:100;font-family:Inter,sans-serif;box-shadow:0 2px 10px #00000080}.info h1{font-size:1.1rem;font-weight:700;margin:0 0 8px;color:#fafafa}.info p{margin:0 0 10px;font-size:.8rem;font-weight:400;opacity:.9;line-height:1.4}.back-button{display:inline-block;background:#4a6cf7;color:#fff;padding:6px 12px;text-decoration:none;border-radius:4px;font-weight:600;font-size:.75rem;transition:background-color .2s ease,transform .2s ease;border:1px solid rgba(255,255,255,.3)}.back-button:hover{background:#3a5cc7;transform:translateY(-1px)}.coordinates{background:#0000004d;border-radius:4px;padding:6px 10px;margin-bottom:10px;font-family:"monospace",monospace;font-size:.75rem}.coordinates p{margin:2px 0;color:#e0e0e0;opacity:1}@media (max-width: 768px){.info{bottom:10px;left:10px;right:10px;max-width:calc(100% - 20px);padding:8px 12px}.info h1{font-size:1rem}.info p{font-size:.75rem}.back-button{padding:5px 10px;font-size:.7rem}.coordinates{font-size:.7rem;padding:5px 8px}}.control-toggle{display:block;background:#2a6bab;color:#fff;border:none;padding:8px 16px;border-radius:4px;font-weight:700;font-size:.9rem;margin:10px 0;cursor:pointer;transition:background .2s}.control-toggle:hover{background:#3a7dc1}.bridge-controls{background:#000000b3;border-radius:8px;padding:15px;margin:10px 0 15px}.bridge-controls h3{margin:0 0 10px;font-size:1.1rem;color:#fff}.control-row{display:flex;margin-bottom:10px;gap:10px}.control-row label{flex:1;display:flex;align-items:center;color:#fff;font-size:.9rem}.control-row input{flex:1;background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;padding:5px;border-radius:3px;margin-left:5px;font-family:monospace;width:60px}.control-row button{background:#2a6bab;color:#fff;border:none;padding:6px 12px;border-radius:4px;font-weight:700;cursor:pointer}.control-row button:hover{background:#3a7dc1}.bridge-shortcuts{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.2)}.bridge-shortcuts p{color:#fff;font-size:.9rem;display:flex;align-items:center;gap:10px}.bridge-shortcuts button{background:#2a6bab;color:#fff;border:none;padding:5px 10px;border-radius:4px;font-size:.8rem;cursor:pointer}.bridge-shortcuts button:hover{background:#3a7dc1}.water-controls{background:#000000b3;border-radius:8px;padding:12px 15px;margin-bottom:15px}.water-controls label{display:flex;align-items:center;color:#fff;font-size:.9rem;gap:10px}.water-controls input[type=range]{flex:1;margin:0 10px}.water-controls span{font-family:monospace;background:#0078ff4d;padding:2px 8px;border-radius:3px;min-width:30px;text-align:center}.mobile-menu-png-icon{position:fixed;top:20px;right:20px;width:128px;height:128px;border-radius:50%;object-fit:cover;border:2px solid white;cursor:pointer;z-index:1001;box-sizing:border-box;background-color:#333}.mobile-menu-png-icon.spinning{animation:spin 8s linear infinite}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#4a6cf7;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;opacity:0;transform:translate(100%);transition:opacity .3s ease-out,transform .3s ease-out;pointer-events:none}.mobile-menu-overlay.open{opacity:1;transform:translate(0);pointer-events:auto}.mobile-menu-nav ul{list-style:none;padding:0;margin:0;text-align:center}.mobile-menu-nav li{margin:30px 0}.mobile-menu-nav a{text-decoration:none;color:#fff;font-size:10vmin;font-weight:700;padding:10px 20px;display:block;transition:background-color .2s ease-in-out}.mobile-menu-nav a:hover{background-color:#ffffff1a;border-radius:8px}
