.dotgrid-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:auto}.aurora-container{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;border-radius:15px}.aurora-gradient{position:absolute;width:200%;height:200%;filter:blur(40px);opacity:.5;animation:aurora-move infinite ease-in-out}.aurora-gradient-1{background:radial-gradient(circle,rgba(147,51,234,.6) 0%,transparent 50%);top:-50%;left:-50%;animation-delay:0s}.aurora-gradient-2{background:radial-gradient(circle,rgba(59,130,246,.6) 0%,transparent 50%);top:-30%;left:-30%;animation-delay:-7s}.aurora-gradient-3{background:radial-gradient(circle,rgba(236,72,153,.6) 0%,transparent 50%);top:-40%;left:-40%;animation-delay:-14s}@keyframes aurora-move{0%,to{transform:translate(0) rotate(0) scale(1)}33%{transform:translate(30%,20%) rotate(120deg) scale(1.1)}66%{transform:translate(-20%,30%) rotate(240deg) scale(.9)}}*{margin:0;padding:0;box-sizing:border-box}body{background-color:#000;color:#fff;font-family:Handjet,monospace;display:flex;justify-content:center;align-items:center;min-height:100vh;padding:40px 20px}.container{width:100%;max-width:1800px;display:flex;flex-direction:column;align-items:center;position:relative}.app-title{position:absolute;top:85px;left:20px;display:flex;flex-direction:column;align-items:flex-start;z-index:100}.title-main{font-family:Handjet,monospace;font-size:42px;font-weight:700;color:#fff;line-height:1;letter-spacing:2px;font-style:italic}.title-sub{font-family:Roboto Mono,monospace;font-size:16px;font-weight:500;color:#888;letter-spacing:4px;margin-top:-5px;display:flex;align-items:center;gap:8px}.pro-badge{font-family:Handjet,monospace;font-size:14px;font-weight:600;color:gold;letter-spacing:1px}.new-top-row{display:flex;gap:15px;margin-bottom:15px;width:100%;justify-content:center;transform:translate(var(--top-row-horizontal-offset, 0px),var(--top-row-vertical-offset, 0px))}.top-row-item{flex:0 0 auto}.top-row-item:nth-child(1){width:var(--top-row-sound-visualizer-width, 400px)}.top-row-item:nth-child(2){width:var(--top-row-upload-sample-width, 400px)}.top-row-item:nth-child(3){width:var(--top-row-login-width, 400px)}.top-row-box{width:100%;height:45px;display:flex;align-items:center;justify-content:center;border:5px solid #888;border-radius:15px;font-family:Handjet,monospace;font-size:18px;font-weight:500;color:#fff;background-color:#000;cursor:default;position:relative}.top-row-box.coming-soon{color:gold;border-color:gold}.top-row-box.aurora-box{border:none;background-color:#000;overflow:hidden}.top-row-item:nth-child(2) .top-row-box{border-color:#444;color:#555}.top-row-box.login-btn{cursor:pointer;transition:border-color .2s}.top-row-box.login-btn:hover{border-color:#fff}.top-row-item:nth-child(2) .top-row-box:after{content:"";position:absolute;inset:0;background-color:#0009;border-radius:10px;pointer-events:none}.popup-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.popup-container{background-color:#141414f2;border:5px solid #888;border-radius:25px;padding:40px;max-width:450px;width:90%;position:relative;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.popup-close{position:absolute;top:15px;right:20px;background:none;border:none;color:#888;font-size:36px;cursor:pointer;font-family:Handjet,monospace;transition:color .2s}.popup-close:hover{color:#fff}.popup-title{font-family:Handjet,monospace;font-size:32px;font-weight:600;color:#fff;text-align:center;margin-bottom:20px}.popup-description{font-family:Roboto Mono,monospace;font-size:16px;color:#888;text-align:center;margin-bottom:30px;line-height:1.5}.popup-error{font-family:Roboto Mono,monospace;font-size:14px;color:#e57373;text-align:center;margin-bottom:15px;padding:10px;background-color:#e573731a;border-radius:8px}.popup-form{display:flex;flex-direction:column;gap:15px}.popup-input{width:100%;height:50px;background-color:#000;border:3px solid #888;border-radius:12px;color:#fff;font-family:Roboto Mono,monospace;font-size:16px;padding:0 15px;transition:border-color .2s}.popup-input:focus{outline:none;border-color:#add8e6}.popup-btn{width:100%;height:50px;border:none;border-radius:12px;font-family:Handjet,monospace;font-size:20px;font-weight:600;cursor:pointer;transition:all .2s}.popup-btn.primary{background-color:#add8e6;color:#000}.popup-btn.primary:hover{background-color:#87ceeb}.popup-btn.google{background-color:#fff;color:#000}.popup-btn.google:hover{background-color:#e0e0e0}.popup-btn.cancel{background-color:#e57373;color:#fff}.popup-btn.cancel:hover{background-color:#ef5350}.popup-divider{display:flex;align-items:center;margin:20px 0;color:#888;font-family:Roboto Mono,monospace}.popup-divider:before,.popup-divider:after{content:"";flex:1;height:1px;background-color:#888}.popup-divider span{padding:0 15px}.popup-footer{text-align:center;margin-top:20px;color:#888;font-family:Roboto Mono,monospace;font-size:14px}.popup-link{background:none;border:none;color:#add8e6;cursor:pointer;font-family:Roboto Mono,monospace;font-size:14px;text-decoration:underline}.popup-link:hover{color:#87ceeb}.account-info{display:flex;flex-direction:column;gap:20px;margin-bottom:30px}.account-field{display:flex;flex-direction:column;gap:8px}.account-field label{font-family:Roboto Mono,monospace;font-size:14px;color:#888}.account-field p{font-family:Handjet,monospace;font-size:20px;color:#fff;padding:12px;background-color:#000;border:3px solid #888;border-radius:12px}.dev-toggle{position:absolute;top:20px;right:20px;display:flex;align-items:center;gap:10px;z-index:1000}.toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#555;transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:gold}.toggle-switch input:checked+.toggle-slider:before{transform:translate(26px)}.toggle-label{font-family:Roboto Mono,monospace;font-size:14px;color:#888}.toggle-label.premium{color:gold;font-weight:500}.top-control-bar{display:flex;gap:15px;margin-bottom:20px;align-items:center;transform:translate(var(--top-control-bar-horizontal-offset, 0px),var(--top-control-bar-vertical-offset, 0px))}.bpm-section{display:flex;gap:10px;align-items:center;position:relative;transform:translate(var(--bpm-horizontal-offset, 0px),var(--bpm-vertical-offset, 0px))}.bpm-display{padding:20px 30px;border:var(--border-thickness, 5px) solid #888;border-radius:15px;font-size:24px;font-weight:500;min-width:150px;text-align:center;height:90px;display:flex;align-items:center;justify-content:center}.bpm-display.bpm-clickable{cursor:pointer;transition:all .1s}.bpm-display.bpm-clickable:hover{border-color:#fff}.bpm-display.bpm-clickable:active{transform:scale(.98)}.locked-overlay{position:absolute;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;border-radius:25px;z-index:10;pointer-events:all}.locked-overlay-text{font-family:Handjet,monospace;font-size:16px;color:gold;font-weight:600}.locked-overlay-text.pro-text{color:#555}.top-btn{border:var(--border-thickness, 5px) solid #888;border-radius:15px;background-color:#000;color:#fff;font-family:Handjet,monospace;font-size:20px;font-weight:500;cursor:pointer;transition:border-color .2s;width:90px;height:90px;display:flex;align-items:center;justify-content:center}.top-btn:hover{border-color:#fff}.chord-display-large{border:var(--border-thickness, 5px) solid #888;border-radius:15px;font-size:48px;font-weight:500;width:var(--chord-width, 220px);height:90px;text-align:center;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background-color:#000;transform:translate(var(--chord-horizontal-offset, 0px),var(--chord-vertical-offset, 0px))}.chord-text{position:relative;z-index:1}.viz-bar{width:var(--wave-width, 500px);height:90px;border:var(--border-thickness, 5px) solid #888;border-radius:15px;overflow:hidden;background-color:#000;transform:translate(var(--wave-horizontal-offset, 0px),var(--wave-vertical-offset, 0px))}.synth-grid{display:flex;gap:20px;margin-bottom:20px}.keyboard-layout{display:flex;flex-direction:column;gap:5px;align-items:center;width:100%}.keyboard-sections-wrapper{display:flex;gap:var(--spacing-between-sections, 60px);align-items:flex-start}.chord-buttons-section{display:flex;flex-direction:column;gap:var(--spacing-between-rows, 5px);margin-top:var(--chord-section-vertical-offset, 0px);margin-left:var(--chord-section-horizontal-offset, 0px)}.piano-section{display:flex;flex-direction:column;gap:var(--spacing-between-rows, 5px);margin-top:var(--piano-section-vertical-offset, 0px);margin-left:var(--piano-section-horizontal-offset, 0px)}.chord-section-container{display:flex;flex-direction:column;gap:5px;width:460px}.chord-labels-top{position:relative;height:20px;width:460px;font-family:Roboto Mono,monospace;font-size:16px;color:#888}.chord-labels-top span{position:absolute;width:95px;text-align:center}.chord-buttons-wrapper{position:relative;height:140px;width:460px}.chord-row-bottom{display:flex;gap:10px;position:absolute;bottom:0;left:0}.chord-row-top{position:absolute;top:0;left:0;z-index:10}.chord-labels-bottom{display:flex;gap:10px;font-family:Roboto Mono,monospace;font-size:16px;color:#888;margin-top:5px;width:420px}.chord-labels-bottom span{width:95px;text-align:center}.piano-section-container{display:flex;flex-direction:column;gap:5px;width:725px}.piano-keys-wrapper{position:relative;height:95px;width:725px}.piano-white-keys-row{display:flex;gap:10px;position:absolute;bottom:0;left:0}.piano-black-keys-row{position:absolute;top:0;left:0;z-index:10}.piano-black-keys-row .piano-key.black{position:absolute}.piano-black-labels{position:relative;height:20px;width:725px;font-family:Roboto Mono,monospace;font-size:16px;color:#888}.piano-black-labels span{position:absolute;width:95px;text-align:center}.piano-white-labels{display:flex;gap:10px;font-family:Roboto Mono,monospace;font-size:16px;color:#888;margin-top:5px;width:725px}.piano-white-labels span{width:95px;text-align:center}.keyboard-row{display:flex;gap:var(--spacing-between-buttons, 10px);align-items:center}.chord-buttons-section .keyboard-row.first-row{margin-left:var(--chord-top-row-offset, -95px)}.chord-buttons-section .keyboard-row.second-row{margin-left:var(--chord-bottom-row-offset, 0px)}.piano-section .keyboard-row.first-row{margin-left:var(--labels-piano-black-offset, 0px)}.piano-section .keyboard-row.second-row{margin-left:var(--piano-white-keys-offset, 0px)}.piano-keys-container{position:relative;height:95px;margin-top:var(--piano-top-margin, 20px)}.keyboard-row.piano-overlap{position:absolute;top:var(--piano-black-keys-top, 0px);left:var(--piano-black-keys-offset, 0px);z-index:10;display:flex;gap:0;margin-left:0!important}.keyboard-row.piano-overlap .key-btn:nth-child(1){position:absolute;left:var(--piano-black-y, 52.5px)}.keyboard-row.piano-overlap .key-btn:nth-child(2){position:absolute;left:var(--piano-black-u, 157.5px)}.keyboard-row.piano-overlap .spacer{display:none}.keyboard-row.piano-overlap .key-btn:nth-child(4){position:absolute;left:var(--piano-black-o, 367.5px)}.keyboard-row.piano-overlap .key-btn:nth-child(5){position:absolute;left:var(--piano-black-p, 472.5px)}.keyboard-row.piano-overlap .key-btn:nth-child(6){position:absolute;left:var(--piano-black-bracket, 577.5px)}.keyboard-row .spacer{width:30px}.keyboard-row .spacer-large{width:60px}.key-btn{width:95px;height:95px;background-color:#000;border:var(--border-thickness, 5px) solid #E6C9E8;border-radius:15px;font-size:24px;font-family:Handjet,monospace;font-weight:500;cursor:pointer;transition:all .1s;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px #e6c9e880,0 6px 8px #0006;position:relative;top:0}.key-btn:hover{border-color:#888;box-shadow:0 4px #88888880,0 6px 8px #0006}.key-btn:active,.key-btn.active{transform:translateY(3px);box-shadow:0 1px #e6c9e880,0 2px 4px #0006}.recording-btn-container{width:95px;height:95px;display:flex;align-items:center;justify-content:center;position:relative}.recording-btn-container .locked-overlay{background-color:#0009}.recording-btn-container .locked-overlay .locked-overlay-text{display:none}.pro-circle-large{width:80px;height:80px;border-radius:50%;background-color:#e573734d;border:var(--border-thickness, 5px) solid rgba(198,40,40,.3);cursor:pointer;transition:all .1s}.pro-circle-large:hover{background-color:#ef535066}.pro-circle-large:active{transform:scale(.95)}.key-btn.piano-key.white{border-color:#ffb5a0;width:95px!important;height:95px!important;box-shadow:0 4px #ffb5a080,0 6px 8px #0006}.key-btn.piano-key.white:hover{box-shadow:0 4px #88888880,0 6px 8px #0006}.key-btn.piano-key.white:active,.key-btn.piano-key.white.active{transform:translateY(3px);box-shadow:0 1px #ffb5a080,0 2px 4px #0006}.key-btn.piano-key.black{border-color:#ffb3ba;width:95px!important;height:95px!important;box-shadow:0 4px #ffb3ba80,0 6px 8px #0006}.key-btn.piano-key.black:hover{box-shadow:0 4px #88888880,0 6px 8px #0006}.key-btn.piano-key.black:active,.key-btn.piano-key.black.active{transform:translateY(3px);box-shadow:0 1px #ffb3ba80,0 2px 4px #0006}.piano-note-label{position:absolute;top:8px;font-family:Handjet,monospace;font-size:20px;font-weight:600;color:#555;pointer-events:none}.key-labels-row{display:flex;gap:var(--label-spacing, 10px);font-family:Roboto Mono,monospace;font-size:18px;font-weight:600;color:#888;margin-bottom:8px}.chord-buttons-section .key-labels-row.first-row-labels{margin-left:var(--labels-chord-top-horizontal-offset, -95px);transform:translateY(var(--labels-chord-top-vertical-offset, 0px))}.chord-buttons-section .key-labels-row.second-row-labels{margin-left:var(--labels-chord-bottom-horizontal-offset, 0px);transform:translateY(var(--labels-chord-bottom-vertical-offset, 0px))}.piano-section .key-labels-row.first-row-labels{margin-left:var(--labels-piano-black-horizontal-offset, 0px);transform:translateY(var(--labels-piano-black-vertical-offset, 0px))}.piano-section .key-labels-row.second-row-labels{margin-left:var(--labels-piano-white-horizontal-offset, 0px);transform:translateY(var(--labels-piano-white-vertical-offset, 0px))}.piano-labels-black{position:relative;height:20px;min-width:725px}.piano-labels-black span{position:absolute;width:95px;text-align:center}.piano-labels-black span:nth-child(1){left:var(--piano-black-y, 52.5px)}.piano-labels-black span:nth-child(2){left:var(--piano-black-u, 157.5px)}.piano-labels-black span:nth-child(3){left:var(--piano-black-o, 367.5px)}.piano-labels-black span:nth-child(4){left:var(--piano-black-p, 472.5px)}.piano-labels-black span:nth-child(5){left:var(--piano-black-bracket, 577.5px)}.key-labels-row.second-row-labels{margin-top:5px}.key-labels-row span{width:95px;text-align:center}.key-labels-row span.spacer{width:30px}.key-labels-row span.spacer-large{width:60px}.right-column{flex:1;display:flex;flex-direction:column;gap:15px}.bottom-controls-row{display:flex;gap:20px;align-items:flex-start;margin-top:calc(20px + var(--bottom-controls-vertical-offset, 0px));width:100%;justify-content:flex-start}.shift-indicator{display:flex;flex-direction:column;align-items:center;gap:5px}.shift-box{width:180px;height:95px;display:flex;align-items:center;justify-content:center;border:var(--border-thickness, 5px) solid #888;border-radius:15px;font-size:20px;color:#888;font-weight:500;transition:border-color .2s,color .2s}.shift-box.active{border-color:#add8e6;color:#add8e6}.shift-label{font-family:Roboto Mono,monospace;font-size:16px;color:#888}.pitch-section{display:flex;flex-direction:column;gap:5px;align-items:center}.pitch-controls{display:flex;gap:5px}.pitch-btn{width:95px;height:95px;background-color:#000;border:var(--border-thickness, 5px) solid #7FB069;border-radius:15px;cursor:pointer;font-family:Handjet,monospace;font-size:48px;color:#fff;display:flex;align-items:center;justify-content:center;transition:all .1s;box-shadow:0 4px #7fb06980,0 6px 8px #0006;position:relative;top:0}.pitch-btn:hover{border-color:#888;box-shadow:0 4px #88888880,0 6px 8px #0006}.pitch-btn:active,.pitch-btn.active{transform:translateY(3px);box-shadow:0 1px #7fb06980,0 2px 4px #0006}.pitch-display{width:95px;height:95px;display:flex;align-items:center;justify-content:center;font-family:Handjet,monospace;font-size:36px;font-weight:600;color:#fff}.pitch-labels-bottom{display:flex;gap:0px;justify-content:space-between;align-items:center;margin-top:8px;font-family:Roboto Mono,monospace;font-size:18px;color:#888}.pitch-labels-bottom span{flex:1;text-align:center;width:95px}.pitch-label-center{text-align:center;font-size:18px;color:#888;font-weight:500}.controls-wrapper{display:flex;gap:20px;align-items:center;margin-left:30px}.premium-controls-container{position:relative;display:flex;gap:20px;align-items:center}.premium-control{position:relative}.selector-stack{display:flex;flex-direction:column;gap:10px}.selector-item{display:flex;flex-direction:column;gap:5px}.selector-btn{width:160px;height:60px;background-color:#000;color:#fff;border:var(--border-thickness, 5px) solid #888;border-radius:15px;font-family:Handjet,monospace;font-size:20px;font-weight:600;cursor:pointer;transition:all .1s}.selector-btn:hover:not(:disabled){background-color:#1a1a1a;border-color:#aaa}.selector-btn:active:not(:disabled){transform:scale(.95);background-color:#333}.selector-label{font-family:Roboto Mono,monospace;font-size:14px;color:#888;text-align:center}.premium-controls-overlay{position:absolute;inset:0;background-color:#000000d9;display:flex;align-items:center;justify-content:center;border-radius:15px;z-index:10}.upgrade-btn-large{padding:15px 40px;background-color:gold;color:#000;border:none;border-radius:15px;font-family:Handjet,monospace;font-size:24px;font-weight:700;cursor:pointer;pointer-events:all;box-shadow:0 4px 8px #00000080;transition:background-color .2s}.upgrade-btn-large:hover{background-color:orange}.upgrade-btn-large.pro-btn-large{background-color:transparent;color:#555;border:3px solid #555}.upgrade-btn-large.pro-btn-large:hover{background-color:#5555551a;color:#888;border-color:#888}.pro-dropdowns{display:flex;flex-direction:column;gap:10px}.pro-dropdown-item{display:flex;flex-direction:column;align-items:center;gap:5px}.pro-select-box{width:120px;height:60px;padding:10px;background-color:#000;color:#fff;border:var(--border-thickness, 5px) solid #888;border-radius:15px;font-family:Handjet,monospace;font-size:18px;font-weight:500;cursor:pointer;text-align:center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.pro-select-box:focus{outline:none;border-color:#add8e6}.pro-sliders{display:flex;gap:15px;align-items:flex-end}.pro-slider-item{display:flex;flex-direction:column;align-items:center;gap:5px}.pro-slider-vertical{-webkit-appearance:slider-vertical;appearance:slider-vertical;width:12px;height:100px;background:linear-gradient(to top,#1976d2 0% 100%);border-radius:10px;outline:none;cursor:pointer;writing-mode:bt-lr}.pro-slider-vertical::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;background:#fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0000004d}.pro-slider-vertical::-moz-range-thumb{width:24px;height:24px;background:#fff;border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 4px #0000004d}.pro-label{font-family:Roboto Mono,monospace;font-size:14px;color:#888}.osc-section{display:flex;gap:15px;align-items:center}.osc-left-column{display:flex;flex-direction:column;gap:10px}.osc-params-column{display:flex;flex-direction:column;gap:8px}.osc-param-row{display:flex;align-items:center;gap:10px}.osc-slider{-webkit-appearance:none;appearance:none;width:100px;height:8px;background:linear-gradient(to right,#1976d2 0% 100%);border-radius:10px;outline:none;cursor:pointer}.osc-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:#fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0000004d}.osc-slider::-moz-range-thumb{width:16px;height:16px;background:#fff;border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 4px #0000004d}.osc-param-label{font-family:Roboto Mono,monospace;font-size:12px;color:#888;min-width:60px}.osc-btn{width:120px;height:60px;background-color:#000;color:khaki;border:var(--border-thickness, 5px) solid #F0E68C;border-radius:15px;font-family:Handjet,monospace;font-size:20px;font-weight:600;cursor:pointer;transition:all .1s}.osc-btn.active{background-color:khaki;color:#000}.osc-btn:hover:not(:disabled){background-color:#1a1a1a}.osc-btn:active:not(:disabled){transform:scale(.95)}.lfo-params{display:flex;flex-direction:column;gap:8px}.lfo-param-item{display:flex;align-items:center;gap:10px}.lfo-param-label{font-family:Roboto Mono,monospace;font-size:12px;color:#888;min-width:55px;text-align:right}.lfo-slider{-webkit-appearance:none;appearance:none;width:150px;height:8px;background:linear-gradient(to right,#1976d2 0% 100%);border-radius:10px;outline:none;cursor:pointer}.lfo-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:#fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0000004d}.lfo-slider::-moz-range-thumb{width:16px;height:16px;background:#fff;border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 4px #0000004d}.clear-btn{width:120px;height:40px;background-color:#000;color:#ffb6c1;border:var(--border-thickness, 5px) solid #FFB6C1;border-radius:15px;font-family:Handjet,monospace;font-size:16px;font-weight:600;cursor:pointer;transition:all .1s}.clear-btn:hover:not(:disabled){background-color:#1a1a1a}.clear-btn:active:not(:disabled){transform:scale(.95)}.effect-select{width:120px;height:60px;padding:10px;background-color:#000;color:khaki;border:var(--border-thickness, 5px) solid #F0E68C;border-radius:15px;font-family:Handjet,monospace;font-size:18px;font-weight:600;cursor:pointer;text-align:center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.effect-select:focus{outline:none;border-color:gold}.effect-label{font-family:Roboto Mono,monospace;font-size:14px;color:khaki;font-weight:600}.effect-clear-btn{width:120px;height:40px;background-color:#000;color:#ffb6c1;border:var(--border-thickness, 5px) solid #FFB6C1;border-radius:15px;font-family:Handjet,monospace;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .2s;align-self:center}.effect-clear-btn:hover{background-color:#1a1a1a}.effect-params-horizontal{display:flex;flex-direction:column;gap:10px}.effect-param-item-horizontal{display:flex;align-items:center;gap:10px}.effect-param-slider-horizontal{-webkit-appearance:none;appearance:none;width:100px;height:8px;background:linear-gradient(to right,#1976d2 0% 100%);border-radius:10px;outline:none;cursor:pointer}.effect-param-slider-horizontal::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:#fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0000004d}.effect-param-slider-horizontal::-moz-range-thumb{width:16px;height:16px;background:#fff;border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 4px #0000004d}.effect-param-label{font-family:Roboto Mono,monospace;font-size:12px;color:#888}.premium-select-box{width:100px;height:70px;padding:10px;background-color:#000;background-image:none;color:#fff;border:var(--border-thickness, 5px) solid #FFD700;border-radius:15px;font-family:Handjet,monospace;font-size:16px;font-weight:500;cursor:pointer;text-align:center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.premium-select-box:focus{outline:none;border-color:orange}.premium-select-box option{background-color:#000;color:#fff}.premium-slider{-webkit-appearance:slider-vertical;appearance:slider-vertical;width:12px;height:80px;background:linear-gradient(to top,#1976d2 0% 100%);border-radius:10px;outline:none;cursor:pointer;writing-mode:bt-lr}.premium-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;background:#fff;border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0000004d}.premium-slider::-moz-range-thumb{width:24px;height:24px;background:#fff;border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 4px #0000004d}.slider-value{font-family:Handjet,monospace;font-size:12px;color:#fff;font-weight:500}.pro-btn{width:100px;height:70px;background-color:#000;color:gold;border:var(--border-thickness, 5px) solid #FFD700;border-radius:15px;font-family:Handjet,monospace;font-size:20px;font-weight:600;cursor:pointer;transition:background-color .2s}.pro-btn:hover{background-color:#1a1a1a}.premium-locked-overlay{position:absolute;inset:0;background-color:#000000d9;display:flex;align-items:center;justify-content:center;border-radius:25px;opacity:0;pointer-events:none;transition:opacity .3s}.premium-locked-overlay.active{opacity:1;pointer-events:all}.premium-locked-overlay.bpm-overlay{inset:0;border-radius:15px}.locked-message{text-align:center;padding:30px}.lock-text{font-family:Roboto Mono,monospace;font-size:20px;margin-bottom:12px;color:gold;letter-spacing:2px}.locked-message p{font-family:Handjet,monospace;font-size:18px;color:#888;margin-bottom:12px}.upgrade-btn{padding:10px 20px;background-color:gold;color:#000;border:none;border-radius:8px;font-family:Handjet,monospace;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s}.upgrade-btn:hover{background-color:orange}.upgrade-btn.pro-btn{background-color:transparent;color:#555;border:2px solid #555}.upgrade-btn.pro-btn:hover{background-color:#5555551a;color:#888;border-color:#888}.sustain-section{text-align:center;margin-top:30px}.sustain-label{font-size:24px;padding:15px;border:var(--border-thickness, 5px) solid #ADD8E6;border-radius:15px;display:inline-block;min-width:400px;margin-bottom:15px}.sustain-key{font-size:18px;color:#888;font-family:Roboto Mono,monospace}.sustain-section.active .sustain-label{border-color:#4a90e2}.app-footer{position:fixed;bottom:20px;right:20px;font-family:Roboto Mono,monospace;font-size:12px;color:#555;z-index:100}.app-footer a{color:#555;text-decoration:none;transition:color .2s}.app-footer a:hover{color:#888}@media(max-width:1400px){.synth-grid{flex-direction:column}.viz-bar{display:none}}@media(max-width:768px){.chord-btn,.pitch-btn{width:70px;height:70px;font-size:18px}.piano-key.white{width:60px;height:80px}.piano-key.black{width:60px;height:50px}.premium-controls-grid{flex-wrap:wrap}}
