:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--bg-dark: #020b0d;--accent: #ede5ff;--overlay: rgba(2, 11, 13, .9)}*{box-sizing:border-box}body,html,#root{margin:0;padding:0;width:100%;height:100%;background-color:var(--bg-dark);color:#fff;font-family:Outfit,sans-serif;overflow:hidden}.app-container{width:100vw;height:100vh;position:relative}.canvas-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.start-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,#ede5ff0d,#020b0df2 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}h1{font-size:clamp(2rem,10vw,5rem);letter-spacing:clamp(.5rem,3vw,1.5rem);margin:0;font-weight:200;color:#fff;text-shadow:0 0 20px rgba(237,229,255,.3);text-align:center}.technical-label{font-family:JetBrains Mono,monospace;font-size:.8rem;opacity:.5;letter-spacing:.4rem;margin-top:1rem}.simple-intro{max-width:600px;text-align:center;line-height:1.8;opacity:.7;font-weight:300;font-size:1rem;margin-top:2rem;letter-spacing:.05rem}.start-actions{display:flex;gap:1.5rem;margin-top:3rem;flex-wrap:wrap;justify-content:center}.big-start-btn{background:transparent;border:1px solid rgba(255,255,255,.1);color:#fff;padding:1.2rem 3rem;font-size:1rem;letter-spacing:.2rem;cursor:pointer;transition:all .4s ease;display:flex;align-items:center;text-decoration:none}.big-start-btn:hover{border-color:var(--accent);background:#ede5ff0d;box-shadow:0 0 30px #ede5ff1a;transform:translateY(-2px)}.file-input{display:none}.signal-monitor{position:absolute;top:2rem;right:2rem;display:flex;align-items:center;background:#0a0a0a66;padding:.5rem 1rem;border-radius:4px;z-index:20;border:1px solid rgba(255,255,255,.05)}.signal-bar-bg{width:100px;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden}.signal-bar-fill{height:100%;transition:width .1s ease-out}.status-label{font-family:JetBrains Mono,monospace;font-size:.6rem;margin-left:1rem;opacity:.4;letter-spacing:.1rem}.contact-link{font-family:JetBrains Mono,monospace;font-size:.6rem;color:#fff;opacity:.3;text-decoration:none;letter-spacing:.1rem;transition:opacity .3s ease;margin-left:1rem}.contact-link:hover{opacity:.8}.bottom-bar{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:1.5rem;background:#0a0a0ad9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:.6rem 1.5rem;border-radius:100px;border:1px solid rgba(255,255,255,.1);z-index:20;max-width:95vw}@media(max-width:768px){.hamburger-btn{display:flex!important}.bottom-bar{position:fixed;bottom:-100%;left:0;transform:none;width:100%;max-width:100%;height:auto;flex-direction:column;padding:2rem;border-radius:30px 30px 0 0;transition:bottom .5s cubic-bezier(.4,0,.2,1);background:#0a0a0af2;border-top:1px solid rgba(255,255,255,.1);gap:2rem;box-shadow:0 -20px 40px #00000080}.bottom-bar.mobile-open{bottom:0}.slider-group{border-right:none;border-bottom:1px solid rgba(255,255,255,.1);padding-right:0;padding-bottom:1.5rem;width:100%;justify-content:space-around}.color-pickers{width:100%;justify-content:space-around}.control-group{width:100%;justify-content:center;gap:2rem}.contact-link{margin:1rem 0 0}h1{letter-spacing:.5rem}}.hamburger-btn{position:absolute;bottom:2rem;right:2rem;z-index:100;background:#00000080;border:1px solid rgba(255,255,255,.1);color:#fff;width:50px;height:50px;border-radius:50%;display:none;align-items:center;justify-content:center;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.hamburger-btn:hover{background:#ffffff1a;border-color:var(--accent)}.hamburger-btn.open{background:var(--accent);color:var(--bg-dark)}.picker-header{display:flex;align-items:center;gap:.5rem}.value-badge{font-family:JetBrains Mono,monospace;font-size:.6rem;background:#ffffff1a;padding:1px 4px;border-radius:3px;color:var(--accent)}.slider-group{display:flex;gap:1.5rem;border-right:1px solid rgba(255,255,255,.1);padding-right:1.5rem}.slider-item{display:flex;flex-direction:column;align-items:center;gap:.3rem}input[type=range]{width:60px;height:2px;cursor:pointer;accent-color:#ffffff}.color-pickers{display:flex;gap:1.5rem}.color-picker-item{display:flex;flex-direction:column;align-items:center;gap:.3rem}.picker-label{font-family:JetBrains Mono,monospace;font-size:.5rem;color:#fff;opacity:.6;letter-spacing:.1rem}.control-btn.recording{color:#fff;opacity:1;text-shadow:0 0 10px rgba(255,255,255,.5);animation:pulse-ring 2s infinite}@keyframes pulse-ring{0%{transform:scale(1);opacity:.6}50%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:.6}}.control-group{display:flex;gap:1.5rem}.control-btn{background:transparent;border:none;color:#fff;cursor:pointer;opacity:.6;transition:opacity .3s ease;display:flex;align-items:center}.control-btn:hover{opacity:1;color:var(--accent)}.color-picker-input{width:25px;height:25px;border:none;background:transparent;cursor:pointer;border-radius:50%;padding:0}.color-picker-input::-webkit-color-swatch-wrapper{padding:0}.color-picker-input::-webkit-color-swatch{border:1px solid rgba(255,255,255,.2);border-radius:50%}.bird-label-container{position:absolute;top:2rem;left:2rem;display:flex;align-items:center;gap:1.2rem;background:#0a0a0ab3;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:1rem 1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.1);z-index:30;animation:slide-in-label .6s cubic-bezier(.23,1,.32,1);box-shadow:0 10px 30px #00000080}@keyframes slide-in-label{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.bird-icon-wrapper{width:50px;height:50px;border:2px solid;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff0d;animation:pulse-border 2s infinite ease-in-out}@keyframes pulse-border{0%{transform:scale(1);box-shadow:0 0 #fff3}50%{transform:scale(1.05);box-shadow:0 0 20px #ffffff1a}to{transform:scale(1);box-shadow:0 0 #fff3}}.bird-info{display:flex;flex-direction:column}.match-tagline{font-family:JetBrains Mono,monospace;font-size:.6rem;letter-spacing:.2rem;opacity:.4;margin-bottom:.2rem}.bird-name{font-size:1.4rem;font-weight:700;letter-spacing:.05rem;margin-bottom:.1rem}.scientific-name{font-size:.7rem;font-style:italic;opacity:.5;margin-bottom:.4rem}.confidence-meter{display:flex;align-items:center;font-family:JetBrains Mono,monospace;font-size:.6rem;color:#0f8;letter-spacing:.1rem}@media(max-width:768px){.bird-label-container{top:1rem;left:1rem;right:1rem;padding:.8rem;gap:.8rem}.bird-name{font-size:1.1rem}.bird-icon-wrapper{width:40px;height:40px}}.formation-select{background:#0a0a0a80;border:1px solid rgba(255,255,255,.1);color:#fff;font-family:JetBrains Mono,monospace;font-size:.6rem;padding:4px 10px;border-radius:4px;cursor:pointer;outline:none;transition:all .3s ease;appearance:none;-webkit-appearance:none;text-align:center;letter-spacing:.1rem}.formation-select:hover{border-color:var(--accent);background:#ffffff1a}.formation-select option{background:#0a0a0a;color:#fff}.control-btn.active{color:var(--accent);opacity:1;filter:drop-shadow(0 0 8px var(--accent));transform:scale(1.1)}.control-btn[title]:hover:after{content:attr(title);position:absolute;bottom:120%;left:50%;transform:translate(-50%);background:#0a0a0ae6;color:#fff;padding:4px 10px;border-radius:4px;font-size:.6rem;font-family:JetBrains Mono,monospace;white-space:nowrap;border:1px solid rgba(255,255,255,.1);pointer-events:none;z-index:100}.data-stream-panel{position:absolute;top:0;right:0;width:200px;height:100vh;background:linear-gradient(to left,rgba(10,10,10,.15),transparent);padding:2rem 1rem;z-index:15;overflow:hidden;pointer-events:none;opacity:.6}.data-stream-header{display:flex;align-items:center;gap:.4rem;font-family:JetBrains Mono,monospace;font-size:.55rem;color:#fff;opacity:.3;letter-spacing:.2rem;padding-bottom:1rem;margin-bottom:.5rem}.data-stream-list{display:flex;flex-direction:column;gap:.3rem;height:calc(100vh - 6rem);overflow:hidden}.data-stream-item{display:flex;flex-direction:column;gap:.2rem;padding:.4rem .5rem;border-left:2px solid;animation:stream-in .2s ease-out;background:transparent}@keyframes stream-in{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.data-note{font-family:JetBrains Mono,monospace;font-size:.9rem;font-weight:700;letter-spacing:.1rem}.data-metrics{display:flex;flex-direction:column;gap:.15rem}.metric{display:flex;align-items:center;gap:.4rem}.metric-label{font-family:JetBrains Mono,monospace;font-size:.45rem;color:#fff6;width:24px;letter-spacing:.05rem}.metric-bar{flex:1;height:3px;background:#ffffff1a;border-radius:2px;overflow:hidden}.metric-fill{height:100%;border-radius:2px;transition:width .1s ease-out}.metric-fill.brightness{background:linear-gradient(to right,#4cc9f0,#f72585)}.data-time{font-family:JetBrains Mono,monospace;font-size:.45rem;color:#ffaa4480;margin-top:.1rem}@media(max-width:768px){.data-stream-panel{display:none}}
