@font-face{font-family:Souvenir Mono;src:url(/fonts/souvenir-mono/SouvenirMonoEF-Light.woff2) format("woff2"),url(/fonts/souvenir-mono/SouvenirMonoEF-Light.woff) format("woff");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Souvenir Mono;src:url(/fonts/souvenir-mono/SouvenirMonoEF-LightItalic.woff2) format("woff2"),url(/fonts/souvenir-mono/SouvenirMonoEF-LightItalic.woff) format("woff");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Univers;src:url(/fonts/univers-regular/LinotypeUnivers-BasicRegular.woff2) format("woff2"),url(/fonts/univers-regular/LinotypeUnivers-BasicRegular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Univers;src:url(/fonts/univers-regular/LinotypeUnivers-BasicRegularItalic.woff2) format("woff2"),url(/fonts/univers-regular/LinotypeUnivers-BasicRegularItalic.woff) format("woff");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Univers;src:url(/fonts/univers-regular/LinotypeUnivers-BasicBold.woff) format("woff"),url(/fonts/univers-regular/LinotypeUnivers-BasicBold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Univers,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.6;color:#333;background-color:#f5f5f5}h1,h2,h3,h4,h5,h6{font-family:Souvenir Mono,monospace;font-weight:300;text-transform:uppercase}#app{min-height:100vh;display:flex;flex-direction:column}.auth-container{max-width:400px;margin:2rem auto;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-form h2{margin-bottom:1rem;text-align:center}.auth-form input{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.auth-form button,.sign-out-button{padding:.75rem;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s}.auth-form button:hover:not(:disabled){background:#0056b3}.auth-form button:disabled{opacity:.6;cursor:not-allowed}.toggle-button{background:transparent!important;color:#007bff!important;border:1px solid #007bff!important;margin-top:.5rem}.message{margin-top:1rem;padding:.5rem;border-radius:4px;text-align:center}.message.error{background:#fee;color:#c33}.message.success{background:#efe;color:#3c3}.admin-link{display:block;margin-top:1rem;padding:.75rem;background:#28a745;color:#fff;text-decoration:none;text-align:center;border-radius:4px;transition:background .2s}.admin-link:hover{background:#218838}.toggle-button{background:transparent!important;color:#007bff!important;text-decoration:underline;padding:.5rem!important}.toggle-button:hover{background:#f0f0f0!important}.sign-out-button{margin-top:1rem;padding:.5rem 1rem;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;width:100%}.sign-out-button:hover{background:#c82333}.message{padding:.5rem;border-radius:4px;text-align:center;font-size:.9rem}.message{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.map-container{width:100%;height:100vh;position:relative}.header{background:#fff;padding:1rem 2rem;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center}.header h1{font-size:1.5rem;color:#333}.user-info{display:flex;align-items:center;gap:1rem}.header nav{display:flex;gap:1rem}.header nav a{color:#007bff;text-decoration:none;padding:.5rem 1rem;border-radius:4px;transition:background .2s}.header nav a:hover{background:#f0f0f0}.map-wrapper{position:relative;width:100%;height:100vh}.map-container{width:100%;height:100%}.map-marker{transition:all .3s ease}@keyframes pulseGlow{0%,to{border-color:#fcf325;box-shadow:0 0 30px #fcf325,0 0 60px #fcf325,0 0 90px #fcf325,0 0 120px #fcf325,0 0 150px #fcf325e6}50%{border-color:#ff0;box-shadow:0 0 50px #fcf325,0 0 100px #fcf325,0 0 150px #fcf325,0 0 200px #fcf325,0 0 250px #fcf325}}@keyframes pulseGlowSelected{0%,to{border-color:#fcf325;box-shadow:0 0 40px #fcf325,0 0 80px #fcf325,0 0 120px #fcf325,0 0 160px #fcf325,0 0 200px #fcf325}50%{border-color:#ff0;box-shadow:0 0 70px #fcf325,0 0 140px #fcf325,0 0 210px #fcf325,0 0 280px #fcf325,0 0 350px #fcf325}}.navbar-icon{position:fixed;top:1.5rem;right:1.5rem;z-index:2000}.nav-button{background:transparent;border:none;cursor:pointer;padding:.5rem;line-height:1;transition:background .2s;display:flex;align-items:center;justify-content:center;width:40px;height:40px}.nav-icon{width:24px;height:24px;display:block}.nav-menu{position:fixed;top:0;right:0;width:33.333%;height:100vh;background:#fffff2;z-index:999;display:flex;flex-direction:column;padding:0;font-family:Univers,sans-serif;box-shadow:-2px 0 10px #0000001a}.nav-item{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem;border-left:4px solid;border-right:4px solid;position:relative;font-weight:700}.nav-close-button{position:absolute;top:1rem;right:1rem;background:transparent;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;z-index:10}.nav-close-icon{width:24px;height:24px;display:block}.nav-item a,.nav-item .nav-menu-button{text-decoration:none;color:#333;background:transparent;border:none;cursor:pointer;font-size:1rem;text-transform:uppercase;width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:opacity .2s}.nav-item a:hover,.nav-item .nav-menu-button:hover{opacity:.7}.nav-item-1{border-top:none;border-bottom:3px solid #000000;border-left:3px solid #ff0000;border-right:none}.nav-item-2{border-top:none;border-bottom:3px solid #ff0000;border-left:3px solid #fff600;border-right:none}.nav-item-3{border-top:none;border-bottom:3px solid #008a00;border-left:3px solid #000000;border-right:none}.nav-item-4{border-top:none;border-bottom:3px solid #ffff00;border-left:3px solid #ff0000;border-right:none}.nav-item-5{border-top:none;border-bottom:none;border-left:3px solid #008a00;border-right:none}.location-overlay{position:absolute;top:0;left:0;width:400px;max-width:50vw;background:#ffeb3b;border:none;border-left:1px solid rgba(0,0,0,.1);border-radius:0;padding:1.5rem;z-index:1000;box-shadow:-2px 0 20px #00000026;overflow-y:auto}.close-button{position:absolute;top:.5rem;right:.5rem;left:auto;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#000;line-height:1;padding:.25rem .5rem;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s;opacity:.7}.close-button:hover{background:#0000001a;opacity:1}.overlay-header-row{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.overlay-heading{margin:0;font-size:1.5rem;font-weight:300;font-family:Souvenir Mono,monospace;color:#000;flex:1}.overlay-body{margin-left:.2rem;color:#000;line-height:1.6;font-family:Univers,sans-serif}.overlay-body p{margin:0}.play-pause-button{background:none;border:1px solid #000;border-radius:4px;cursor:pointer;font-size:1.1rem;color:#000;transition:all .2s;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem}.play-pause-button:hover{background:#0000000d;border-color:#333}@media(max-width:768px){.location-overlay{inset:auto 0 0;width:100vw;max-width:100vw;height:33vh;border-left:none;border-top:1px solid rgba(0,0,0,.1);padding:1rem;box-shadow:0 -2px 20px #00000026}.close-button{top:.75rem;right:.75rem;left:auto}.navbar-icon{top:1rem;right:1rem}.nav-menu{width:100%}}.admin-container{max-width:1200px;margin:0 auto;padding:2rem}.admin-form-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.location-form{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000001a}.location-form h2{font-family:Souvenir Mono,monospace;font-weight:300}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:inherit}.form-group textarea{resize:vertical;min-height:100px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.track-input{display:flex;gap:.5rem;margin-bottom:.5rem}.track-input input{flex:1}.remove-track,.add-track{padding:.5rem 1rem;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;white-space:nowrap}.add-track{background:#28a745;margin-top:.5rem}.remove-track:hover{background:#c82333}.add-track:hover{background:#218838}.submit-button{width:100%;padding:1rem;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.submit-button:hover{background:#0056b3}.locations-list{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000001a}.locations-list h2{margin-bottom:1rem;font-family:Souvenir Mono,monospace;font-weight:300}.locations-list ul{list-style:none}.locations-list li{padding:1rem;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;gap:1rem}.locations-list li:last-child{border-bottom:none}.delete-button{padding:.5rem 1rem;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.delete-button:hover{background:#c82333}@media(max-width:968px){.admin-form-container{grid-template-columns:1fr}}
