.file-uploader{width:100%}.file-uploader__dropzone{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;cursor:pointer;background:#ffffff0d;border:2px dashed #fff3;border-radius:16px;padding:3rem 2rem;transition:all .3s;position:relative;overflow:hidden}.file-uploader__dropzone:before{content:"";opacity:0;background:linear-gradient(135deg,#00f3ff1a,#ff6b001a);transition:opacity .3s;position:absolute;inset:0}.file-uploader__dropzone:hover{background:#ffffff14;border-color:#00f3ff80;transform:translateY(-2px);box-shadow:0 8px 32px #00f3ff33}.file-uploader__dropzone:hover:before{opacity:1}.file-uploader__dropzone--dragging{background:#00f3ff1a;border-color:#00f3ff;transform:scale(1.02)}.file-uploader__dropzone--dragging:before{opacity:1}.file-uploader__icon{color:#00f3ff;z-index:1;margin-bottom:1.5rem;position:relative}.file-uploader__icon svg{filter:drop-shadow(0 0 20px #00f3ff80);animation:3s ease-in-out infinite float}@keyframes float{0%,to{transform:translate(0)scale(1)}33%{transform:translate(50px,-50px)scale(1.1)}66%{transform:translate(-50px,50px)scale(.9)}}.file-uploader__text{z-index:1;position:relative}.file-uploader__title{color:#fff;margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.file-uploader__subtitle{color:#ffffffb3;margin-bottom:1rem;font-size:1rem}.file-uploader__formats{color:#ffffff80;font-family:monospace;font-size:.875rem}.file-uploader__input{display:none}.file-uploader__error{color:#ff6b6b;text-align:center;background:#ff00001a;border:1px solid #ff00004d;border-radius:8px;margin-top:1rem;padding:1rem;font-size:.875rem}@media (max-width:768px){.file-uploader__dropzone{padding:2rem 1rem}.file-uploader__icon svg{width:48px;height:48px}.file-uploader__title{font-size:1.1rem}.file-uploader__subtitle{font-size:.9rem}}.audio-player{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;width:100%;padding:1.5rem}.audio-player__waveform-container{min-height:80px;margin-bottom:1.5rem;position:relative}.audio-player__waveform{border-radius:8px;overflow:hidden}.audio-player__loading{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;color:#00f3ff;background:#0a0e27e6;flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex;position:absolute;inset:0}.audio-player__spinner{border:3px solid #00f3ff33;border-top-color:#00f3ff;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.audio-player__controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.audio-player__buttons{align-items:center;gap:.75rem;display:flex}.audio-player__button{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:.5rem;padding:.75rem;transition:all .3s;display:flex;position:relative;overflow:hidden}.audio-player__button:before{content:"";opacity:0;background:linear-gradient(135deg,#00f3ff33,#ff6b0033);transition:opacity .3s;position:absolute;inset:0}.audio-player__button:hover:not(:disabled){background:#ffffff1a;border-color:#00f3ff80;transform:translateY(-2px);box-shadow:0 4px 16px #00f3ff4d}.audio-player__button:hover:not(:disabled):before{opacity:1}.audio-player__button:active:not(:disabled){transform:translateY(0)}.audio-player__button:disabled{opacity:.4;cursor:not-allowed}.audio-player__button--primary{background:linear-gradient(135deg,#00f3ff,#b026ff);border:none;padding:1rem}.audio-player__button--primary:hover:not(:disabled){transform:translateY(-3px)scale(1.05);box-shadow:0 8px 24px #00f3ff80}.audio-player__button--primary svg{filter:drop-shadow(0 0 8px #ffffff80)}.audio-player__button--secondary svg{z-index:1;position:relative}.audio-player__button-label{z-index:1;font-size:.75rem;font-weight:600;position:relative}.audio-player__time{color:#ffffffe6;background:#0000004d;border:1px solid #00f3ff4d;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:monospace;font-size:.95rem;display:flex}.audio-player__time-separator{color:#ffffff80}@media (max-width:768px){.audio-player{padding:1rem}.audio-player__controls{flex-direction:column}.audio-player__buttons{justify-content:center;width:100%}.audio-player__button{padding:.65rem}.audio-player__button--primary{padding:.85rem}.audio-player__button svg{width:20px;height:20px}.audio-player__time{justify-content:center;width:100%}}@media (max-width:480px){.audio-player__button-label{display:none}}.amplitude-chart{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;width:100%;padding:1.5rem}.amplitude-chart--empty{justify-content:center;align-items:center;min-height:300px;display:flex}.amplitude-chart__placeholder{text-align:center;color:#fff6}.amplitude-chart__placeholder svg{opacity:.5;margin-bottom:1rem}.amplitude-chart__placeholder p{font-size:.95rem}.amplitude-chart__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.amplitude-chart__title{color:#fff;align-items:center;gap:.5rem;margin:0;font-size:1.25rem;font-weight:600;display:flex}.amplitude-chart__title:before{content:"";background:linear-gradient(#00f3ff,#b026ff);border-radius:2px;width:4px;height:24px}.amplitude-chart__range{background:#0000004d;border:1px solid #00f3ff4d;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;display:flex}.amplitude-chart__range-label{color:#fff9;font-weight:500}.amplitude-chart__range-value{color:#00f3ff;font-family:monospace;font-weight:600}.amplitude-chart__canvas-container{width:100%;height:300px;position:relative}.amplitude-chart__canvas{cursor:crosshair;width:100%;height:100%;display:block}.amplitude-chart__tooltip{pointer-events:none;z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a0e27f2;border:1px solid #00f3ff;border-radius:8px;padding:.75rem 1rem;position:fixed;transform:translate(-50%);box-shadow:0 4px 16px #00f3ff4d}.amplitude-chart__tooltip-time{color:#00f3ff;margin-bottom:.25rem;font-size:.875rem;font-weight:600}.amplitude-chart__tooltip-value{color:#ffffffe6;font-family:monospace;font-size:.875rem}@media (max-width:768px){.amplitude-chart{padding:1rem}.amplitude-chart__header{flex-direction:column;align-items:flex-start}.amplitude-chart__title{font-size:1.1rem}.amplitude-chart__canvas-container{height:250px}}@media (max-width:480px){.amplitude-chart__canvas-container{height:200px}}.frequency-spectrum{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;width:100%;padding:1.5rem}.frequency-spectrum__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.frequency-spectrum__title{color:#fff;align-items:center;gap:.5rem;margin:0;font-size:1.25rem;font-weight:600;display:flex}.frequency-spectrum__title:before{content:"";background:linear-gradient(#00f3ff,#ff6b00);border-radius:2px;width:4px;height:24px}.frequency-spectrum__status{background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;display:flex}.frequency-spectrum__indicator{background:#ffffff4d;border-radius:50%;width:8px;height:8px;transition:all .3s}.frequency-spectrum__indicator--active{background:#00f3ff;animation:2s ease-in-out infinite pulse;box-shadow:0 0 10px #00f3ff,0 0 20px #00f3ff}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.frequency-spectrum__status-text{color:#fffc;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.frequency-spectrum__canvas-container{background:#0a0e2780;border:1px solid #00f3ff33;border-radius:12px;width:100%;height:250px;position:relative;overflow:hidden}.frequency-spectrum__canvas{width:100%;height:100%;display:block}.frequency-spectrum__placeholder{color:#ffffff4d;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.frequency-spectrum__placeholder svg{opacity:.5;margin-bottom:1rem;animation:3s ease-in-out infinite float}.frequency-spectrum__placeholder p{font-size:.95rem}@media (max-width:768px){.frequency-spectrum{padding:1rem}.frequency-spectrum__header{flex-direction:column;align-items:flex-start}.frequency-spectrum__title{font-size:1.1rem}.frequency-spectrum__canvas-container{height:200px}}@media (max-width:480px){.frequency-spectrum__canvas-container{height:180px}}.circular-visualizer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;width:100%;padding:1.5rem}.circular-visualizer__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.circular-visualizer__title{color:#fff;align-items:center;gap:.5rem;margin:0;font-size:1.25rem;font-weight:600;display:flex}.circular-visualizer__title:before{content:"";background:radial-gradient(circle,#00f3ff,#b026ff,#ff6b00);border-radius:50%;width:24px;height:24px;box-shadow:0 0 20px #00f3ff80}.circular-visualizer__badge{min-height:32px}.circular-visualizer__badge-text{color:#00f3ff;text-transform:uppercase;letter-spacing:.05em;background:#00f3ff1a;border:1px solid #00f3ff4d;border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.75rem;font-weight:600;display:inline-flex}.circular-visualizer__badge-icon{color:#00f3ff;text-shadow:0 0 10px #00f3ff;animation:2s ease-in-out infinite pulse}.circular-visualizer__canvas-container{aspect-ratio:1;background:radial-gradient(circle,#0a0e27cc 0%,#0a0e27f2 100%);border:2px solid #00f3ff33;border-radius:50%;width:100%;max-width:500px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 30px #00f3ff4d,inset 0 0 50px #00000080}.circular-visualizer__canvas{width:100%;height:100%;display:block}.circular-visualizer__placeholder{color:#ffffff4d;pointer-events:none;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex;position:absolute;inset:0}.circular-visualizer__placeholder svg{opacity:.5;margin-bottom:1rem;animation:10s linear infinite rotate}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.circular-visualizer__placeholder p{font-size:.95rem}@media (max-width:768px){.circular-visualizer{padding:1rem}.circular-visualizer__header{flex-direction:column;align-items:flex-start}.circular-visualizer__title{font-size:1.1rem}.circular-visualizer__canvas-container{max-width:400px}}@media (max-width:480px){.circular-visualizer__canvas-container{max-width:100%}.circular-visualizer__placeholder p{font-size:.85rem}}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;background-color:#0a0e27;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root{min-height:100vh}.app{min-height:100vh;position:relative;overflow:hidden}.app__background{z-index:0;background:linear-gradient(135deg,#0a0e27 0%,#16213e 100%);position:fixed;inset:0}.app__background-gradient{filter:blur(100px);opacity:.4;border-radius:50%;animation:20s ease-in-out infinite float;position:absolute}.app__background-gradient--1{background:radial-gradient(circle,#00f3ff,#0000);width:500px;height:500px;animation-delay:0s;top:-250px;left:-250px}.app__background-gradient--2{background:radial-gradient(circle,#b026ff,#0000);width:400px;height:400px;animation-delay:7s;bottom:-200px;right:-200px}.app__background-gradient--3{background:radial-gradient(circle,#ff6b00,#0000);width:450px;height:450px;animation-delay:14s;top:50%;left:50%;transform:translate(-50%,-50%)}.app__container{z-index:1;flex-direction:column;max-width:1400px;min-height:100vh;margin:0 auto;padding:2rem;display:flex;position:relative}.app__header{text-align:center;padding:2rem 0 3rem;position:relative}.app__logo{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#00f3ff;background:#ffffff0d;border:2px solid #00f3ff4d;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:1.5rem;animation:3s ease-in-out infinite pulse-glow;display:inline-flex;box-shadow:0 0 40px #00f3ff4d}@keyframes pulse-glow{0%,to{box-shadow:0 0 40px #00f3ff4d}50%{box-shadow:0 0 60px #00f3ff99}}.app__title{letter-spacing:-.02em;background:linear-gradient(135deg,#00f3ff,#b026ff,#ff6b00);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:3.5rem;font-weight:800}.app__title-accent{font-weight:300}.app__subtitle{color:#fff9;font-size:1.1rem;font-weight:400}.app__main{flex-direction:column;flex:1;gap:2rem;display:flex}.app__upload-section{flex:1;justify-content:center;align-items:center;min-height:400px;display:flex}.app__section{animation:.6s ease-out backwards fadeInUp}.app__section--full{width:100%}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.app__section:first-child{animation-delay:.1s}.app__section:nth-child(2){animation-delay:.2s}.app__section:nth-child(3){animation-delay:.3s}.app__visualizers{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;animation:.6s ease-out .3s backwards fadeInUp;display:grid}.app__actions{justify-content:center;padding:1rem 0;animation:.6s ease-out .4s backwards fadeInUp;display:flex}.app__button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:all .3s;display:inline-flex;position:relative;overflow:hidden}.app__button:before{content:"";opacity:0;background:linear-gradient(135deg,#00f3ff33,#ff6b0033);transition:opacity .3s;position:absolute;inset:0}.app__button:hover{background:#ffffff1a;border-color:#00f3ff80;transform:translateY(-2px);box-shadow:0 8px 24px #00f3ff4d}.app__button:hover:before{opacity:1}.app__button:active{transform:translateY(0)}.app__button svg{z-index:1;position:relative}.app__footer{text-align:center;border-top:1px solid #ffffff1a;margin-top:4rem;padding-top:2rem}.app__footer-text{color:#ffffff80;margin-bottom:1rem;font-size:.9rem}.app__footer-badges{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;display:flex}.app__footer-badge{color:#00f3ff;text-transform:uppercase;letter-spacing:.05em;background:#00f3ff1a;border:1px solid #00f3ff4d;border-radius:20px;padding:.4rem 1rem;font-size:.75rem;font-weight:600;display:inline-block}@media (max-width:1200px){.app__visualizers{grid-template-columns:1fr}}@media (max-width:768px){.app__container{padding:1.5rem}.app__header{padding:1.5rem 0 2rem}.app__logo{width:60px;height:60px;margin-bottom:1rem}.app__logo svg{width:28px;height:28px}.app__title{font-size:2.5rem}.app__subtitle{font-size:1rem}.app__main{gap:1.5rem}.app__visualizers{grid-template-columns:1fr;gap:1.5rem;min-width:0}.app__upload-section{min-height:300px}.app__footer{margin-top:3rem}}@media (max-width:480px){.app__container{padding:1rem}.app__header{padding:1rem 0 1.5rem}.app__logo{width:50px;height:50px}.app__logo svg{width:24px;height:24px}.app__title{font-size:2rem}.app__subtitle{font-size:.9rem}.app__main,.app__visualizers{gap:1rem}.app__button{padding:.85rem 1.5rem;font-size:.95rem}.app__footer{margin-top:2rem;padding-top:1.5rem}.app__footer-text{font-size:.8rem}.app__footer-badges{gap:.5rem}.app__footer-badge{padding:.35rem .75rem;font-size:.7rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.loading{background:linear-gradient(90deg,#ffffff0d 0%,#ffffff1a 50%,#ffffff0d 100%) 0 0/1000px 100%;animation:2s infinite shimmer}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#ffffff0d}::-webkit-scrollbar-thumb{background:#00f3ff4d;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#00f3ff80}::selection{color:#fff;background:#00f3ff4d}::selection{color:#fff;background:#00f3ff4d}
