.app-container{display:flex;flex-direction:column;min-height:100vh}.banner-bar{background:#fc0;padding:5px;text-align:center;transition:opacity .5s ease}.banner-link{color:#1a1a1a;font-weight:700;text-decoration:none}.dashboard{background-position:50%;background-size:cover;color:#fff;flex-grow:1;padding:20px;position:relative}.top-buttons{display:flex;justify-content:space-between;left:10px;position:absolute;right:10px;top:10px;z-index:10}.home-button{background:none;border:none;color:#fc0;cursor:pointer;font-size:2em;padding:0;transition:color .3s ease,opacity .5s ease}.home-button:hover{color:#f44}.gauge-icon-button{background:none;border:none;cursor:pointer;padding:0}.gauge-icon{height:auto;transition:transform .3s ease,opacity .5s ease;width:50px}.gauge-icon:hover{transform:scale(1.1)}.site-title{color:#fc0;font-size:1.2em;margin:40px 0 0;opacity:1;text-align:center;transition:opacity .5s ease}.site-title.hidden{opacity:0}.dashboard h1{font-size:2.5em;margin:10px 0;opacity:1;text-align:center;transition:opacity .5s ease}.dashboard h1.hidden{opacity:0}.control-box{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px;margin-left:auto;margin-right:auto;max-width:800px;transition:opacity .5s ease}.control-button{background:#fc0;border:none;border-radius:4px;color:#1a1a1a;cursor:pointer;padding:10px 20px;transition:background .3s ease,opacity .5s ease}.control-button:hover{background:#e6b800}.volume-control{align-items:center;display:flex}.volume-control label{margin-right:10px;transition:opacity .5s ease}.volume-slider{width:100px}.clock{font-size:1.2em;opacity:1;transition:opacity .5s ease}.clock.hidden{opacity:0}.controls{align-items:flex-start;display:flex;flex-wrap:wrap;gap:30px;justify-content:center;margin:0 auto;max-width:1000px;padding:20px 0}.error{opacity:1;text-align:center;transition:opacity .5s ease}.error.hidden{opacity:0}@media (max-width:1024px){.controls{gap:20px;max-width:900px}}@media (max-width:768px){.control-box{flex-direction:column;gap:15px;max-width:100%}.controls{align-items:center;flex-direction:column;gap:20px}.dashboard h1{font-size:2em}.gauge-icon{width:40px}.home-button{font-size:1.8em}}@media (max-width:480px){.dashboard{padding:15px}.dashboard h1{font-size:1.8em}.control-box{gap:10px}.controls{gap:15px;padding:10px 0}.volume-slider{width:80px}.clock{font-size:1em}.gauge-icon{width:35px}.home-button{font-size:1.5em}.site-title{font-size:1em;margin-top:30px}.banner-bar{padding:3px}.clock,.control-box,.dashboard h1,.error,.site-title,.volume-control label{transition:opacity .8s ease}}.radio-tuner{background-color:#1a1a1a;border:1px solid #333;border-radius:12px;box-shadow:0 0 12px #fc09;margin:0 auto;max-width:320px;padding:20px;text-align:center;width:100%}.tuner-header{align-items:center;display:flex;flex-direction:column;margin-bottom:15px}.tuner-button{background:none;border:none;cursor:pointer;padding:0;transition:transform .2s ease}.tuner-button:hover{transform:scale(1.05)}.tuner-img{filter:drop-shadow(0 0 5px rgba(255,204,0,.3));height:auto;width:130px}.frequency-display{color:#fc0;font-size:1.2em;font-weight:700;margin:10px 0 0;text-shadow:0 0 3px #ffcc0080}.station-buttons{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:15px 0}.station-button{background-color:#333;border:1px solid #fc0;border-radius:20px;color:#fc0;cursor:pointer;font-size:.9em;font-weight:700;padding:6px 12px;transition:background-color .3s ease,transform .2s ease}.station-button:hover{background-color:#444;transform:scale(1.05)}.station-button.active{background-color:#fc0;color:#1a1a1a}.tuner-buttons{display:flex;gap:10px;justify-content:center;margin-top:10px}.effect-button,.scan-button{background-color:#fc0;border:none;border-radius:20px;color:#1a1a1a;cursor:pointer;font-size:.9em;font-weight:700;padding:8px 16px;transition:background-color .3s ease,transform .2s ease}.effect-button:hover,.scan-button:hover{background-color:#e6b800;transform:scale(1.05)}.broadcast-slogan{word-wrap:break-word;color:#fc0;font-size:.9em;font-style:italic;margin:10px 0 0;padding:0 5px;text-shadow:0 0 2px #ffcc004d}.error{font-size:.9em}@media (max-width:480px){.radio-tuner{max-width:280px;padding:15px}.tuner-img{width:110px}.frequency-display{font-size:1em}.station-button{font-size:.8em;padding:5px 10px}.effect-button,.scan-button{font-size:.8em;padding:6px 12px}.broadcast-slogan{font-size:.8em}}.cassette-player{background:#333;border:2px solid #fc0;border-radius:8px;color:#fff;max-width:350px;padding:15px;text-align:center;width:100%}.cassette-slot{margin-bottom:10px}.cassette-img{height:auto;max-width:200px;width:100%}.mixtape-slogan{color:#fc0;font-size:.9em;margin:10px 0;text-shadow:1px 1px 2px #000000b3}.button-container{flex-wrap:wrap;gap:10px;justify-content:center}.effect-button{background:#f44;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85em;padding:8px 12px;transition:background .3s ease,transform .2s ease}.effect-button:hover{background:#c33;transform:scale(1.05)}.effect-button:disabled{background:#666;cursor:not-allowed}.tape1-front-button{background:#f44}.tape1-back-button{background:#f66}.tape2-front-button{background:#0c0}.tape2-back-button{background:#3f3}.rewind-button{background:#fc0}.reverse-button{background:#f80}.error{color:#f44;font-size:.8em;margin-top:10px}@media (max-width:768px){.cassette-player{max-width:300px}.effect-button{font-size:.8em;padding:6px 10px}}@media (max-width:480px){.cassette-player{max-width:250px;padding:10px}.cassette-img{max-width:150px}.mixtape-slogan{font-size:.8em}.button-container{gap:8px}.effect-button{font-size:.75em;padding:5px 8px}}.dashboard-log{align-items:center;background:#ffffff1a;border:2px solid #fc0;border-radius:8px;display:flex;flex-direction:column;gap:15px;max-width:300px;padding:15px;text-align:center;width:100%}.log-container{max-height:200px;overflow-y:auto;width:100%}.log-item{background:#0000004d;border-radius:4px;cursor:pointer;margin:5px 0;padding:5px;transition:background .3s ease}.log-item:hover{background:#00000080}.log-item p{color:#fff;font-size:.9em;margin:0}.gauge-button{background:none;border:none;cursor:pointer;padding:0}.gauge-img{height:auto;transition:transform .3s ease;width:80px}.gauge-img:hover{transform:scale(1.1)}@media (max-width:768px){.dashboard-log{max-width:250px}.gauge-img{width:70px}}@media (max-width:480px){.dashboard-log{max-width:200px;padding:10px}.gauge-img{width:60px}.log-item p{font-size:.8em}}.footer-container{align-items:center;display:flex;justify-content:space-between}.footer-icon{text-decoration:none;transition:color .3s ease}.left-icon{margin-right:20px}.right-icon{margin-left:20px}.footer-content{flex-grow:1}.copyright{color:#fff}.copyright,.disclaimer{margin:0 0 5px}.attribution{color:#ddd;font-size:.75em;margin:0}.attrib-link{color:#fc0;text-decoration:none;transition:color .3s ease}.attrib-link:hover{color:#f44;text-decoration:underline}@media (max-width:768px){.footer-container{flex-direction:column;padding:10px 15px}.footer-content,.left-icon,.right-icon{margin:10px 0}.attribution,.copyright,.disclaimer{font-size:.85em}}@media (max-width:480px){.attribution,.copyright,.disclaimer{font-size:.7em}.footer-icon{font-size:1.2em}}.about-page{background-position:50%;background-repeat:no-repeat;background-size:cover;color:#fff;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:space-between;min-height:100vh;padding:40px 20px;position:relative}.about-page:before{background:#00000080;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.about-content,.about-header,.contact-section,.terms-section{margin:0 auto 40px;max-width:800px;position:relative;z-index:2}.app-footer{background-color:#1a1a1a;border-top:2px solid #fc0;color:#fff;margin-top:auto;padding:20px 0;position:relative;text-align:center;width:100%;z-index:2}.footer-container{margin:0 auto;max-width:1200px;padding:0 20px}.footer-icon{color:#fc0;font-size:1.5em}.footer-icon:hover{color:#f44}.copyright{font-size:.9em;margin:0}.disclaimer{color:#ccc;font-size:.8em;margin:5px 0 0}.terms-link:hover{color:#f44}.about-header{margin-bottom:50px;text-align:center}.about-header h1{color:#fff;font-size:2.8rem;font-weight:700;margin:0}.about-header .tagline{color:#d3d3d3;font-size:1.2rem;margin-top:10px}.about-content h2,.contact-section h2,.terms-section h2{color:#fff;font-size:1.8rem;font-weight:600;margin-bottom:15px}.about-content p,.contact-section p,.terms-section p{color:#e0e0e0;font-size:1.1rem;line-height:1.7;margin:0 0 20px}.contact-form{background:#ffffffe6;border-radius:8px;box-shadow:0 2px 10px #0003;padding:20px}.form-group{margin-bottom:20px}.form-group label{color:#1e1e1e;display:block;font-size:1rem;margin-bottom:5px}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:1rem;padding:10px;width:100%}.form-group textarea{height:120px;resize:vertical}.submit-button{background-color:#fc0;border:none;border-radius:4px;color:#1e1e1e;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 20px;transition:background-color .3s ease}.submit-button:hover{background-color:#e6b800}.success-message{color:#2ecc71;font-size:1rem;margin-top:10px;text-align:center}.error-message{color:#e74c3c;font-size:1rem}@media (max-width:768px){.about-header h1{font-size:2.2rem}.about-header .tagline{font-size:1rem}.about-content h2,.contact-section h2,.terms-section h2{font-size:1.6rem}.about-content p,.contact-section p,.terms-section p{font-size:1rem}.contact-form{padding:15px}}@media (max-width:480px){.about-header h1{font-size:1.8rem}.about-content p,.contact-section p,.terms-section p{font-size:.95rem}.submit-button{width:100%}}.pirate-page{background-image:url(/static/media/pirate.8e727204df142a5bcfe2.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:40px 20px;position:relative}.pirate-page:before{background:#0009;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.app-footer,.pirate-flags,.pirate-header,.pirate-intro,.pirate-join,.pirate-summary{position:relative;z-index:2}.pirate-header{margin-bottom:30px;text-align:center}.pirate-header h1{color:#fc0;font-size:3em;text-shadow:2px 2px 4px #000000b3}.tagline{color:#ddd;font-size:1.2em;font-style:italic;text-shadow:1px 1px 2px #00000080}.pirate-flags h2,.pirate-intro h2,.pirate-join h2,.pirate-summary h2{color:#fc0;font-size:2em;margin-bottom:15px;text-shadow:2px 2px 4px #000000b3}.pirate-flags p,.pirate-intro p,.pirate-summary p{color:#fff;font-size:1.1em;line-height:1.8;margin-bottom:20px;text-shadow:1px 1px 3px #000c}.cryptic-clue{color:#f44;font-size:.95em;font-style:italic;text-shadow:1px 1px 2px #00000080}.pirate-summary{text-align:center}.pirate-button{background-color:#fc0;border-radius:6px;color:#1a1a1a;display:block;font-weight:700;margin:0 auto;max-width:300px;padding:12px 24px;text-decoration:none;transition:background-color .3s ease}.pirate-join{background:#1a1a1ae6;border-radius:8px;box-shadow:0 4px 12px #00000080;margin:0 auto 40px;max-width:500px;padding:20px}.pirate-form{margin:0 auto;max-width:400px}.pirate-input{background:#fff;border:2px solid #fc0;border-radius:4px;color:#1a1a1a;padding:12px;width:100%}.pirate-input,.terms-checkbox{font-size:1em;margin-bottom:15px}.terms-checkbox{color:#fff}.terms-link{color:#fc0;text-decoration:none}.terms-link:hover{text-decoration:underline}.join-button{background-color:#fc0;border:none;border-radius:6px;color:#1a1a1a;cursor:pointer;font-weight:700;padding:12px 24px;transition:background-color .3s ease;width:100%}.join-button:hover{background-color:#e6b800}.joined-message{color:#2ecc71}.error-message,.joined-message{font-size:1em;margin-top:10px;text-align:center}.error-message{color:#f44}@media (max-width:768px){.pirate-header h1{font-size:2.2em}.pirate-flags h2,.pirate-intro h2,.pirate-join h2,.pirate-summary h2{font-size:1.6em}.pirate-flags p,.pirate-intro p,.pirate-summary p{font-size:1em}.pirate-join{max-width:90%;padding:15px}.pirate-button{max-width:250px;padding:10px 20px}}@media (max-width:480px){.pirate-header h1{font-size:1.8em}.pirate-flags h2,.pirate-intro h2,.pirate-join h2,.pirate-summary h2{font-size:1.4em}.pirate-flags p,.pirate-intro p,.pirate-summary p{font-size:.95em;line-height:1.6}.pirate-input{padding:10px}.join-button{padding:10px 20px}.pirate-button{max-width:200px;padding:8px 16px}.pirate-join{margin:0 10px 20px;max-width:100%;padding:10px}}.terms-page{background:linear-gradient(135deg,#1a1a1a,#333);border:2px solid #fc0;border-radius:10px;box-shadow:0 0 15px #ffcc0080;color:#fc0;font-family:Courier New,Courier,monospace;margin:0 auto;max-width:900px;padding:20px}.terms-header{border-bottom:2px dashed #fc0;margin-bottom:30px;padding-bottom:10px;text-align:center}.terms-header h1{font-size:2.8em;letter-spacing:2px;text-shadow:2px 2px 4px #ffcc00b3;text-transform:uppercase}.terms-header p{color:#ccc;font-size:1.2em;font-style:italic;text-shadow:1px 1px 2px #00000080}.terms-content h2{border-left:5px solid #f44;color:#fc0;font-size:1.6em;margin-top:25px;padding-left:10px;text-transform:uppercase}.terms-content p{color:#fff;font-size:1.1em;line-height:1.8;margin-bottom:15px;text-shadow:1px 1px 2px #0000004d}.back-link{color:#f44;font-weight:700;text-decoration:none;transition:color .3s ease}.back-link:hover{color:#fc0;text-decoration:underline}.terms-footer{border-top:2px dashed #fc0;margin-top:40px;padding-top:20px;text-align:center}.terms-footer p{color:#ccc;font-size:1.1em;margin-bottom:10px}.terms-footer .back-link{margin:0 10px}.game-code{align-items:center;background:#333;border:2px solid #fc0;border-radius:8px;box-shadow:0 0 10px #ffcc0080;color:#fff;flex-direction:column;gap:20px;max-width:600px;padding:20px}.game-code,.game-info{display:flex;width:100%}.game-info{flex-wrap:wrap;font-size:1.1em;gap:10px;justify-content:space-around;text-shadow:1px 1px 2px #000000b3}.game-info p{background:#fc03;border-radius:4px;margin:0;padding:5px 10px;transition:transform .2s ease}.game-info p:hover{transform:scale(1.05)}.progress-bar{background:#222;border-radius:5px;height:10px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#f44,#fc0);height:100%;transition:width .1s linear}.dial-container{background:#222;border:1px solid #f44;border-radius:4px;padding:15px;width:100%}.frequency-slider{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#f44,#fc0);border-radius:12px;cursor:pointer;height:25px;outline:none;touch-action:pan-x;width:100%}.frequency-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff url(/static/media/tuner.13c4413884db3046f1bb.png) 50%/cover;border:2px solid #fc0;border-radius:50%;box-shadow:0 0 5px #00000080;cursor:pointer;height:35px;width:35px}.frequency-slider::-moz-range-thumb{background:#fff url(/static/media/tuner.13c4413884db3046f1bb.png) 50%/cover;border:2px solid #fc0;border-radius:50%;box-shadow:0 0 5px #00000080;cursor:pointer;height:35px;width:35px}.frequency-slider.disabled{background:#666;cursor:not-allowed;opacity:.7}.button-container{display:flex;gap:15px}.reset-button,.start-button{background:#fc0;border:none;border-radius:4px;color:#1a1a1a;cursor:pointer;font-weight:700;padding:10px 20px;transition:background .3s ease}.reset-button:hover,.start-button:hover{background:#e6b800}.start-button:disabled{background:#666;cursor:not-allowed}.game-over{text-align:center}.game-over h2{color:#f44;font-size:2em;text-shadow:2px 2px 4px #000000b3}.game-over p{color:#ddd;font-size:1.2em}.instructions{color:#ddd;font-size:.95em;margin:0;text-align:center;text-shadow:1px 1px 2px #00000080}@media (max-width:768px){.game-code{max-width:450px;padding:15px}.game-info{font-size:1em;gap:8px}.frequency-slider::-moz-range-thumb,.frequency-slider::-webkit-slider-thumb{height:30px;width:30px}}@media (max-width:480px){.game-code{max-width:300px;padding:10px}.game-info{align-items:center;flex-direction:column;font-size:.9em}.frequency-slider{height:20px}.frequency-slider::-moz-range-thumb,.frequency-slider::-webkit-slider-thumb{height:25px;width:25px}.button-container{flex-direction:column;gap:10px}.reset-button,.start-button{padding:8px 16px}.game-over h2{font-size:1.6em}.game-over p{font-size:1em}.instructions{font-size:.85em}}.game-page{background:#1a1a1a url(/static/media/gameback.6e4fb5a926ad172589f8.png) no-repeat 50% fixed;background-size:cover;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;overflow:hidden;padding:20px;position:relative}.game-page:before{background:#00000080;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.app-footer,.game-container,.game-header{position:relative;z-index:2}.game-header{background:#ffcc001a;border-bottom:2px solid #fc0;padding:20px 0;text-align:center}.game-header h1{color:#fc0;font-size:2.5em;margin:0;text-shadow:2px 2px 4px #000000b3}.game-subtitle{color:#ddd;font-size:1.2em;font-style:italic;margin:5px 0 0;text-shadow:1px 1px 2px #00000080}.game-container{align-items:center;background:#00000080;border:2px solid #f44;border-radius:8px;display:flex;flex-grow:1;justify-content:center;margin:0 auto;max-width:1200px;padding:20px}@media (max-width:768px){.game-header h1{font-size:2em}.game-subtitle{font-size:1em}.game-container{max-width:90%;padding:15px}}@media (max-width:480px){.game-header h1{font-size:1.6em}.game-subtitle{font-size:.9em}.game-container{max-width:100%;padding:10px}.game-page{padding:10px}}
/*# sourceMappingURL=main.0c8e74d9.css.map*/