@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800&family=Dancing+Script:wght@400;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.preset-knob-container{align-items:center;display:flex;flex-direction:column;gap:8px}.preset-knob{cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.preset-knob:focus{outline:none}.preset-knob-outer{align-items:center;background:linear-gradient(135deg,#1a1a1a,#0a0a0a);border:3px solid #333;border-radius:50%;box-shadow:inset 0 2px 8px #00000080,0 4px 12px #0000004d;display:flex;height:100%;justify-content:center;transition:all .2s ease;width:100%}.preset-knob:hover .preset-knob-outer{border-color:#444;box-shadow:inset 0 2px 8px #00000080,0 4px 16px #0006}.preset-knob-ball{background:radial-gradient(circle at 30% 30%,#2a2a2a,#111);border-radius:50%;height:85%;position:relative;transition:transform .1s ease-out;width:85%}.preset-knob-indicator{background:linear-gradient(180deg,#ff9800,#f57c00);border-radius:2px;box-shadow:0 0 8px #ff9800cc;height:25%;top:10%;width:4px}.preset-knob-label{color:#ff9800;font-size:11px;max-width:200px;overflow:hidden;text-align:center;text-overflow:ellipsis;text-shadow:0 0 8px #ff980080;white-space:nowrap}.rhythm-box-mini{background:repeating-linear-gradient(90deg,#00000008,#00000008 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#00000008,#00000008 1px,#0000 0,#0000 2px),linear-gradient(135deg,#2196f326,#1565c040)!important;border:3px solid #2196f34d;border-radius:12px;box-shadow:-1px 1px 0 #2196f3,-2px 2px 0 #2091eb,-3px 3px 0 #1f8ce3,-4px 4px 0 #1e87db,-5px 5px 0 #1d82d3,-6px 6px 0 #1c7dcb,-7px 7px 0 #1b78c3,-8px 8px 0 #1a73bb,-9px 9px 0 #196eb3,-10px 10px 0 #1869ab,-11px 11px 0 #1764a3,-12px 12px 0 #165f9b,-13px 13px 0 #155a93,-14px 14px 0 #14558b,-15px 15px 0 #135083,-15px 15px 25px #2196f380,0 10px 35px #2196f34d,inset 0 1px 3px #ffffff1a,inset 0 -2px 5px #0000004d;max-width:340px;min-height:450px;min-width:300px;overflow:hidden;padding:25px;position:relative}.rhythm-box-mini:before{background:repeating-linear-gradient(90deg,#00000008,#00000008 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#00000008,#00000008 1px,#0000 0,#0000 2px);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.rhythm-mini-header{align-items:center;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:15px;padding:10px;position:relative;transition:all .2s ease;z-index:1}.rhythm-mini-header:hover{background:#2196f31a}.rhythm-mini-title{color:#2196f3;font-size:14px;font-weight:800;letter-spacing:2px;text-shadow:0 0 10px #2196f380;text-transform:uppercase}.rhythm-mini-led{border:2px solid #222;border-radius:50%;height:16px;transition:all .3s ease;width:16px}.rhythm-mini-content{display:flex;flex-direction:column;gap:15px;position:relative;z-index:1}.rhythm-mini-top-row{align-items:center;display:flex;gap:10px}.rhythm-mini-bpm-display{background:#00000080;border:2px solid #2196f34d;border-radius:8px;flex:1 1;padding:3px 5px;text-align:center}.bpm-label{color:#ffffff80;font-size:8px;margin-bottom:3px}.bpm-value{color:#2196f3;font-size:22px;font-weight:600;text-shadow:0 0 15px #2196f3cc}.rhythm-mini-tap-btn{background:#2196f31a;border:2px solid #2196f380;border-radius:8px;color:#2196f3;cursor:pointer;font-size:12px;font-weight:700;height:-webkit-fit-content;height:fit-content;letter-spacing:2px;padding:8px 16px;text-transform:uppercase;transition:all .2s ease}.rhythm-mini-tap-btn:hover{background:#2196f333;border-color:#2196f3;box-shadow:0 4px 8px #2196f34d;transform:translateY(-2px)}.rhythm-mini-tap-btn:active{background:#2196f34d;transform:translateY(0)}.rhythm-mini-middle-row{align-items:center;display:flex;gap:20px;justify-content:center}.rhythm-mini-start-btn{background:linear-gradient(135deg,#2196f333,#1565c04d);border:3px solid #2196f3;border-radius:12px;box-shadow:0 4px 12px #2196f34d;color:#2196f3;cursor:pointer;font-size:18px;font-weight:800;letter-spacing:3px;margin-top:40px;padding:15px;text-transform:uppercase;transition:all .3s ease;width:100%}.rhythm-mini-start-btn:hover{background:linear-gradient(135deg,#2196f34d,#1565c066);box-shadow:0 6px 16px #2196f380;transform:translateY(-3px)}.rhythm-mini-start-btn:active{transform:translateY(-1px)}.rhythm-mini-start-btn.playing{background:linear-gradient(135deg,#4caf5033,#388e3c4d);border-color:#4caf50;box-shadow:0 4px 12px #4caf5066,0 0 20px #4caf5033;color:#4caf50}.rhythm-mini-start-btn.playing:hover{background:linear-gradient(135deg,#4caf504d,#388e3c66)}@media (max-width:768px){.rhythm-box-mini{max-width:280px;min-width:240px;padding:15px}.bpm-value{font-size:24px}.rhythm-mini-middle-row{gap:10px}.rhythm-mini-start-btn{font-size:16px;padding:12px}}.looper-multitrack{background:#0000;border-radius:8px;color:#fff;margin:0 auto;max-width:100%;padding:20px}.looper-multitrack-header{align-items:center;border-bottom:2px solid #d32f2f80;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:10px}.looper-multitrack-header h3{color:#d32f2f;font-size:20px;font-weight:700;letter-spacing:2px;margin:0}.status-indicator{animation:pulse-status 1s infinite;border-radius:6px;font-weight:700;margin-bottom:10px;padding:10px 20px;text-align:center}.status-indicator.waiting{background:#ff03;border:2px solid #ffeb3b;color:#ffeb3b}.status-indicator.pending-stop{background:#ff980033;border:2px solid #ff9800;color:#ff9800}.btn-sync{font-weight:700;transition:all .2s}.btn-sync:hover{transform:scale(1.05)}.track-list{background:#0f0f0f;border-radius:6px;margin-bottom:20px;max-height:400px;overflow-y:auto;padding:10px}.track-item{background:#222;border:2px solid #333;border-radius:6px;margin-bottom:10px;padding:12px;transition:all .3s}.track-item.recording{animation:pulse-red 1s infinite;border-color:red;box-shadow:0 0 10px #ff000080}@keyframes pulse-red{0%,to{box-shadow:0 0 10px #ff000080}50%{box-shadow:0 0 20px #f00c}}.track-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.track-label-select{background:#333;border:1px solid #555;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;min-width:120px;padding:6px 10px}.track-btn,.track-label-select:hover{background:#444}.track-btn{border-radius:4px;color:#fff;font-size:14px;padding:8px 12px;transition:all .2s}.track-btn:hover:not(:disabled){background:#555;transform:scale(1.05)}.track-btn:disabled{background:#555!important;border-color:#777!important;color:#aaa!important;cursor:default;opacity:.6}.track-btn.play-btn.active{background:#4caf50}.track-btn.clear-btn{background:#d32f2f}.track-btn.clear-btn:hover{background:#f44336}.track-waveform{align-items:center;background:#000;border-radius:4px;display:flex;height:40px;justify-content:center;overflow:hidden}.waveform-placeholder{color:#666;font-size:12px;font-style:italic}.looper-main-controls{background:#0000;border-radius:6px;display:flex;gap:15px;justify-content:center;padding:20px}.looper-btn{align-items:center;background:#333;border:2px solid #555;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-direction:column;gap:8px;min-width:100px;padding:15px 25px;transition:all .2s}.looper-btn:hover:not(:disabled){background:#444;border-color:#666;box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.looper-btn:disabled{background:#555!important;border-color:#777!important;color:#aaa!important;cursor:default;opacity:.6}.looper-btn.active{animation:pulse-btn 1s infinite;background:#d32f2f;border-color:red}@keyframes pulse-btn{0%,to{box-shadow:0 0 10px #d32f2f80}50%{box-shadow:0 0 20px #d32f2fcc}}.looper-btn.rec-btn.active{background:#d32f2f}.looper-btn.rec-btn.waiting{background:#ff9800;border-color:#ffeb3b}.looper-btn.overdub-btn:not(:disabled){background:#ff6f00;border-color:#ff9800}.looper-btn.overdub-btn:hover:not(:disabled){background:#ff8f00}.looper-btn.stop-btn:not(:disabled){background:#b71c1c;border-color:#d32f2f}.looper-btn.stop-btn:hover:not(:disabled){background:#d32f2f;border-color:red}.looper-btn.clear-btn:not(:disabled){background:#333;border-color:#666}.looper-btn.clear-btn:hover:not(:disabled){background:#d32f2f;border-color:red}.btn-icon{font-size:24px;line-height:1}.btn-label{font-size:12px}.looper-mini{background:repeating-linear-gradient(90deg,#00000008,#00000008 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#00000008,#00000008 1px,#0000 0,#0000 2px),linear-gradient(135deg,#f4433626,#d32f2f40)!important;border:3px solid #d32f2f4d;border-radius:12px;box-shadow:-1px 1px 0 #d32f2f,-2px 2px 0 #cb2d2d,-3px 3px 0 #c32b2b,-4px 4px 0 #bb2929,-5px 5px 0 #b32727,-6px 6px 0 #ab2525,-7px 7px 0 #a32323,-8px 8px 0 #9b2121,-9px 9px 0 #931f1f,-10px 10px 0 #8b1d1d,-11px 11px 0 #831b1b,-12px 12px 0 #7b1919,-13px 13px 0 #731717,-14px 14px 0 #6b1515,-15px 15px 0 #631313,-15px 15px 25px #d32f2f80,0 10px 35px #d32f2f4d,inset 0 1px 3px #ffffff1a,inset 0 -2px 5px #0000004d;max-width:340px;min-height:450px;min-width:300px;overflow:hidden;padding:25px;position:relative}.looper-mini:before{background:repeating-linear-gradient(90deg,#00000008,#00000008 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#00000008,#00000008 1px,#0000 0,#0000 2px);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.looper-mini-header{align-items:center;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:15px;padding:10px;position:relative;transition:all .2s ease;z-index:1}.looper-mini-header:hover{background:#d32f2f33}.looper-mini-title{color:#d32f2f;font-size:14px;font-weight:800;letter-spacing:2px;text-shadow:0 0 10px #d32f2f80;text-transform:uppercase}.looper-mini-led{border:2px solid #222;border-radius:50%;height:16px;transition:all .3s ease;width:16px}.looper-mini-content{display:flex;flex-direction:column;gap:5px;position:relative;z-index:1}.looper-mini-circle{align-items:center;display:flex;justify-content:center;min-height:150px;padding:10px 0}.looper-mini-circle svg{opacity:1!important}.looper-circle,.looper-mini-circle svg{display:block!important;height:200px!important;visibility:visible!important;width:200px!important}.looper-mini-action-row{display:flex;gap:10px;justify-content:space-between}.looper-mini-action-btn{background:#d32f2f1a;border:2px solid #d32f2f4d;border-radius:8px;color:#d32f2f;cursor:pointer;flex:1 1;font-size:12px;font-weight:800;letter-spacing:1.5px;padding:12px 8px;text-transform:uppercase;transition:all .2s ease}.looper-mini-action-btn:hover{background:#d32f2f33;border-color:#d32f2f;box-shadow:0 4px 8px #d32f2f4d;transform:translateY(-2px)}.looper-mini-action-btn.active{background:linear-gradient(135deg,#d32f2f4d,#b71c1c66);border-color:#d32f2f;box-shadow:0 0 15px #d32f2f80,inset 0 0 10px #d32f2f33;color:#ff5252}.looper-mini-action-btn.rec.active{border-color:red;color:red;text-shadow:0 0 10px #f00c}.looper-mini-action-btn.play.active{background:linear-gradient(135deg,#66bb6a33,#388e3c4d);border-color:#66bb6a;color:#66bb6a;text-shadow:0 0 10px #66bb6acc}.looper-mini-action-btn.dub.active{background:linear-gradient(135deg,#f903,#f57c004d);border-color:#f90;color:#f90;text-shadow:0 0 10px #f90c}.looper-mini-action-btn:disabled{filter:grayscale(60%);opacity:.3}.looper-mini-action-btn:disabled:hover{background:#d32f2f1a;border-color:#d32f2f4d;box-shadow:none;transform:none}.looper-mini-control-row{display:flex;gap:10px}.looper-mini-control-btn{background:#ffffff0d;border:2px solid #fff3;border-radius:8px;color:#ffffffb3;cursor:pointer;flex:1 1;font-size:11px;font-weight:700;letter-spacing:1.5px;padding:10px;text-transform:uppercase;transition:all .2s ease}.looper-mini-control-btn:hover{background:#ffffff1a;border-color:#fff6;color:#fff;transform:translateY(-2px)}.looper-mini-control-btn.stop:hover{border-color:#ff9800;color:#ff9800}.looper-mini-control-btn.clear:hover{border-color:#f44336;color:#f44336}.looper-mini-bottom-row{display:flex;gap:10px}.looper-mini-control-btn.undo{flex:1 1}.looper-mini-control-btn:disabled{opacity:.3}.looper-mini-control-btn.undo:hover:not(:disabled){border-color:#ffa726;color:#ffa726}.looper-mini-control-btn.count-in{flex:1 1}.looper-mini-control-btn.count-in.active{background:linear-gradient(135deg,#2196f34d,#1565c066);border-color:#2196f3;box-shadow:0 0 15px #2196f380,inset 0 0 10px #2196f333;color:#64b5f6;text-shadow:0 0 10px #2196f3cc}.looper-mini-control-btn.count-in:hover{border-color:#2196f3;color:#2196f3}@media (max-width:768px){.looper-mini{max-width:280px;min-width:240px;padding:15px}.looper-mini-action-btn{font-size:11px;padding:10px 6px}.looper-mini-control-btn{font-size:10px;padding:8px}}.vertical-fader-container{align-items:center;display:flex;flex-direction:column;gap:8px;-webkit-user-select:none;user-select:none}.fader-track{background:linear-gradient(90deg,#1a1a1a,#000 50%,#1a1a1a);border-radius:3px;box-shadow:inset 0 0 3px #000000e6,0 1px 2px #00000080;box-sizing:initial;cursor:pointer;overflow:visible;padding:22px 0;position:relative;width:6px}.fader-fill{bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0}.fader-handle{background:linear-gradient(90deg,#888,#999 15%,#aaa 50%,#999 85%,#888);border:1px solid #666;border-radius:3px;box-shadow:0 2px 4px #0009,inset 0 1px 0 #ffffff4d,inset 0 -1px 0 #0006;cursor:grab;height:40px;left:50%;overflow:hidden;pointer-events:auto;position:absolute;transform:translateX(-50%) translateY(50%);transition:bottom .05s ease-out;width:20px}.fader-track:active .fader-handle{background:linear-gradient(90deg,#777,#888 15%,#999 50%,#888 85%,#777);box-shadow:0 1px 2px #000c,inset 0 1px 0 #fff3,inset 0 -1px 0 #00000080;cursor:grabbing}.fader-handle-stripes{background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000026 0,#00000026 3px);bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.fader-handle-center-line{background:linear-gradient(90deg,#0000,#ffffffe6 20%,#ffffffe6 80%,#0000);border-radius:1px;box-shadow:0 0 2px #ffffff80;height:2px;left:4px;pointer-events:none;position:absolute;right:4px;top:50%;transform:translateY(-50%)}.fader-label{color:#888;font-size:.75em;letter-spacing:1px;text-transform:uppercase}.fader-label,.fader-value{font-weight:700;text-align:center}.fader-value{background:#0006;border:1px solid #444;border-radius:4px;color:silver;font-family:Inter,monospace;font-size:.85em;min-width:40px;padding:4px 8px}.fader-track:hover .fader-handle{background:linear-gradient(90deg,#999,#aaa 15%,#bbb 50%,#aaa 85%,#999);box-shadow:0 2px 6px #000000b3,inset 0 1px 0 #fff6,inset 0 -1px 0 #0000004d}.fader-track:active{background:linear-gradient(90deg,#0a0a0a,#000 50%,#0a0a0a)}.sample-loader{background:#1a1a1a;border-radius:8px;margin:20px 0;padding:20px}.sample-loader-title{border-bottom:2px solid #333;color:#fff;font-size:18px;margin:0 0 20px;padding-bottom:10px}.loading-indicator{background:#ffc10733;border:2px solid #ffc107;border-radius:4px;color:#ffc107;font-weight:700;margin-bottom:15px;padding:10px;text-align:center}.sample-slots{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:20px}.sample-slot{background:#222;border:2px solid #333;border-radius:6px;padding:12px}.sample-label{color:#aaa;display:block;font-size:12px;font-weight:700;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.sample-loaded{align-items:center;background:#2a2a2a;border:1px solid #4caf50;border-radius:4px;display:flex;gap:8px;padding:8px}.sample-name{color:#4caf50;flex:1 1;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sample-remove-btn{background:#d32f2f;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:14px;padding:4px 8px;transition:all .2s}.sample-remove-btn:hover{background:#f44336;transform:scale(1.1)}.sample-upload,.sample-upload-btn{display:flex;justify-content:center}.sample-upload-btn{align-items:center;background:#444;border:2px dashed #666;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;gap:5px;padding:10px 15px;transition:all .2s;width:100%}.sample-upload-btn:hover{background:#555;border-color:#4caf50;transform:translateY(-2px)}.sample-info{background:#4caf501a;border:1px solid #4caf504d;border-radius:4px;padding:15px}.sample-info p{color:#aaa;font-size:12px;margin:5px 0}.audio-input-config{background:#0000004d;border:2px solid #d32f2f4d;border-radius:8px;margin:15px 0;padding:15px}.audio-input-config.error,.audio-input-config.loading{color:#aaa;padding:20px;text-align:center}.config-header{align-items:center;display:flex;gap:10px;margin-bottom:10px}.config-icon{font-size:20px}.config-label{color:#fff;font-size:14px;font-weight:700;letter-spacing:1px}.audio-input-select{background:linear-gradient(180deg,#2a2a2a,#1a1a1a);border:2px solid #d32f2f;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 15px;transition:all .2s;width:100%}.audio-input-select:hover{background:linear-gradient(180deg,#333,#222);border-color:#ff6b00}.audio-input-select:focus{border-color:#ff6b00;box-shadow:0 0 10px #ff6b004d;outline:none}.audio-input-select option{background:#1a1a1a;color:#fff;padding:10px}.error-message{background:#ff00001a;border:1px solid #ff00004d;border-radius:4px;color:#ff6b6b;padding:8px 12px}.device-info,.error-message{align-items:center;display:flex;font-size:12px;gap:8px;margin-top:10px}.device-info{color:#aaa}.status-indicator{background:#666;border-radius:50%;height:10px;width:10px}.status-indicator.active{animation:pulse-status 2s infinite;background:#4caf50;box-shadow:0 0 10px #4caf5099}@keyframes pulse-status{0%,to{opacity:1}50%{opacity:.6}}.status-text{color:#4caf50;font-weight:500}.error-detail{color:#ff6b6b;font-size:12px;margin-top:5px}.piano-keyboard{--white-key-width:40px;--white-key-height:180px;--black-key-width:28px;--black-key-height:110px;background:#0000;display:inline-block;padding:10px}.maximized .piano-keyboard{--white-key-width:20px;--white-key-height:90px;--black-key-width:14px;--black-key-height:55px;padding:5px}.piano-container{border:2px solid #000;border-radius:4px;box-shadow:2px 2px 4px #00000026;display:inline-block;overflow:hidden}.white-keys{display:flex;position:relative;z-index:1}.black-keys{height:var(--black-key-height);left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:2}.piano-key{align-items:flex-end;display:flex;justify-content:center;position:relative;transition:all .15s ease;-webkit-user-select:none;user-select:none}.piano-key.white{background:#fff;border:solid #000;border-width:1px 1px 2px;box-shadow:none;height:var(--white-key-height);width:var(--white-key-width)}.piano-key.white:hover{background:#f5f5f5}.piano-key.white.highlighted{background:#000;border-color:#000;box-shadow:inset 0 0 0 2px #fff}.piano-key.black{background:#000;border:solid #000;border-width:1px 1px 2px;box-shadow:2px 2px 3px #0000004d;height:var(--black-key-height);pointer-events:auto;width:var(--black-key-width)}.piano-key.black:hover{background:#222}.piano-key.black.highlighted{background:#000;border:2px solid #fff;box-shadow:inset 0 0 0 1px #fff,2px 2px 3px #0000004d}.key-label{bottom:10px;color:#000;font-size:10px;font-weight:600;pointer-events:none;text-shadow:none}.piano-key.white .key-label{bottom:15px;color:#000}.piano-key.white.highlighted .key-label{color:#fff}.piano-key.black .key-label{color:#fff;font-size:8px}@media (max-width:768px){.piano-keyboard{--white-key-width:30px;--white-key-height:140px;--black-key-width:22px;--black-key-height:85px}.key-label{font-size:9px}.piano-key.black .key-label{font-size:7px}}.simple-piano-keyboard{--simple-white-key-width:16px;--simple-white-key-height:55px;--simple-black-key-width:10px;--simple-black-key-height:35px;align-items:center;background:#0000;border:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;gap:3px;padding:0}.piano-chord-name{color:#ffffffe6;font-size:18px;font-weight:800;letter-spacing:.5px;margin-bottom:4px}.simple-piano-container{border-radius:2px;display:inline-block;padding:2px;position:relative}.simple-white-keys{display:flex;gap:0;position:relative;z-index:1}.simple-piano-key.white{align-items:flex-end;background:hsla(0,0%,100%,.839);border:1px solid #000;border-radius:0 0 2px 2px;border-top:2px solid #000;box-shadow:none;cursor:pointer;display:flex;height:var(--simple-white-key-height);justify-content:center;padding-bottom:4px;position:relative;transition:all .2s ease;width:var(--simple-white-key-width)}.simple-piano-key.white:first-child{border-left:1px solid #000}.simple-piano-key.white:last-child{border-right:1px solid #000}.simple-piano-key.white.highlighted{background:hsla(0,0%,100%,.839);box-shadow:none}.simple-piano-key.white.highlighted:before{background:#000;border-radius:50%;box-shadow:0 1px 2px #0000004d;content:"";height:11px;left:50%;position:absolute;top:75%;transform:translate(-50%,-50%);width:11px;z-index:10}.simple-piano-key.white.highlighted.root:before{background:#ef4444;border:none;box-shadow:0 1px 2px #ef444466;height:11px;width:11px}.simple-piano-key.white.highlighted.third:before{background:#f97316;border:none;box-shadow:0 1px 2px #f973164d;height:11px;width:11px}.simple-piano-key.white.highlighted.fifth:before{background:#3b82f6;border:none;box-shadow:0 1px 2px #3b82f64d;height:11px;width:11px}.simple-piano-key.white.highlighted.penta:before{background:#10b981;border:none;box-shadow:0 1px 2px #10b9814d;height:11px;width:11px}.simple-piano-key.white.highlighted.non-penta:before{background:#1a1a1a;border:1px solid #4a4a4a;box-shadow:0 1px 3px #0006;height:7px;width:7px}.simple-piano-key.white:active{box-shadow:inset 0 2px 4px #0003;transform:translateY(2px)}.simple-black-keys{left:0;pointer-events:none;right:0;top:2px;z-index:2}.simple-black-keys,.simple-piano-key.black{height:calc(var(--simple-black-key-height) - 2px);position:absolute}.simple-piano-key.black{align-items:flex-end;border:none;border-radius:0 0 2px 2px;cursor:pointer;display:flex;justify-content:center;padding-bottom:3px;pointer-events:all;transform:translateX(0);transition:all .2s ease;width:var(--simple-black-key-width)}.simple-piano-key.black,.simple-piano-key.black.highlighted{background:#000;box-shadow:none}.simple-piano-key.black.highlighted:before{background:#fff;border:1px solid #fff;border-radius:50%;box-shadow:0 1px 2px #ffffff80;content:"";height:9px;left:50%;position:absolute;top:75%;transform:translate(-50%,-50%);width:9px;z-index:10}.simple-piano-key.black.highlighted.root:before{background:#ef4444;border:1px solid #fff;box-shadow:0 1px 2px #ef444499;height:9px;width:9px}.simple-piano-key.black.highlighted.third:before{background:#f97316;border:1px solid #fff;box-shadow:0 1px 2px #f9731699;height:9px;width:9px}.simple-piano-key.black.highlighted.fifth:before{background:#3b82f6;border:1px solid #fff;box-shadow:0 1px 2px #3b82f699;height:9px;width:9px}.simple-piano-key.black.highlighted.penta:before{background:#10b981;border:1px solid #fff;box-shadow:0 1px 2px #10b98199;height:9px;width:9px}.simple-piano-key.black.highlighted.non-penta:before{background:#4a4a4a;border:1px solid #6a6a6a;box-shadow:0 1px 3px #0009;height:6px;width:6px}.simple-piano-key.black:active{box-shadow:inset 0 2px 4px #0000004d;transform:translateX(0) translateY(2px)}.simple-key-label{color:#fff;display:none;font-size:10px;font-weight:700;pointer-events:none;text-shadow:0 1px 2px #000c;-webkit-user-select:none;user-select:none}.simple-piano-key.white .simple-key-label{color:#fff;text-shadow:0 1px 2px #0009}.simple-finger-number{align-items:center;background:#000;border-radius:50%;bottom:4px;box-shadow:0 1px 3px #0006;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:10px;font-weight:600;height:14px;justify-content:center;left:50%;pointer-events:none;position:absolute;text-shadow:none;transform:translateX(-50%);-webkit-user-select:none;user-select:none;width:14px;z-index:20}.simple-piano-key.black .simple-finger-number{background:hsla(0,0%,100%,.898);border:1px solid #000;color:#000;font-size:9px;height:12px;width:12px}.piano-inversion-controls{display:flex;gap:4px;margin-top:8px;opacity:0;transition:opacity .3s ease}.simple-piano-keyboard:hover .piano-inversion-controls{opacity:1}.piano-inv-btn{background:#f5f5f5;border:1px solid #ccc;border-radius:4px;color:#666;cursor:pointer;font-size:10px;font-weight:600;padding:4px 8px;transition:all .2s ease}.piano-inv-btn:hover{background:#e0e0e0;border-color:#999}.piano-inv-btn.active{background:#4a90e2;border-color:#4a90e2;color:#fff}@media (max-width:768px){.simple-piano-keyboard{--simple-white-key-width:max(24px,3vw);--simple-white-key-height:max(85px,10vh);--simple-black-key-width:max(16px,2vw);--simple-black-key-height:max(55px,6.5vh)}.piano-chord-name{font-size:16px}.simple-key-label{font-size:9px}}@media (max-width:480px){.simple-piano-keyboard{--simple-white-key-width:max(18px,2.5vw);--simple-white-key-height:max(60px,8vh);--simple-black-key-width:max(12px,1.5vw);--simple-black-key-height:max(40px,5vh)}.piano-chord-name{font-size:14px}.simple-key-label{font-size:8px}.simple-piano-container{min-width:250px}}.guitar-fretboard{--fret-width:60px;--string-height:35px;--fretboard-color:#8b5a3c;--string-color:#000;background:#0000;overflow-x:auto;padding:10px}.maximized .guitar-fretboard{--fret-width:30px;--string-height:18px;padding:5px}.fretboard-container{display:flex;flex-direction:column;gap:5px;min-width:700px}.fretboard{background:linear-gradient(180deg,#a0755c,#8b5a3c 20%,#7a4d34 40%,#8b5a3c 60%,#a0755c 80%,#8b5a3c);background-image:linear-gradient(180deg,#8b5a3ce6,#7a4d34e6),repeating-linear-gradient(90deg,#0000,#0000 2px,#0000000d 0,#0000000d 4px);border:3px solid #5a3825;border-radius:8px;box-shadow:0 4px 8px #0000004d,inset 0 1px 2px #fff3,inset 0 -1px 2px #0000004d;padding:15px 10px;position:relative}.guitar-string{align-items:center;display:flex;height:var(--string-height);position:relative}.guitar-string:before{background:linear-gradient(90deg,#c8c8c8cc,#dcdcdc 50%,#c8c8c8cc);border-radius:1px;box-shadow:0 1px 2px #0006;content:"";height:1.5px;left:-10px;position:absolute;right:-10px;z-index:1}.guitar-string[data-string="5"]:before,.guitar-string[data-string="6"]:before{background:linear-gradient(90deg,#b4a08ccc,#c8b4a0 50%,#b4a08ccc);height:3px}.guitar-string[data-string="4"]:before{background:linear-gradient(90deg,#beaa96cc,#d2beaa 50%,#beaa96cc);height:2.5px}.fret-position{align-items:center;cursor:pointer;display:flex;height:100%;justify-content:center;position:relative;width:var(--fret-width);z-index:2}.fret-position.open{margin-right:10px;width:30px}.fret-position.highlighted .position-marker{align-items:center;background:radial-gradient(circle at 30% 30%,#333,#000);border:3px solid #1a1a1a;border-radius:50%;box-shadow:0 2px 4px #0009,inset 0 1px 2px #fff3,inset 0 -2px 4px #00000080;display:flex;flex-direction:column;height:28px;justify-content:center;width:28px}.position-marker{display:none}.note-label{letter-spacing:.5px;text-shadow:0 1px 2px #000c}.fret-number{color:#ffffffb3;font-size:8px;font-weight:600;margin-top:-1px}.fret-lines{left:0;pointer-events:none;right:0}.fret-line,.fret-lines{bottom:0;position:absolute;top:0}.fret-line{background:linear-gradient(180deg,#b4b4b4e6,#c8c8c8 50%,#b4b4b4e6);border-radius:1px;box-shadow:1px 0 2px #00000080,inset 1px 0 1px #ffffff4d;width:2px}.fret-line.nut{background:linear-gradient(180deg,#f0f0ebf2,#fffffa 30%,#f5f5f0 70%,#f0f0ebf2);border-radius:2px;box-shadow:2px 0 4px #0009,inset 1px 0 2px #fff6,inset -1px 0 2px #0003;width:5px}.fret-markers{left:0;pointer-events:none;right:0;top:50%;transform:translateY(-50%);z-index:0}.fret-marker,.fret-markers{position:absolute}.fret-marker.single{align-items:center;display:flex;justify-content:center}.fret-marker.double{align-items:center;display:flex;flex-direction:column;height:calc(var(--string-height)*6);justify-content:space-between;top:50%;transform:translateY(-50%)}.marker-dot{background:radial-gradient(circle at 35% 35%,#fffff066,#dcdcc859,#c8c8b44d);border:1px solid #fffff033;border-radius:50%;box-shadow:0 1px 2px #0006,inset 0 1px 1px #ffffff4d;height:10px;width:10px}.marker-dot.top{margin-top:10px}.marker-dot.bottom{margin-bottom:10px}.fret-numbers{display:flex;margin-top:8px;position:relative}.fret-num{color:#fff9;font-size:11px;font-weight:700;position:absolute;text-align:center;text-shadow:0 1px 2px #00000080;width:var(--fret-width)}@media (max-width:1024px){.guitar-fretboard{--fret-width:50px;--string-height:30px}.position-marker{height:24px;width:24px}.note-label{font-size:10px}.fret-number{font-size:7px}}@media (max-width:768px){.guitar-fretboard{--fret-width:40px;--string-height:25px}.position-marker{height:20px;width:20px}.note-label{font-size:9px}.fret-number{font-size:6px}.marker-dot{height:10px;width:10px}}.guitar-chord-diagram-simple{align-items:center;display:flex;flex-direction:column;gap:10px;padding:10px;width:100%}@media (max-width:768px){.guitar-chord-diagram-simple{gap:6px;padding:4px}}@media (max-width:480px){.guitar-chord-diagram-simple{gap:4px;padding:2px}}.fret-number-left{align-self:flex-start;color:#000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;font-weight:600;min-width:20px;padding-top:0;text-align:right}.string-status-row{width:140px}.fretboard-grid-lines{height:160px;width:140px}.finger-number-label,.fret-number-inline{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:600}.chord-not-available{height:150px;width:120px}.guitar-chord-positions{align-items:center;display:flex;flex-direction:column;gap:8px;width:100%}.guitar-chord-positions:hover .position-nav-buttons{opacity:1}.guitar-chord-positions .chord-not-available{align-items:center;background:#8b73551a;border-radius:4px;color:#8b7355;display:flex;font-size:12px;font-weight:600;height:80px;justify-content:center;width:60px}@media (max-width:768px){.guitar-chord-positions{gap:8px}.guitar-chord-positions .position-label{font-size:9px}}.ukulele-chord-diagram-simple{align-items:center;display:flex;flex-direction:column;gap:10px;padding:10px;width:100%}@media (max-width:768px){.ukulele-chord-diagram-simple{gap:6px;padding:4px}}@media (max-width:480px){.ukulele-chord-diagram-simple{gap:4px;padding:2px}}.chord-diagram-container{align-items:flex-start;display:flex;flex-direction:row;gap:10px}.chord-diagram-main{display:flex;flex-direction:column;gap:0}.string-status-row{display:flex;flex-direction:row;height:24px;justify-content:space-around;margin-bottom:4px;width:105px}@media (max-width:768px){.string-status-row{height:20px;margin-bottom:2px}}.string-status{align-items:center;color:#000;display:flex;font-size:18px;font-weight:900;justify-content:center;width:28px}.string-status .muted-x{color:#fff;filter:drop-shadow(0 0 2px rgba(255,0,0,.9));font-size:22px;font-weight:900;text-shadow:0 0 4px #f00c,0 0 8px #f009,2px 2px 4px #000c}.string-status .open-o{color:#fff;filter:drop-shadow(0 0 2px rgba(0,255,100,.9));font-size:20px;font-weight:900;text-shadow:0 0 4px #00ff64cc,0 0 8px #00ff6499,2px 2px 4px #000c}.fretboard-grid-lines{background:#fff;border:2px solid #000;height:250px;overflow:visible;position:relative;width:105px}.nut-bar{height:6px;top:0;z-index:20}.horizontal-fret-line,.nut-bar{background:#000;left:0;position:absolute;width:100%}.horizontal-fret-line{height:2px;z-index:10}.fret-number-inline{color:#000;font-size:12px;font-weight:900;padding:0 4px;position:absolute;right:-24px;top:50%;transform:translateY(-50%)}.vertical-string-line{height:100%;top:0;width:2px;z-index:10}.barre-bar,.vertical-string-line{background:#000;position:absolute}.barre-bar{border:2px solid #000;border-radius:7px;box-shadow:0 2px 6px #0006;height:14px;transform:translateY(-50%);z-index:40}.finger-dot-with-note{align-items:center;background:#000;border:2px solid #000;border-radius:50%;box-shadow:0 2px 6px #0006;display:flex;height:20px;justify-content:center;position:absolute;transform:translate(-50%,-50%);width:20px;z-index:50}.finger-number-label,.note-label{font-weight:900;line-height:1}.finger-number-label{color:#fff;font-size:11px}.position-buttons{display:flex;flex-direction:row;gap:8px;justify-content:center;margin-top:10px;opacity:0;transition:opacity .3s ease,visibility .3s ease;visibility:hidden}.position-buttons.visible{opacity:1;visibility:visible}@media (max-width:768px){.position-buttons{gap:4px;margin-top:4px}}.pos-btn{background:#ddd;border:3px solid #888;border-radius:6px;color:#333;cursor:pointer;font-size:12px;font-weight:900;height:28px;min-width:32px;padding:0 10px;transition:all .2s ease}.pos-btn:hover{background:#ccc;color:#000}.pos-btn.active{background:#000;border-color:#000;color:#fff}.chord-not-available{align-items:center;background:#f0f0f0;border:3px solid #ccc;border-radius:6px;color:#999;display:flex;font-size:16px;font-weight:700;height:180px;justify-content:center;width:90px}.ukulele-chord-positions{align-items:center;display:flex;flex-direction:column;gap:8px;width:100%}.position-nav-buttons{align-items:center;display:flex;flex-direction:row;gap:4px;justify-content:center;margin-bottom:4px;opacity:0;transition:opacity .3s ease}.ukulele-chord-positions:hover .position-nav-buttons{opacity:1}.pos-nav-btn{background:#e8e8e8;border:1px solid #ccc;border-radius:3px;color:#888;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:10px;font-weight:600;height:20px;min-width:24px;padding:0 6px;transition:all .2s ease}.pos-nav-btn:hover{background:#d4d4d4;color:#666}.pos-nav-btn.active{background:#666;border-color:#666;color:#fff}.position-diagram{align-items:center;display:flex;justify-content:center;width:100%}.ukulele-chord-positions .chord-not-available{align-items:center;background:#8b73551a;border-radius:4px;color:#8b7355;display:flex;font-size:12px;font-weight:600;height:80px;justify-content:center;width:60px}@media (max-width:768px){.ukulele-chord-positions{gap:8px}.ukulele-chord-positions .position-label{font-size:9px}}.all-chord-variations{background:linear-gradient(135deg,#f8f4e8,#e8dcc8);border-radius:8px;max-height:70vh;overflow-y:auto;padding:20px;width:100%}.variations-header{border-bottom:2px solid #8b7355;margin-bottom:24px;padding-bottom:16px}.variations-header h3{color:#5a4632;font-size:24px;font-weight:700;margin:0 0 8px}.variations-count{color:#8b7355;font-size:14px;font-style:italic;margin:0}.variations-groups{display:flex;flex-direction:column;gap:24px}.variation-group{background:#fff9;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:16px}.group-title{border-bottom:1px solid #d4c4a8;color:#5a4632;font-size:16px;font-weight:700;letter-spacing:.5px;margin:0 0 12px;padding-bottom:8px;text-transform:uppercase}.group-chords{display:flex;flex-direction:column;gap:8px}.variation-item{background:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;overflow:hidden;transition:box-shadow .2s ease}.variation-item:hover{box-shadow:0 2px 6px #00000026}.variation-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.variation-header:hover{background-color:#f8f6f2}.variation-name{align-items:center;display:flex;gap:12px}.chord-symbol{color:#5a4632;font-size:18px;font-weight:700;min-width:60px}.suffix-name{color:#8b7355;font-size:14px}.variation-info{align-items:center;display:flex;gap:12px}.positions-count{background:#f0ebe0;border-radius:12px;color:#999;font-size:12px;padding:4px 8px}.expand-icon{color:#8b7355;font-size:12px;transition:transform .2s ease}.expand-icon.expanded{transform:rotate(180deg)}.variation-positions{background:#fafaf8;border-top:1px solid #e8dcc8;padding:16px}.all-chord-variations::-webkit-scrollbar{width:8px}.all-chord-variations::-webkit-scrollbar-track{background:#8b73551a;border-radius:4px}.all-chord-variations::-webkit-scrollbar-thumb{background:#8b7355;border-radius:4px}.all-chord-variations::-webkit-scrollbar-thumb:hover{background:#6e5d46}@media (max-width:768px){.all-chord-variations{padding:12px}.variations-header h3{font-size:20px}.chord-symbol{font-size:16px;min-width:50px}.suffix-name{font-size:13px}.variation-positions{padding:12px}}.simple-chord-grid-container{box-sizing:border-box;display:flex;flex-direction:column;gap:16px;max-width:100%;overflow-x:hidden;width:100%}.instrument-btn{color:#ffffffb3;font-size:20px;padding:8px 16px}.instrument-btn.active{background:#ffffff26;box-shadow:0 1px 3px #0003;color:#fffffff2}@media (max-width:768px){.simple-chord-grid-container{max-height:calc(100vh - 100px);overflow-y:auto}}.bottom-controls-row,.chord-grid-controls{background:#ffffff08;border-radius:10px;display:flex;flex-wrap:wrap;gap:16px;padding:12px 16px}.bottom-controls-row{align-items:center;border-top:1px solid #ffffff1a;justify-content:space-between}.key-scale-controls{display:flex;flex:1 1;flex-wrap:wrap;gap:16px}.control-row-inline{align-items:center;display:flex;gap:8px}.select-inline{max-width:150px;min-width:120px}.control-row{align-items:center;display:flex;gap:8px}.control-label-simple{color:#fffc;font-size:13px}.control-label-simple,.select-simple{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-weight:500}.select-simple{background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;outline:none;padding:10px 12px;transition:all .2s ease}.select-simple:hover{background:#ffffff1f;border-color:#ffffff40}.show-all-variations-btn{background:linear-gradient(135deg,#8b7355,#6e5d46);border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s ease}.show-all-variations-btn:hover{background:linear-gradient(135deg,#6e5d46,#5a4632);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.show-all-variations-btn.active{background:linear-gradient(135deg,#5a4632,#4a3828)}.select-simple:focus{background:#ffffff1f;border-color:#ffffff4d;box-shadow:0 0 0 3px #ffffff1a}.select-simple option{background:#1a1a1a;color:#fff}.chord-grid-4x2{grid-gap:16px;box-sizing:border-box;display:grid;gap:16px;max-width:100%;width:100%}.chord-grid-guitar,.chord-grid-ukulele{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.chord-grid-piano{grid-template-columns:repeat(2,1fr)}.chord-card-simple{align-items:center;background:hsla(0,0%,89%,.687);border:1px solid #0000;border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:0;position:relative;transition:all .2s}.chord-card-simple:hover{background:hsla(0,0%,100%,.848);border-color:#00000014}.chord-card-simple.active,.chord-card-simple:active{background:hsla(0,0%,100%,.848);border-color:#0000001a}.chord-name-simple{color:#000;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:22px;font-weight:600;letter-spacing:-.3px}.instrument-wrapper-simple{display:flex;justify-content:center;width:100%}.instrument-wrapper-simple .simple-piano-keyboard{border:none;border-radius:4px;box-shadow:none}.instrument-wrapper-simple .guitar-chord-diagram-simple{min-width:80px;transform:scale(.85)}.chord-inversion-controls{display:flex;gap:4px;margin-top:4px;opacity:0;transition:opacity .2s}.chord-card-simple.active .chord-inversion-controls,.chord-card-simple:active .chord-inversion-controls,.chord-card-simple:hover .chord-inversion-controls{opacity:1}.chord-inversion-controls:has(.chord-inv-btn.active:not(:first-child)){opacity:1}.chord-inv-btn{background:#0000000a;border:1px solid #0000001a;border-radius:4px;color:#666;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:11px;font-weight:600;padding:4px 8px;transition:all .15s}.chord-inv-btn:hover{background:#00000014;border-color:#00000026;color:#000}.chord-inv-btn.active{background:#007aff;border-color:#007aff;color:#fff}@media (max-width:1024px){.chord-grid-guitar,.chord-grid-ukulele{grid-template-columns:repeat(auto-fit,minmax(90px,1fr))}.chord-grid-piano{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.simple-chord-grid-container{gap:12px;overflow-x:visible!important;padding:0;width:100%}.melody-instrument-switch-top{margin-bottom:12px}.instrument-btn{font-size:18px;padding:6px 12px}.chord-grid-guitar,.chord-grid-ukulele{gap:10px;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));width:100%}.chord-grid-piano{gap:10px;grid-template-columns:repeat(2,1fr);width:100%}.chord-card-simple{box-sizing:border-box;gap:8px;padding:10px;width:100%}.chord-name-simple{font-size:16px}.instrument-wrapper-simple{transform:scale(1);width:100%}.chord-grid-controls{box-sizing:border-box;display:flex!important;flex-direction:column;gap:10px;padding:10px 12px;width:100%}.control-row{display:flex!important;justify-content:space-between;width:100%}.bottom-controls-row{align-items:stretch;flex-direction:column;gap:12px}.key-scale-controls{width:100%}.control-row-inline{justify-content:space-between;width:100%}.select-inline{flex:1 1;min-width:0}.show-all-variations-btn{width:100%}}@media (max-width:430px){.simple-chord-grid-container{overflow-x:visible!important;padding:0;width:100%}.chord-grid-guitar,.chord-grid-ukulele{grid-gap:6px;display:grid!important;gap:6px;grid-template-columns:repeat(3,1fr);width:100%}.chord-grid-piano{grid-gap:6px;display:grid!important;gap:6px;grid-template-columns:repeat(2,1fr);width:100%}.chord-card-simple{gap:6px;padding:8px 6px;width:100%}.chord-name-simple{font-size:13px}.instrument-wrapper-simple{margin:0;transform:scale(.95);transform-origin:center center;width:100%}.instrument-wrapper-simple .simple-piano-keyboard{--simple-white-key-width:10px!important;--simple-white-key-height:32px!important;--simple-black-key-width:7px!important;--simple-black-key-height:20px!important;gap:2px;margin:0;padding:3px}.chord-inv-btn{font-size:8px;padding:2px 5px}.chord-grid-controls{display:flex!important;gap:8px;padding:8px;width:100%}.control-row{display:flex!important;gap:6px}.control-label-simple{font-size:11px}.select-simple{flex:1 1;font-size:12px;min-width:0;padding:4px 8px}.chord-inversion-controls{display:none}}@media (max-width:1024px) and (orientation:landscape){.simple-chord-grid-container{overflow-x:visible!important}.chord-grid-controls{display:flex!important}.chord-grid-4x2{display:grid!important}.control-row{display:flex!important}}.chord-panel-paper{box-sizing:border-box;color:#ffffffe6;display:flex;flex-direction:column;font-family:Georgia,serif;gap:20px;height:100%;max-width:100%;overflow-x:hidden;width:100%}.chord-panel-paper.full-width{width:100%}.paper-header{border-bottom:3px double #8b45134d;padding-bottom:15px;text-align:center}.paper-title-handwritten{color:#fffffff2;font-family:Georgia,serif;font-size:36px;font-style:italic;font-weight:700;letter-spacing:2px;margin:0 0 10px;text-shadow:1px 1px 0 #0000004d}.paper-subtitle{color:#ffffffb3;font-size:18px;font-weight:600;letter-spacing:1px}.instrument-switch-paper,.mode-switch-paper{display:flex;gap:15px;justify-content:center;margin:10px 0}.paper-btn{background:#ffffff0d;border:2px solid #fff3;border-radius:8px;box-shadow:2px 2px 4px #0000004d;color:#fffc;cursor:pointer;font-family:Georgia,serif;font-size:16px;font-weight:600;padding:12px 30px;transition:all .2s}.paper-btn:hover{background:#ffffff1a;box-shadow:3px 3px 6px #0006;transform:translateY(-2px)}.paper-btn.active{background:linear-gradient(135deg,#d2691e,sienna);border-color:#d2691e;box-shadow:2px 2px 8px #d2691e80;color:#fff}.paper-btn-small{background:#ffffff0d;border:2px solid #fff3;border-radius:6px;color:#fffc;cursor:pointer;font-family:Georgia,serif;font-size:14px;font-weight:600;padding:8px 20px;transition:all .2s}.paper-btn-small:hover{background:#ffffff1a}.paper-btn-small.active{background:#d2691e;border-color:#d2691e;color:#fff}.progression-selector{background:#ffffff08;border:2px solid #ffffff1a;border-radius:8px;display:flex;flex-direction:column;gap:10px;max-height:200px;overflow-y:auto;padding:15px}.progression-list{display:flex;flex-direction:column;gap:8px}.progression-item{background:#ffffff0d;border:2px solid #ffffff26;border-radius:6px;cursor:pointer;padding:10px 15px;text-align:left;transition:all .2s}.progression-item:hover{background:#ffffff08;border-color:#d2691e}.progression-item.active{background:#d2691e;border-color:#fffc;color:#fff}.prog-name{color:inherit;font-size:14px;font-weight:600}.prog-degrees{font-size:11px;margin-top:3px;opacity:.8}.prog-key-scale{color:#ffc864e6;font-size:11px;font-style:italic;margin-top:3px;opacity:.85}.prog-pattern{color:#c8c8ffd9;font-family:monospace;font-size:10px;letter-spacing:.5px;margin-top:3px;opacity:.75}.progression-pattern-display{background:#ffc8641a;border-radius:4px;color:#ffc864f2;font-family:monospace;font-size:12px;font-weight:600;letter-spacing:1px;margin-top:8px;padding:6px 12px;text-align:center}.minimized-controls{align-items:center;background:#ffffff08;border-bottom:2px solid #8b451326;display:flex;justify-content:space-between;padding:10px 15px}.expand-btn{background:#ffffff0d;border:2px solid #ffffff26;border-radius:6px;color:#fffc;cursor:pointer;font-family:Georgia,serif;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s}.expand-btn:hover{background:#ffffff08;border-color:#d2691e}.instrument-toggle-mini{display:flex;gap:5px}.toggle-mini{align-items:center;background:#ffffff0d;border:2px solid #ffffff26;border-radius:6px;cursor:pointer;display:flex;font-size:14px;height:32px;justify-content:center;transition:all .2s;width:32px}.toggle-mini:hover{background:#ffffff08}.toggle-mini.active{background:#d2691e;border-color:#fffc}.simple-mode{flex:1 1;max-height:calc(100vh - 200px);overflow-y:auto}.chords-display-grid{grid-gap:20px;box-sizing:border-box;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);max-width:100%;padding:20px;width:100%}.chords-display-grid.maximized{gap:8px;grid-template-columns:repeat(4,1fr);padding:10px}@media (min-width:1200px){.chords-display-grid.maximized{grid-template-columns:repeat(4,1fr)}}.four-chords-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(2,1fr);padding:20px}.big-chord-card{background:#ffffff0d;border:3px solid #8b4513;border-radius:12px;box-shadow:4px 4px 8px #00000026,inset 0 0 30px #8b451308;box-sizing:border-box;max-width:100%;padding:25px;transition:all .3s;width:100%}.chords-display-grid.maximized .big-chord-card{border-radius:6px;border-width:2px;padding:10px}.big-chord-card:hover{box-shadow:6px 6px 12px #0003;transform:scale(1.02)}.big-chord-symbol{color:#fffc;font-size:48px;font-weight:700;margin-bottom:10px;text-align:center;text-shadow:2px 2px 0 #8b45131a}.chords-display-grid.maximized .big-chord-symbol{font-size:20px;margin-bottom:5px}.big-chord-name{color:#ffffffb3;font-size:18px;font-weight:600;margin-bottom:20px;text-align:center}.chords-display-grid.maximized .big-chord-name{font-size:10px;margin-bottom:8px}.big-chord-diagram{align-items:center;background:#ffffff05;border:2px solid #ffffff1a;border-radius:8px;display:flex;justify-content:center;margin-bottom:15px;min-height:200px;overflow:hidden;padding:15px}.chords-display-grid.maximized .big-chord-diagram{border-width:1px;margin-bottom:5px;min-height:100px;padding:5px}@media (max-width:768px){.big-chord-diagram{min-height:150px;padding:8px}}@media (max-width:480px){.big-chord-diagram{min-height:120px;padding:4px}}.big-chord-notes{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.chords-display-grid.maximized .big-chord-notes{gap:3px}.note-badge{background:#d2691e;border-radius:6px;box-shadow:2px 2px 4px #0003;color:#fff;font-size:14px;font-weight:600;padding:6px 14px}.chords-display-grid.maximized .note-badge{border-radius:3px;font-size:9px;padding:3px 6px}.note-fr{font-size:11px;opacity:.9}.chords-display-grid.maximized .note-fr{font-size:7px}.search-mode{display:flex;flex:1 1;flex-direction:column;gap:20px;max-height:calc(100vh - 200px);overflow-y:auto}.style-filter-paper{align-items:center;background:#ffffff08;border:2px solid #ffffff1a;border-radius:8px;display:flex;gap:15px;padding:15px}.paper-label{color:#fffc;font-size:16px;font-weight:600}.style-buttons-compact{display:flex;flex-wrap:wrap;gap:8px}.style-chip{background:#ffffff0d;border:2px solid #ffffff26;border-radius:20px;color:#fffc;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;text-transform:capitalize;transition:all .2s}.style-chip:hover{background:#ffffff08;border-color:#d2691e}.style-chip.active{background:#d2691e;border-color:#fffc;color:#fff}.chords-grid-guitar{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);padding:10px}.chords-grid-guitar,.guitar-chord-box{box-sizing:border-box;max-width:100%;width:100%}.guitar-chord-box{background:#ffffff0d;border:3px solid #8b4513;border-radius:10px;box-shadow:3px 3px 6px #0000001a;padding:18px;transition:all .2s}.guitar-chord-box:hover{box-shadow:4px 4px 10px #00000026;transform:translateY(-4px)}.guitar-chord-header{align-items:center;border-bottom:2px solid #8b451333;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.chord-symbol-guitar{color:#d2691e;flex:1 1;font-size:42px;font-weight:700;text-align:center;text-shadow:2px 2px 0 #8b45131a}.guitar-diagram-large{align-items:center;background:#0000;border:none;border-radius:8px;display:flex;justify-content:center;margin-bottom:12px;min-height:160px;padding:12px}.guitar-chord-notes{color:#fffc;font-size:14px;font-weight:600;letter-spacing:1px;text-align:center}.chords-grid-piano{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);padding:10px}.chords-grid-piano,.piano-chord-box{box-sizing:border-box;max-width:100%;width:100%}.piano-chord-box{background:#ffffff0d;border:3px solid #8b4513;border-radius:10px;box-shadow:3px 3px 6px #0000001a;padding:18px;transition:all .2s}.piano-chord-box:hover{box-shadow:4px 4px 10px #00000026;transform:translateY(-4px)}.piano-chord-header{align-items:center;border-bottom:2px solid #8b451333;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.degree-roman{color:#fffc;font-size:20px;font-weight:700}.chord-symbol-piano{color:#d2691e;flex:1 1;font-size:26px;font-weight:700;text-align:center}.chord-quality-piano{color:#ffffffb3;font-size:14px;font-weight:600;text-transform:capitalize}.piano-diagram-compact{background:#ffffff05;border:2px solid #8b45131a;border-radius:8px;display:flex;justify-content:center;margin-bottom:12px;min-height:100px;padding:12px}.piano-chord-notes{color:#fffc;font-size:14px;font-weight:600;letter-spacing:1px;text-align:center}@media (max-width:1200px){.chords-grid-guitar{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.chords-grid-guitar,.chords-grid-piano,.four-chords-grid{grid-template-columns:1fr}}@media (max-width:768px){.chord-panel-paper{gap:12px;height:auto!important;max-height:none;overflow-x:visible;overflow-y:visible;padding:8px}.paper-header{padding-bottom:10px}.paper-title-handwritten{font-size:30px}.paper-subtitle{font-size:15px}.instrument-switch-paper,.mode-switch-paper{gap:8px;margin:8px 0}.chords-display-grid{padding:8px}.chords-display-grid,.chords-grid-piano{gap:12px;grid-template-columns:1fr;width:100%}.chords-grid-guitar{width:100%}.big-chord-card{padding:15px}.big-chord-symbol{font-size:40px}.genre-selector{flex-wrap:wrap;gap:6px}.play-chords-controls{gap:12px;margin-top:20px;padding-top:15px}}@media (max-width:600px){.paper-title-handwritten{font-size:28px}.paper-subtitle{font-size:14px}.chords-display-grid,.chords-grid-guitar{grid-template-columns:1fr}.chords-display-grid{gap:10px;padding:6px}.big-chord-symbol{font-size:36px}.chord-symbol-guitar{font-size:28px}.guitar-diagram-large{min-height:140px;padding:4px}.chord-panel-paper{gap:8px;max-height:100vh;overflow-y:auto;padding:6px}.play-chords-controls{gap:10px;margin-top:15px}}@media (max-width:1024px) and (orientation:landscape){.chord-panel-paper{height:auto!important;max-height:none;overflow-x:visible;overflow-y:visible}}.play-chords-controls{border-top:1px solid #8b451333;box-sizing:border-box;display:flex;flex-direction:column;gap:15px;margin-top:25px;max-width:100%;padding-top:20px;width:100%}.play-chords-btn{align-items:center;background:linear-gradient(135deg,#b8860b,#daa520 50%,gold);border:2px solid #b8860b;border-radius:8px;box-shadow:0 4px 8px #daa5204d,inset 0 1px 2px #fff6;color:#1a1a1a;cursor:pointer;display:flex;font-family:Courier New,monospace;font-size:14px;font-weight:700;gap:10px;justify-content:center;padding:12px 24px;text-shadow:0 1px 2px #ffffff80;transition:all .2s ease}.play-chords-btn:hover{background:linear-gradient(135deg,#daa520,gold 50%,#ffed4e);box-shadow:0 6px 12px #daa52080,inset 0 1px 2px #fff9;transform:translateY(-1px)}.play-chords-btn.active{animation:golden-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,gold,#ffed4e 50%,#fff44f);border-color:#daa520;box-shadow:0 0 20px #ffd70099,0 6px 12px #daa52066,inset 0 1px 3px #ffffffb3}.pin-chords-btn{align-items:center;background:linear-gradient(135deg,#6c63ff,#8b7fff 50%,#a29dff);border:2px solid #5a52d5;border-radius:8px;box-shadow:0 4px 8px #6c63ff4d,inset 0 1px 2px #ffffff4d;color:#fff;cursor:pointer;display:flex;font-family:Courier New,monospace;font-size:14px;font-weight:700;gap:10px;justify-content:center;padding:12px 24px;text-shadow:0 1px 2px #0000004d;transition:all .2s ease}.pin-chords-btn:hover{background:linear-gradient(135deg,#8b7fff,#a29dff 50%,#b8b5ff);box-shadow:0 6px 12px #6c63ff80,inset 0 1px 2px #fff6;transform:translateY(-1px)}.pin-chords-btn.active{animation:pin-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#5a52d5,#6c63ff 50%,#8b7fff);border-color:#4a42b5;box-shadow:0 0 20px #6c63ff99,0 6px 12px #6c63ff66,inset 0 1px 3px #fff3}@keyframes pin-pulse{0%,to{box-shadow:0 0 20px #6c63ff99,0 6px 12px #6c63ff66,inset 0 1px 3px #fff3}50%{box-shadow:0 0 30px #6c63ffcc,0 6px 12px #6c63ff80,inset 0 1px 3px #ffffff4d}}.pin-icon{font-size:16px}.pin-text{font-size:14px;letter-spacing:.5px}@keyframes golden-pulse{0%,to{box-shadow:0 0 15px #ffd70080,0 6px 12px #daa52066,inset 0 1px 3px #ffffffb3}50%{box-shadow:0 0 25px #ffd700cc,0 6px 12px #daa52099,inset 0 1px 3px #ffffffe6}}.play-icon{font-size:14px}.play-text{letter-spacing:1px}.rhythm-options{background:#daa5200d;border:1px solid #daa52033;border-radius:6px;display:flex;flex-direction:column;gap:10px;padding:12px 16px}.rhythm-control-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.rhythm-option-label{color:#fffc;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.rhythm-option-label,.rhythm-pattern-select{font-family:Courier New,monospace;font-size:12px;font-weight:600}.rhythm-pattern-select{background:#ffffff14;border:2px solid #fff3;border-radius:6px;color:#ffffffd9;cursor:pointer;flex:1 1;min-width:180px;padding:8px 12px;transition:all .2s ease}.rhythm-pattern-select:hover{background:#ffffff1f;border-color:#daa52099}.rhythm-pattern-select:focus{background:#ffffff1f;border-color:#daa520cc;box-shadow:0 0 8px #daa52066;outline:none}.rhythm-pattern-select option{background:#1a1a1a;color:#fff}.rhythm-buttons{display:flex;flex-wrap:wrap;gap:8px}.rhythm-btn{background:#ffffff14;border:2px solid #fff3;border-radius:6px;color:#ffffffd9;cursor:pointer;flex:1 1;font-family:Courier New,monospace;font-size:12px;font-weight:600;min-width:100px;padding:10px 16px;transition:all .2s ease}.rhythm-btn:hover{background:#ffffff1f;border-color:#daa52099;color:#fffffff2;transform:translateY(-1px)}.rhythm-btn.active{background:linear-gradient(135deg,#daa520,gold);border-color:#b8860b;box-shadow:0 0 12px #ffd70080,inset 0 1px 2px #ffffff80;color:#1a1a1a}.arpeggiator-options{display:flex;flex-wrap:wrap;gap:12px;margin-top:0}.arpeggiator-option{align-items:center;display:flex;flex:0 0 auto;gap:8px}.arpeggiator-option label{color:#fffc;font-size:11px;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.arpeggiator-option label,.arpeggiator-select{font-family:Courier New,monospace;font-weight:600}.arpeggiator-select{background:#ffffff14;border:2px solid #fff3;border-radius:6px;color:#ffffffd9;cursor:pointer;font-size:12px;padding:8px 12px;transition:all .2s ease}.arpeggiator-select:hover{background:#ffffff1f;border-color:#daa52099}.arpeggiator-select:focus{background:#ffffff1f;border-color:#daa520cc;box-shadow:0 0 8px #daa52066;outline:none}.arpeggiator-select option{background:#1a1a1a;color:#fff}.timing-offset-control{background:#0000;border:none;border-radius:0;border-top:1px solid #daa52033;margin-top:10px;padding:10px 0 8px}.timing-offset-slider{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#d2691e 0,#8b7355 50%,#228b22);border-radius:3px;height:6px;outline:none}.timing-offset-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:gold;border:2px solid #8b7355;border-radius:50%;box-shadow:0 2px 4px #0000004d;cursor:pointer;height:16px;width:16px}.timing-offset-slider::-webkit-slider-thumb:hover{background:#ffed4e;transform:scale(1.1)}.timing-offset-slider::-moz-range-thumb{background:gold;border:2px solid #8b7355;border-radius:50%;box-shadow:0 2px 4px #0000004d;cursor:pointer;height:16px;width:16px}.timing-offset-slider::-moz-range-thumb:hover{background:#ffed4e;transform:scale(1.1)}.guitar-fretboard-synthetic{background:hsla(0,0%,58%,.133);border-radius:8px;padding:20px;width:100%}.guitar-fretboard-synthetic.horizontal{padding:16px}.fretboard-info{gap:12px}.fretboard-info,.fretboard-position-controls{display:flex;flex-direction:column;margin-bottom:16px}.fretboard-position-controls{background:#ffffff08;border:1px solid #e5e7eb;border-radius:8px;gap:10px;padding:12px}.position-switcher{flex-wrap:wrap;gap:8px}.position-btn-labeled,.position-switcher{align-items:center;display:flex;justify-content:center}.position-btn-labeled{background:#ffffff0d;border:2px solid;border-radius:8px;box-shadow:0 1px 3px #0000001a;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:all .2s ease;white-space:nowrap}.position-btn-labeled:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.position-btn-labeled.active{box-shadow:0 5px 15px #00000040;font-weight:700;transform:translateY(-2px)}.position-btn-labeled.full-view{background:#ffffff0d;border-color:#6366f1;color:#6366f1}.position-btn-labeled.full-view.active{background-color:#6366f1;border-color:#6366f1;color:#fff}.position-btn-labeled.full-view:hover{background-color:#4f46e5;border-color:#4f46e5;color:#fff}.guitar-fretboard-synthetic.vertical .fretboard-grid{background:linear-gradient(180deg,#d8d8d8f2 0,#ffffffa1);border-radius:12px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:row;gap:0;padding:16px}.guitar-fretboard-synthetic.vertical .fret-numbers-row{align-items:center;border-left:2px solid #0003;display:flex;flex-direction:column;gap:0;padding-left:12px}.guitar-fretboard-synthetic.vertical .string-label-spacer{flex-shrink:0;height:35px}.guitar-fretboard-synthetic.vertical .fret-number{align-items:center;color:#ffffff80;display:flex;font-size:13px;font-weight:600;height:45px;justify-content:center}.guitar-fretboard-synthetic.vertical .string-display-row{display:flex;flex:1 1;flex-direction:column;overflow:visible;position:relative}.guitar-fretboard-synthetic.vertical .string-label{align-items:center;border-bottom:2px solid #0003;color:#fffc;display:flex;font-size:14px;font-weight:700;height:35px;justify-content:center}.guitar-fretboard-synthetic.vertical .frets-row{display:flex;flex:1 1;flex-direction:column;overflow:visible;position:relative}.guitar-fretboard-synthetic.vertical .frets-row:before{background:#0000004d;bottom:0;content:"";left:50%;position:absolute;top:0;transform:translateX(-50%);width:2px}.guitar-fretboard-synthetic.vertical .fret-cell{align-items:center;border-bottom:2px solid #0003;display:flex;height:45px;justify-content:center;overflow:visible;position:relative}.guitar-fretboard-synthetic.vertical .fret-cell:last-child{border-bottom:none}.guitar-fretboard-synthetic.vertical .string-display-row:first-child .fret-cell.on-fretboard{border-left:1px solid #0003}.guitar-fretboard-synthetic.vertical .string-display-row:last-of-type .fret-cell.on-fretboard{border-right:1px solid #0003}.guitar-fretboard-synthetic.vertical .string-display-row:last-of-type .fret-cell.open-string{border-bottom:none}.guitar-fretboard-synthetic.vertical .fret-cell.open-string{background:#0000;border-right:2px solid #0009}.guitar-fretboard-synthetic.vertical .fret-cell.after-nut{border-left:2px solid #0009}.guitar-fretboard-synthetic.horizontal .fretboard-grid{background:linear-gradient(180deg,#d8d8d8f2 0,#ffffffa1);border-radius:8px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:0;overflow-x:auto;padding:12px 40px 12px 12px}.guitar-fretboard-synthetic.horizontal .fret-numbers-row{align-items:center;border-top:1px solid #0000001f;display:flex;flex-direction:row;gap:0;padding-top:8px}.guitar-fretboard-synthetic.horizontal .string-label-spacer{flex-shrink:0;width:35px}.guitar-fretboard-synthetic.horizontal .fret-number{align-items:center;color:rgba(0,0,0,.864);display:flex;flex-shrink:0;font-size:11px;font-weight:600;justify-content:center;width:45px}.guitar-fretboard-synthetic.horizontal .string-display-row{align-items:center;display:flex;flex-direction:row;min-height:32px;overflow:visible;position:relative}.guitar-fretboard-synthetic.horizontal .string-label{align-items:center;border-right:2px solid #00000026;color:#ffffffb3;display:flex;flex-shrink:0;font-size:12px;font-weight:700;justify-content:center;width:35px}.guitar-fretboard-synthetic.horizontal .frets-row{align-items:center;display:flex;flex:1 1;flex-direction:row;overflow:visible;position:relative}.guitar-fretboard-synthetic.horizontal .frets-row:before{background:#000c;content:"";height:1px;left:0;position:absolute;right:0;top:50%;transform:translateY(-50%)}.guitar-fretboard-synthetic.horizontal .fret-cell{align-items:center;background-color:rgba(217,170,2,.171);border-right:2px solid #00000026;display:flex;flex-shrink:0;height:32px;justify-content:center;overflow:visible;position:relative;width:45px}.guitar-fretboard-synthetic.horizontal .fret-cell:last-child{border-right:none}.guitar-fretboard-synthetic.horizontal .string-display-row:first-child .fret-cell.on-fretboard{border-top:1px solid #0003}.guitar-fretboard-synthetic.horizontal .string-display-row:last-of-type .fret-cell.on-fretboard{border-bottom:1px solid #0003}.guitar-fretboard-synthetic.horizontal .string-display-row:last-of-type .fret-cell.open-string{border-right:none}.guitar-fretboard-synthetic.horizontal .fret-cell.open-string{background:#0000;border-right:2px solid #0009}.guitar-fretboard-synthetic.horizontal .fret-cell.after-nut{border-left:2px solid #0009}.fret-marker-container{align-items:center;display:flex;height:100%;justify-content:center;pointer-events:none;position:absolute;width:100%;z-index:0}.fret-marker-dot{background-color:#96826459;border-radius:50%;box-shadow:inset 0 1px 2px #00000026;height:22px;width:22px}.guitar-fretboard-synthetic.vertical .fret-marker-container.double-bottom,.guitar-fretboard-synthetic.vertical .fret-marker-container.double-top,.guitar-fretboard-synthetic.vertical .fret-marker-container.single{transform:translateX(50%)}.guitar-fretboard-synthetic.horizontal .fret-marker-container.double-bottom,.guitar-fretboard-synthetic.horizontal .fret-marker-container.double-top,.guitar-fretboard-synthetic.horizontal .fret-marker-container.single{transform:translateY(50%)}.note-marker{align-items:center;background-color:#4299e1;border:2px solid #ffffffb3;border-radius:50%;box-shadow:0 2px 5px #0003;display:flex;height:16px;justify-content:center;position:relative;transition:all .2s ease;width:16px;z-index:1}.note-marker:hover{border-color:#ffffffe6;box-shadow:0 3px 8px #0000004d;transform:scale(1.15)}.note-marker.root{background-color:#ef4444!important;border:2px solid #fff;box-shadow:0 2px 6px #ef444466;height:18px;width:18px}.note-marker.third{background-color:#f97316!important;border:2px solid #fff;box-shadow:0 2px 5px #f973164d}.note-marker.fifth{background-color:#3b82f6!important;border:2px solid #fff;box-shadow:0 2px 5px #3b82f64d}.note-marker.penta{background-color:#10b981!important;border:2px solid #fff;box-shadow:0 2px 5px #10b9814d}.note-marker.non-penta{background-color:#3a3a3a!important;border:1px solid #fff;box-shadow:0 2px 4px #00000080;height:12px;width:12px}.note-marker.non-penta .note-label{color:#fff;font-size:7px;font-weight:700}.note-marker.inactive-position{opacity:.25}.note-label{color:#fff;font-size:10px;font-weight:700;pointer-events:none;position:relative;text-shadow:0 1px 2px #00000080;-webkit-user-select:none;user-select:none;z-index:10}.note-marker.root .note-label{font-size:11px}.note-function-legend{background:#ffffff08;border:1px solid #e5e7eb;border-radius:6px;margin-top:12px;padding:10px}.legend-title{color:#374151;font-size:12px;font-weight:700;margin-bottom:6px}.legend-items{display:flex;flex-wrap:wrap;gap:12px}.legend-item-note{align-items:center;display:flex;gap:5px}.legend-dot{border:2px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0003;height:16px;width:16px}.legend-dot.root{background-color:#ef4444;height:18px;width:18px}.legend-dot.third{background-color:#f97316}.legend-dot.fifth{background-color:#3b82f6}.legend-dot.penta{background-color:#10b981}.legend-dot.scale{background-color:#3a3a3a;border:1px solid #fff;height:12px;width:12px}.legend-item-note span{color:#ffffffb3;font-size:12px;font-weight:500}.fretboard-hint{background:#3b82f614;border:1px solid #3b82f633;border-radius:6px;color:#6b7280;font-size:12px;font-style:italic;margin-top:12px;padding:10px;text-align:center}@media (max-width:480px){.guitar-fretboard-synthetic{padding:12px}.position-legend{gap:6px}.legend-item{font-size:10px;padding:4px 8px}.legend-color{height:10px;width:10px}.note-marker{height:22px;width:22px}.note-marker.root{height:24px;width:24px}.note-marker.fifth,.note-marker.penta,.note-marker.third{height:22px;width:22px}.note-label{font-size:9px}.note-marker.root .note-label{font-size:10px}.guitar-fretboard-synthetic.horizontal .fret-cell{height:30px;width:45px}.guitar-fretboard-synthetic.horizontal .fret-number{font-size:10px;width:45px}.guitar-fretboard-synthetic.horizontal .string-label{font-size:11px;width:32px}.guitar-fretboard-synthetic.horizontal .string-display-row{min-height:30px}.guitar-fretboard-synthetic.vertical .fret-cell{height:40px}.guitar-fretboard-synthetic.vertical .fret-number{font-size:11px;height:40px}}.melody-panel-paper{color:#ffffffe6;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;gap:8px;height:100%;padding:8px;width:100%}.melody-panel-paper.full-width{width:100%}.melody-instrument-switch-top{background:#ffffff0d;border-radius:8px;display:flex;gap:3px;justify-content:center;margin:0 auto 8px;padding:3px;width:-webkit-fit-content;width:fit-content}.melody-main-display{background:#0000;flex:1 1;min-height:400px;overflow:visible;padding:0}.melody-main-display,.melody-piano-large{align-items:center;display:flex;justify-content:center}.melody-piano-large{transform:scale(1.4);transform-origin:center;width:100%}.melody-guitar-large,.melody-ukulele-large{align-items:center;display:flex;justify-content:center;transform:scale(1.1);transform-origin:center;width:100%}.melody-controls-bottom{display:flex;flex-direction:column;gap:6px;padding-top:8px}.melody-instrument-switch-compact{background:#ffffff0d;border-radius:8px;display:flex;gap:3px;justify-content:center;margin:0 auto;padding:3px;width:-webkit-fit-content;width:fit-content}.instrument-btn{background:#0000;border:none;border-radius:6px;color:#ffffffe6;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:12px;font-weight:500;padding:6px 12px;transition:all .15s}.instrument-btn:hover{background:#ffffff1a}.instrument-btn.active{background:#ffffff0d;box-shadow:0 1px 3px #0000001a;color:#ffffffe6}.key-selector-melody{align-items:center;background:#ffffff0d;border-radius:8px;display:flex;gap:8px;justify-content:center;margin-bottom:6px;padding:6px 12px}.key-selector-melody label{color:#ffffffb3;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.key-select-dropdown{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#ffffffe6;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:13px;font-weight:600;outline:none;padding:6px 12px;transition:all .15s}.key-select-dropdown:hover{background:#ffffff26;border-color:#ffffff4d}.key-select-dropdown:focus{background:#ffffff26;border-color:#a2aef199;box-shadow:0 0 0 2px #a2aef133}.key-select-dropdown option{background:#1a1a2e;color:#ffffffe6}.scale-selector-bottom{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.scale-btn{background:#ffffff0d;border:1px solid #0000001a;border-radius:6px;color:#ffffffe6;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:11px;font-weight:500;padding:5px 10px;transition:all .15s}.scale-btn:hover{background:#ffffff0d;border-color:#ffffff26}.scale-btn.active{background:#ffffff26;border-color:#ffffffe6;color:#a2aef1}.melody-show-notes-btn{align-items:center;background:#4caf501a;border:2px solid #4caf504d;border-radius:8px;color:#4caf50;cursor:pointer;display:flex;font-family:monospace;font-size:12px;font-weight:600;justify-content:center;margin-top:8px;padding:8px 16px;transition:all .2s}.melody-show-notes-btn:hover{background:#4caf5033;border-color:#4caf5080;transform:translateY(-1px)}.melody-show-notes-btn.active{background:linear-gradient(135deg,#4caf5066,#4caf5033);border-color:#4caf5099;box-shadow:0 0 10px #4caf5066,inset 0 1px 2px #fff3}.melody-pin-btn{align-items:center;background:#6c63ff1a;border:2px solid #6c63ff4d;border-radius:8px;color:#6c63ff;cursor:pointer;display:flex;font-family:inherit;font-size:13px;font-weight:700;gap:6px;justify-content:center;margin-top:8px;padding:8px 16px;transition:all .2s}.melody-pin-btn:hover{background:#6c63ff33;border-color:#6c63ff80;transform:translateY(-1px)}.melody-pin-btn.active{background:linear-gradient(135deg,#6c63ff,#8b7fff);border-color:#5a52d5;box-shadow:0 0 10px #6c63ff66,inset 0 1px 2px #ffffff4d;color:#fff}.melody-pin-btn .pin-icon{font-size:16px}.melody-pin-btn .pin-text{font-size:12px;letter-spacing:.5px;text-transform:uppercase}.melody-main-display.clickable-on-mobile{cursor:pointer;position:relative;transition:all .2s ease}.melody-main-display.clickable-on-mobile:active{opacity:.9;transform:scale(.98)}.melody-fullscreen-overlay{align-items:center;animation:fadeIn .2s ease;background:#000000f2;bottom:0;cursor:pointer;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.melody-fullscreen-content{height:100%;overflow:visible;padding:20px}.melody-fullscreen-content,.melody-fullscreen-fretboard{align-items:center;cursor:pointer;display:flex;justify-content:center;width:100%}.melody-fullscreen-fretboard{max-width:100%;touch-action:pan-x pan-y}.melody-fullscreen-piano{align-items:center;display:flex;justify-content:center;transform:scale(1.5);width:100%}@media (orientation:landscape) and (max-width:1024px){.melody-fullscreen-content{padding:10px}.melody-fullscreen-fretboard{max-height:100vh}.melody-fullscreen-piano{transform:scale(1.8)}}@media (max-width:900px){.melody-piano-large{transform:scale(1.2)}}@media (max-width:768px){.melody-panel-paper{gap:8px;padding:6px}.melody-instrument-switch-top{margin-bottom:12px}.instrument-btn{font-size:13px;padding:8px 14px}.melody-main-display{border-radius:12px;min-height:280px}.scale-selector-bottom{gap:8px}.scale-btn{font-size:11px;font-weight:600;padding:6px 12px}}@media (max-width:600px){.melody-panel-paper{gap:6px;padding:4px}.melody-piano-large{transform:scale(1)}.melody-main-display{min-height:250px}.scale-btn{font-size:10px;padding:4px 8px}.instrument-btn{font-size:11px;padding:5px 10px}}.close-button{align-items:center;background:#0000001a;border:1px solid #0003;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:20px;font-weight:700;height:24px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:24px}.close-button:hover{background:#ff00001a;border-color:#ff00004d;color:#d32f2f;transform:scale(1.1)}.close-button:active{transform:scale(.95)}.close-button.dark{background:#ffffff1a;border-color:#fff3;color:#ccc}.close-button.dark:hover{background:#f003;border-color:#f006;color:#ff6b6b}.music-assistant-trigger{background:#0000;border:none;cursor:pointer;flex-direction:column;gap:4px;height:auto;margin-top:-120px;opacity:1;padding:0;pointer-events:all;position:fixed;right:20px;top:50%;z-index:1000}.inspiration-icon-wrapper,.music-assistant-trigger{align-items:center;display:flex;transition:all .3s ease;width:50px}.inspiration-icon-wrapper{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#ffffff0d,#ffffff05);border:2px solid #ffffff26;border-radius:10px;box-shadow:0 4px 15px #0000001a;height:50px;justify-content:center;transform-origin:center center}.music-assistant-trigger:hover .inspiration-icon-wrapper{background:linear-gradient(145deg,#ffffff26,#ffffff14);border-color:#ffffff40;box-shadow:0 6px 20px #00000026;transform:scale(1.08)}.music-assistant-trigger.active .inspiration-icon-wrapper{background:linear-gradient(145deg,#fff3,#ffffff1a);border-color:#ffffff4d}.inspiration-icon-wrapper svg{stroke:#fff9;fill:none;height:26px;transition:all .3s ease;width:26px}.music-assistant-trigger:hover .inspiration-icon-wrapper svg{stroke:#ffffffe6;fill:#ffffff1a}.music-assistant-trigger.active .inspiration-icon-wrapper svg{stroke:#fff;fill:#fff3}.inspiration-label{color:#ffffffb3;display:block;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;transition:color .3s ease}.music-assistant-trigger:hover .inspiration-label{color:#ffffffe6}.music-assistant-overlay{animation:fadeIn .3s ease;background:#00000026;bottom:0;cursor:pointer;left:0;position:fixed;right:0;top:0;z-index:998}.music-assistant-panel{background:#1a1a1a;border:none;box-shadow:0 0 0 1px #ffffff1a,0 8px 24px #00000080;display:flex;flex-direction:column;overflow:hidden;position:fixed;transition:transform .5s cubic-bezier(.4,0,.2,1);z-index:999}@media (orientation:landscape){.music-assistant-panel{bottom:0;max-width:900px;min-width:500px;right:0;top:0;transform:translateX(100%);width:55%}.music-assistant-panel.open{transform:translateX(0)}body.music-assistant-open .main-container{margin-right:55%;transition:all .5s cubic-bezier(.4,0,.2,1)}body.music-assistant-open .master-controls-top-right{left:22.5%;right:auto;transform:translateX(-50%);transition:all .5s cubic-bezier(.4,0,.2,1)}body.music-assistant-open .app-header{margin-right:55%;transition:all .5s cubic-bezier(.4,0,.2,1)}}@media (min-width:1025px) and (orientation:portrait){.music-assistant-panel{bottom:0;height:45%;left:0;max-height:500px;min-height:300px;right:0;transform:translateY(100%)}.music-assistant-panel.open{transform:translateY(0)}body.music-assistant-open .main-container{transform:translateY(-10%) scale(.92);transition:transform .5s cubic-bezier(.4,0,.2,1)}}@media (max-width:1024px) and (orientation:portrait){.music-assistant-panel{bottom:0!important;height:100%!important;left:0!important;max-height:none!important;min-height:100%!important;right:0!important;top:0!important;transform:translateX(100%)!important}.music-assistant-panel.open{transform:translateX(0)!important}body.music-assistant-open .app-header,body.music-assistant-open .main-container{display:none}.music-assistant-panel .assistant-content{overflow-x:visible!important;padding-bottom:calc(80px + env(safe-area-inset-bottom))}}@media (max-width:1024px) and (orientation:landscape){.music-assistant-panel{bottom:0!important;left:0!important;max-width:none!important;min-width:100%!important;right:0!important;top:0!important;transform:translateX(100%)!important;width:100%!important}.music-assistant-panel.open{transform:translateX(0)!important}body.music-assistant-open .app-header,body.music-assistant-open .main-container{display:none}.music-assistant-panel .assistant-content{overflow-x:visible!important;padding-bottom:calc(80px + env(safe-area-inset-bottom))}}@media (max-width:430px){.music-assistant-panel{height:45%;max-height:450px;min-height:280px}body.music-assistant-open .main-container{transform:translateY(-10%) scale(.88)}body.music-assistant-open .footswitch{transform:scale(.85)}body.music-assistant-open .master-control-item{margin:0}.assistant-header{padding:10px 12px}.assistant-title{font-size:18px}.assistant-tagline{display:none}.panel-toggle{font-size:10px;gap:4px;padding:5px 8px}.panel-toggle svg{height:14px;width:14px}.assistant-content{padding:12px 12px 60px}}.assistant-header{background:#0000;border-bottom:1px solid #ffffff1a;justify-content:space-between;padding:20px 24px;position:relative}.assistant-header,.close-btn{align-items:center;display:flex}.close-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;cursor:pointer;flex-shrink:0;height:32px;justify-content:center;margin-left:12px;padding:0;transition:all .2s ease;width:32px}.close-btn:hover{background:#fff3;border-color:#ffffff4d;transform:scale(1.05)}.close-btn:active{transform:scale(.95)}.close-btn svg{stroke:#ffffffb3;transition:stroke .2s ease}.close-btn:hover svg{stroke:#ffffffe6}.assistant-header-content{align-items:flex-start;display:flex;flex-direction:column;gap:5px}.assistant-title{align-items:center;color:#fffffff2;display:flex;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:24px;font-weight:600;gap:12px;letter-spacing:-.3px;margin:0}.assistant-title svg{color:#fffc}.assistant-tagline{color:#ffffff80;font-family:Dancing Script,cursive;font-size:1.2em;font-style:italic;font-weight:600;margin:0}.assistant-controls{gap:15px}.assistant-controls,.play-chords-label,.play-chords-toggle{align-items:center;display:flex}.play-chords-label{cursor:pointer;gap:8px;-webkit-user-select:none;user-select:none}.play-chords-label input[type=checkbox]{accent-color:#daa520;cursor:pointer;height:16px;width:16px}.play-chords-text{color:#fff9;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:13px;font-weight:600}.play-chords-label:hover .play-chords-text{color:#daa520}.panel-toggles{background:#0000;border:none;border-radius:8px;display:flex;gap:4px;padding:0}.panel-toggle{align-items:center;background:#ffffff08;border:1px solid #0000;border-radius:6px;color:#ffffffb3;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:all .2s ease}.panel-toggle:hover{background:#ffffff14;border-color:#ffffff1a;color:#ffffffe6}.panel-toggle.active{background:#ffffff1f;border-color:#fff3;box-shadow:0 2px 4px #0003;color:#fff}.panel-toggle svg{height:16px;width:16px}.assistant-content{background:#1a1a1a;box-sizing:border-box;display:flex;flex:1 1;gap:0;overflow-x:hidden;overflow-y:auto;padding:24px 24px 80px;width:100%}.assistant-content>*{box-sizing:border-box;max-width:100%}.assistant-content::-webkit-scrollbar{width:8px}.assistant-content::-webkit-scrollbar-track{background:#0000}.assistant-content::-webkit-scrollbar-thumb{background:#fff3;border:2px solid #1a1a1a;border-radius:4px}.assistant-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sets-panel{padding:40px;text-align:center;width:100%}.sets-panel h3{color:#fffffff2;font-size:24px;font-weight:600;margin:0 0 12px}.sets-panel h3,.sets-panel p{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif}.sets-panel p{color:#fff9;font-size:15px;margin:8px 0}@media (min-width:1440px){.assistant-controls{flex-wrap:nowrap}.close-btn{flex-shrink:0;margin-left:12px}}@media (min-width:769px) and (max-width:1024px){.music-assistant-panel{min-width:500px}}@media (max-width:768px){.music-assistant-trigger{margin-top:-100px;right:10px;top:50%;width:45px}.inspiration-icon-wrapper{height:45px;width:45px}.inspiration-icon-wrapper svg{height:22px;width:22px}.inspiration-label{font-size:11px}.assistant-header{padding:20px}.assistant-title{font-size:22px}.assistant-content{overflow-x:visible!important;padding:16px;width:100%}.music-assistant-panel{max-width:100vw!important;width:100vw!important}}@media (max-width:480px){.assistant-controls{gap:8px}.panel-toggle{font-size:12px;padding:8px 12px}.assistant-title{font-size:18px}.assistant-header-content{display:none}.assistant-controls{justify-content:center;width:100%}.assistant-content,.assistant-header{padding:12px}}.instrument-selector{align-items:center;display:flex;gap:8px}.instrument-selector.compact{gap:4px}.instrument-btn{align-items:center;background:#ffffff1a;border:2px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:14px;font-weight:600;gap:6px;padding:8px 12px;transition:all .2s ease}.instrument-selector.compact .instrument-btn{font-size:16px;padding:6px 10px}.instrument-btn:hover{background:#fff3;border-color:#fff6;transform:translateY(-1px)}.instrument-btn.active{background:linear-gradient(135deg,#ffffff4d,#fff3);border-color:#ffffff80;box-shadow:0 0 10px #ffffff4d,inset 0 1px 2px #fff3}.instrument-btn:active{transform:translateY(0)}.pinned-view-overlay{animation:fadeInUp .3s ease-in-out;bottom:20px;left:50%;max-width:90vw;pointer-events:none;position:fixed;transform:translateX(-50%);-webkit-user-select:none;user-select:none;z-index:999}.pinned-view-overlay.dragging{transition:none}@keyframes fadeInUp{0%{opacity:0;transform:translateX(-50%) translateY(20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.pinned-view-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000004d;border:2px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000004d,0 2px 8px #0003,inset 0 1px 0 #ffffff1a;padding:16px 20px;pointer-events:auto;transition:box-shadow .3s ease}.pinned-view-container:hover{box-shadow:0 12px 40px #0006,0 4px 12px #0000004d,inset 0 1px 0 #ffffff26}.pinned-view-header{align-items:center;border-bottom:2px solid #fff3;display:flex;gap:15px;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.pinned-header-left{align-items:center;display:flex;gap:8px}.pinned-icon{filter:drop-shadow(0 2px 4px rgba(255,255,255,.3));font-size:18px}.pinned-title{color:gold;font-family:monospace;font-size:14px;font-weight:700;letter-spacing:2px;margin:0;text-shadow:0 2px 4px #00000080;text-transform:uppercase}.pinned-mode-toggle{display:flex;gap:4px;opacity:0;pointer-events:none;transition:opacity .3s ease}.pinned-mode-toggle.visible{opacity:1;pointer-events:auto}.mode-toggle-btn{align-items:center;background:#ffffff1a;border:2px solid #fff3;border-radius:8px;cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:6px 10px;transition:all .2s ease}.mode-toggle-btn:hover{background:#fff3;border-color:#fff6;transform:translateY(-1px)}.mode-toggle-btn.active{background:linear-gradient(135deg,#4caf5066,#4caf5033);border-color:#4caf5099;box-shadow:0 0 10px #4caf5066,inset 0 1px 2px #fff3}.pinned-instrument-selector-wrapper{opacity:0;pointer-events:none;transition:opacity .3s ease}.pinned-instrument-selector-wrapper.visible{opacity:1;pointer-events:auto}.pinned-chords-horizontal{display:flex;flex-direction:row;gap:16px;overflow-x:auto;padding:4px;scrollbar-color:#ffffff4d #0000;scrollbar-width:thin}.pinned-chords-horizontal::-webkit-scrollbar{height:6px}.pinned-chords-horizontal::-webkit-scrollbar-track{background:#0000}.pinned-chords-horizontal::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.pinned-chords-horizontal::-webkit-scrollbar-thumb:hover{background:#ffffff80}.pinned-chord-card{align-items:center;background:#ffffffe6;border:2px solid #ffffff4d;border-radius:12px;box-shadow:0 4px 8px #0003,inset 0 1px 2px #ffffff80;display:flex;flex-direction:column;flex-shrink:0;gap:8px;min-width:120px;padding:12px;transition:transform .2s ease,box-shadow .2s ease}.pinned-chord-card:hover{border-color:#ffffff80;box-shadow:0 6px 12px #0000004d,inset 0 1px 2px #fff9;transform:translateY(-2px)}.pinned-chord-symbol-label{color:#333;font-family:Georgia,serif;font-size:18px;font-weight:700;letter-spacing:.5px;text-shadow:0 1px 2px #ffffff80}.pinned-chord-diagram{display:flex;justify-content:center;width:100%}.pinned-scale-view{padding:8px}.pinned-scale-instrument{display:flex;justify-content:center;width:100%}.pinned-scale-selector{opacity:0;pointer-events:none;transition:opacity .3s ease}.pinned-scale-selector.visible{opacity:1;pointer-events:auto}.scale-select-pin{background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-family:monospace;font-size:12px;font-weight:600;padding:6px 12px;text-shadow:0 1px 2px #00000080;transition:all .2s ease}.scale-select-pin:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-1px)}.scale-select-pin option{background:#2a2a2a;color:#fff}.pinned-show-notes-toggle{opacity:0;pointer-events:none;transition:opacity .3s ease}.pinned-show-notes-toggle.visible{opacity:1;pointer-events:auto}.show-notes-btn{background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-family:monospace;font-size:11px;font-weight:600;padding:6px 12px;text-shadow:0 1px 2px #00000080;transition:all .2s ease;white-space:nowrap}.show-notes-btn:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-1px)}.show-notes-btn.active{background:linear-gradient(135deg,#4caf5066,#4caf5033);border-color:#4caf5099;box-shadow:0 0 10px #4caf5066,inset 0 1px 2px #fff3}@media (max-width:768px){.pinned-view-overlay{bottom:10px;max-width:95vw}.pinned-view-container{padding:12px 16px}.pinned-chords-horizontal{gap:12px}.pinned-chord-card{min-width:100px;padding:10px}.pinned-chord-symbol-label{font-size:16px}.pinned-title{font-size:14px}.pinned-icon{font-size:16px}.mode-toggle-btn,.pinned-instrument-btn{font-size:14px;padding:5px 8px}}.studio-chords-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;margin:15px auto;max-width:100%;padding:20px}.studio-chords-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:10px}.studio-chords-title{color:gold;flex:1 1;font-size:12px;font-weight:700;letter-spacing:2px;text-align:center;text-shadow:0 2px 4px #00000080;text-transform:uppercase}.studio-show-diagrams-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#fff;cursor:pointer;font-family:monospace;font-size:10px;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase;transition:all .2s ease;white-space:nowrap}.studio-show-diagrams-btn:hover{background:#fff3;border-color:#ffd70080}.studio-show-diagrams-btn.active{background:#ffd7004d;border-color:#ffd700b3;color:gold}.studio-chords-grid{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px;justify-content:center;max-width:100%;overflow-x:auto;padding:10px 0}.studio-chords-grid::-webkit-scrollbar{height:6px}.studio-chords-grid::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.studio-chords-grid::-webkit-scrollbar-thumb{background:#ffd70066;border-radius:3px}.studio-chords-grid::-webkit-scrollbar-thumb:hover{background:#ffd70099}.studio-chord-card{align-items:center;background:#64646459;border:1px solid #fff3;border-radius:8px;box-shadow:0 3px 12px #0006;display:flex;flex-direction:column;flex-shrink:0;gap:8px;max-width:140px;min-width:100px;padding:12px;transition:transform .2s ease,box-shadow .2s ease}.studio-chord-card:hover{border-color:#ffd7004d;box-shadow:0 4px 16px #00000080;transform:translateY(-2px)}.studio-chord-card-piano{max-width:220px;min-width:180px}.studio-chord-symbol{background:#ffffff26;border-radius:4px;color:#fff;font-size:14px;font-weight:700;min-width:50px;padding:4px 8px;text-align:center;text-shadow:0 1px 2px #00000080}.studio-chord-diagram{align-items:center;background:#ffffff14;border:1px solid #ffffff1a;border-radius:6px;display:flex;justify-content:center;min-height:100px;padding:8px;width:100%}@media (max-width:768px){.studio-chords-container{margin:8px auto;padding:12px}.studio-chords-grid{gap:12px;justify-content:flex-start;overflow-x:auto;padding:8px 0}.studio-chord-card{flex-shrink:0;gap:6px;max-width:100px;min-width:85px;padding:10px}.studio-chord-symbol{font-size:12px;padding:4px 8px}.studio-chord-diagram{min-height:75px;padding:6px}.studio-chord-card-piano{max-width:170px;min-width:140px}}@media (min-width:768px) and (max-width:1024px){.studio-chords-container{max-width:95%;padding:16px}.studio-chords-grid{gap:16px}.studio-chord-card{max-width:120px;min-width:90px;padding:10px}.studio-chord-card-piano{max-width:200px;min-width:160px}}.studio-chords-symbols-only{align-items:center;background:#ffffff0d;border-radius:6px;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:10px}.studio-chord-symbol-compact{background:#64646466;border:1px solid #fff3;border-radius:6px;color:#fff;font-size:16px;font-weight:700;padding:8px 14px;text-shadow:0 1px 2px #00000080;transition:all .2s ease}.studio-chord-symbol-compact:hover{background:#78787880;border-color:#ffd70066;transform:translateY(-1px)}@media (max-width:768px){.studio-chords-symbols-only{gap:8px;padding:8px}.studio-chord-symbol-compact{font-size:14px;padding:6px 10px}}.studio-melody-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;margin:10px auto;max-width:100%;padding:12px}.studio-melody-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:10px}.studio-melody-title{color:gold;flex:1 1;font-size:12px;font-weight:700;letter-spacing:2px;text-align:center;text-shadow:0 2px 4px #00000080;text-transform:uppercase}.studio-show-notes-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#fff;cursor:pointer;font-family:monospace;font-size:10px;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase;transition:all .2s ease}.studio-show-notes-btn:hover{background:#fff3;border-color:#ffd70080}.studio-show-notes-btn.active{background:#ffd7004d;border-color:#ffd700b3;color:gold}.studio-melody-diagram{align-items:center;display:flex;justify-content:center;min-height:100px;width:100%}.studio-melody-fretboard-scroll{align-items:center;display:flex;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding:10px 0;width:100%}.studio-melody-fretboard-scroll::-webkit-scrollbar{height:8px}.studio-melody-fretboard-scroll::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}.studio-melody-fretboard-scroll::-webkit-scrollbar-thumb{background:#ffd70080;border-radius:4px}.studio-melody-fretboard-scroll::-webkit-scrollbar-thumb:hover{background:#ffd700b3}@media (max-width:768px){.studio-melody-container{margin:5px auto;padding:8px}.studio-melody-title{font-size:10px}.studio-melody-diagram{min-height:80px}}@media (min-width:768px) and (max-width:1024px){.studio-melody-container{max-width:95%}}.tuner-container{display:flex;flex-direction:column;gap:20px;margin:0 auto 30px;max-width:500px;padding:20px;transition:all .3s ease;width:100%}.tuner-container.in-tune{filter:drop-shadow(0 0 30px rgba(139,195,74,.6))}.tuner-lcd{background:repeating-linear-gradient(90deg,#00000008,#00000008 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#00000008,#00000008 1px,#0000 0,#0000 2px),linear-gradient(135deg,#1a2030,#0f1620);background-image:repeating-linear-gradient(0deg,#0000,#0000 2px,#0014280d 0,#0014280d 4px),repeating-linear-gradient(90deg,#00142808,#00142808 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#00142808,#00142808 1px,#0000 0,#0000 2px);border:3px solid #2a3545;border-radius:12px;box-shadow:-1px 1px 0 #3a4555,-2px 2px 0 #384353,-3px 3px 0 #364151,-4px 4px 0 #343f4f,-5px 5px 0 #323d4d,-6px 6px 0 #303b4b,-7px 7px 0 #2e3949,-8px 8px 0 #2c3747,-9px 9px 0 #2a3545,-10px 10px 0 #283343,-11px 11px 0 #263141,-12px 12px 0 #242f3f,-13px 13px 0 #222d3d,-14px 14px 0 #202b3b,-15px 15px 0 #1a2530,-15px 15px 20px #00142866,0 10px 30px #00142880,inset 0 1px 3px #c8dcff1a,inset 0 -2px 5px #0014284d;display:flex;flex-direction:column;height:360px;justify-content:space-around;padding:15px 20px;position:relative;transition:all .3s ease}.tuner-lcd.listening{background:repeating-linear-gradient(0deg,#0000,#0000 2px,#42a5f50f 0,#42a5f50f 4px),repeating-linear-gradient(90deg,#42a5f50a,#42a5f50a 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#42a5f50a,#42a5f50a 1px,#0000 0,#0000 2px),linear-gradient(135deg,#5a9fd6,#3895d5)}.tuner-lcd.tuned{animation:tuned-glow 1.5s ease-in-out infinite;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#8bc34a0d 0,#8bc34a0d 4px),repeating-linear-gradient(90deg,#8bc34a08,#8bc34a08 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#8bc34a08,#8bc34a08 1px,#0000 0,#0000 2px),linear-gradient(135deg,#c8e6c9,#a5d6a7)}@keyframes tuned-glow{0%,to{box-shadow:-1px 1px 0 #3a4555,-2px 2px 0 #384353,-3px 3px 0 #364151,-4px 4px 0 #343f4f,-5px 5px 0 #323d4d,-6px 6px 0 #303b4b,-7px 7px 0 #2e3949,-8px 8px 0 #2c3747,-9px 9px 0 #2a3545,-10px 10px 0 #283343,-11px 11px 0 #263141,-12px 12px 0 #242f3f,-13px 13px 0 #222d3d,-14px 14px 0 #202b3b,-15px 15px 0 #1a2530,-15px 15px 20px #00142866,0 10px 30px #00142880,0 0 60px #8bc34a66,inset 0 1px 3px #8bc34a33,inset 0 -2px 5px #4caf504d}50%{box-shadow:-1px 1px 0 #3a4555,-2px 2px 0 #384353,-3px 3px 0 #364151,-4px 4px 0 #343f4f,-5px 5px 0 #323d4d,-6px 6px 0 #303b4b,-7px 7px 0 #2e3949,-8px 8px 0 #2c3747,-9px 9px 0 #2a3545,-10px 10px 0 #283343,-11px 11px 0 #263141,-12px 12px 0 #242f3f,-13px 13px 0 #222d3d,-14px 14px 0 #202b3b,-15px 15px 0 #1a2530,-15px 15px 20px #00142866,0 10px 30px #00142880,0 0 80px #8bc34a99,inset 0 1px 3px #8bc34a4d,inset 0 -2px 5px #4caf5066}}.arc-container{align-items:center;display:flex;height:110px;justify-content:center;margin:8px 0;position:relative;width:100%}.arc-svg{filter:drop-shadow(0 0 3px rgba(139,195,74,.3));height:100%;width:100%}.arc-svg text{fill:#4a6a4a}.tuner-lcd.listening .arc-svg{filter:drop-shadow(0 0 5px rgba(25,118,210,.5))}.tuner-lcd.listening .arc-svg text{fill:#1976d2}.tuner-lcd.tuned .arc-svg{filter:drop-shadow(0 0 8px rgba(139,195,74,.8))}.tuner-lcd.tuned .arc-svg text{fill:#8bc34a}.needle{bottom:10px;height:95px;left:50%;pointer-events:none;position:absolute;transform-origin:bottom center;transition:transform .15s cubic-bezier(.4,0,.2,1);width:4px}.needle-line{background:linear-gradient(0deg,#8bc34a 0,#4caf50);border-radius:2px;box-shadow:0 0 8px #8bc34a99;height:100%;width:100%}.tuner-lcd.listening .needle-line{background:linear-gradient(0deg,#42a5f5 0,#1976d2);box-shadow:0 0 8px #1976d299}.tuner-lcd.tuned .needle-line{background:linear-gradient(0deg,#76ff03 0,#64dd17);box-shadow:0 0 15px #76ff03e6}.note-display-container{align-items:baseline;display:flex;gap:6px;height:50px;justify-content:center;margin:8px 0}.note-name{color:#66bb6a;font-size:56px;letter-spacing:3px;text-shadow:0 0 10px #66bb6a99,0 0 20px #4caf5066}.note-name,.note-octave{font-family:Courier New,monospace;font-weight:700}.note-octave{color:#81c784;font-size:26px;text-shadow:0 0 8px #81c78480}.note-waiting{color:#3a4a3a;font-family:Courier New,monospace;font-size:40px;font-weight:700;text-shadow:0 0 5px #3a4a3a4d}.tuner-lcd.listening .note-name{color:#1565c0;text-shadow:0 0 10px #1565c099,0 0 20px #1976d266}.tuner-lcd.listening .note-octave{color:#1976d2;text-shadow:0 0 8px #1976d280}.tuner-lcd.listening .note-waiting{color:#90caf9;text-shadow:0 0 5px #90caf980}.tuner-lcd.tuned .note-name{color:#76ff03;text-shadow:0 0 15px #76ff03e6,0 0 30px #64dd1799}.tuner-lcd.tuned .note-octave{color:#aed581;text-shadow:0 0 12px #aed581cc}.cents-display{font-family:Courier New,monospace;font-size:18px;font-weight:700;height:25px;margin:5px 0;text-align:center}.cents-display span{border-radius:4px;display:inline-block;padding:5px 15px}.cents-display .flat{color:#ff9800;text-shadow:0 0 8px #ff980099}.cents-display .sharp{color:#ff5722;text-shadow:0 0 8px #ff572299}.cents-display .perfect{color:#4caf50;text-shadow:0 0 10px #4caf50cc}.tuner-lcd.listening .cents-display .flat{color:#ff9800;text-shadow:0 0 8px #ff980099}.tuner-lcd.listening .cents-display .sharp{color:#ff5722;text-shadow:0 0 8px #ff572299}.tuner-lcd.listening .cents-display .perfect{color:#1976d2;text-shadow:0 0 10px #1976d2cc}.tuner-lcd.tuned .cents-display .perfect{color:#76ff03;text-shadow:0 0 15px #76ff03e6}.frequency-display{color:#81c784;font-size:.75em;font-weight:700;height:18px;margin:5px 0;text-align:center;text-shadow:0 0 5px #81c78466}.tuner-lcd.listening .frequency-display{color:#1976d2;text-shadow:0 0 5px #1976d266}.tuner-lcd.tuned .frequency-display{color:#aed581;text-shadow:0 0 8px #aed581b3}.tuner-status{color:#4a6a4a;font-size:.7em;font-weight:700;height:18px;letter-spacing:1px;margin:8px 0;text-align:center;text-shadow:0 0 5px #4a6a4a66;text-transform:uppercase}.tuner-lcd.listening .tuner-status{color:#1976d2;text-shadow:0 0 5px #1976d280}.tuner-lcd.tuned .tuner-status{animation:status-pulse 1s ease-in-out infinite;color:#76ff03;text-shadow:0 0 12px #76ff03e6}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.7}}.tuner-options-container{margin-top:20px;position:relative;width:100%}.tuner-options-toggle{align-items:center;background:linear-gradient(180deg,#2a2a2a 0,#1a1a1a);border:2px solid #3a3a3a;border-radius:8px;box-shadow:0 2px 5px #0000004d;color:#81c784;cursor:pointer;display:flex;font-family:Courier New,monospace;font-size:.85em;font-weight:700;justify-content:space-between;padding:12px 20px;transition:all .2s ease;width:100%}.tuner-options-toggle:hover{background:linear-gradient(180deg,#3a3a3a 0,#2a2a2a);border-color:#4a4a4a;color:#8bc34a}.dropdown-arrow{color:#66bb6a;font-size:.7em;transition:transform .2s ease}.dropdown-arrow.open{transform:rotate(180deg)}.tuner-options-dropdown{animation:dropdown-appear .2s ease;background:linear-gradient(135deg,#1a1a1a,#0f0f0f);border:2px solid #2a2a2a;border-radius:8px;box-shadow:0 4px 10px #00000080,inset 0 1px 3px #ffffff0d;margin-bottom:20px;margin-top:10px;padding:15px}@keyframes dropdown-appear{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.tuner-options-section{display:flex;flex-direction:column;gap:15px}.tuner-options-header{border-bottom:1px solid #4caf504d;color:#4caf50;font-size:.75em;letter-spacing:1.5px;margin:0 0 10px;padding-bottom:8px;text-transform:uppercase}.tuner-options-header,.tuner-power-btn-lcd{font-family:Courier New,monospace;font-weight:800}.tuner-power-btn-lcd{align-items:center;background:linear-gradient(180deg,#2a2a2a 0,#1a1a1a);border:2px solid #3a3a3a;border-radius:6px;box-shadow:0 3px 8px #0006,inset 0 1px 2px #ffffff0d;color:#4a6a4a;cursor:pointer;display:flex;font-size:.85em;gap:8px;justify-content:center;margin-top:12px;padding:10px 25px;transition:all .2s ease}.tuner-power-btn-lcd:hover{background:linear-gradient(180deg,#3a3a3a 0,#2a2a2a);border-color:#4a4a4a;color:#66bb6a}.tuner-power-btn-lcd:active{box-shadow:0 1px 4px #0006,inset 0 2px 5px #0000004d;transform:translateY(1px)}.tuner-power-btn-lcd.active{background:linear-gradient(180deg,#4caf50 0,#2e7d32);border-color:#66bb6a;box-shadow:0 3px 12px #4caf5099,inset 0 1px 2px #fff3;color:#fff}.tuner-power-btn-lcd.active:hover{background:linear-gradient(180deg,#66bb6a 0,#388e3c)}.power-icon{border:2px solid;border-radius:50%;height:18px;position:relative;width:18px}.power-icon:before{background:currentColor;content:"";height:8px;left:50%;position:absolute;top:-6px;transform:translateX(-50%);width:2px}.calibration-control{display:flex;flex-direction:column;gap:8px}.calibration-control label{color:#81c784;font-size:.7em;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.calibration-value{align-items:center;display:flex;gap:15px;justify-content:center}.calibration-value span{color:#66bb6a;font-family:Courier New,monospace;font-size:16px;font-weight:700;min-width:70px;text-align:center}.cal-btn{background:linear-gradient(180deg,#444 0,#222);border:2px solid #555;border-radius:6px;color:#fff;cursor:pointer;font-size:20px;font-weight:700;height:40px;transition:all .2s ease;width:40px}.cal-btn:hover:not(:disabled){background:linear-gradient(180deg,#555 0,#333);transform:translateY(-1px)}.cal-btn:active:not(:disabled){transform:translateY(1px)}.cal-btn:disabled{opacity:.4}.sensitivity-control{display:flex;flex-direction:column;gap:8px}.sensitivity-control label{color:#81c784;font-size:.7em;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.sensitivity-control input[type=range]{-webkit-appearance:none;background:linear-gradient(90deg,#2e7d32 0,#81c784);border-radius:3px;height:6px;outline:none;width:100%}.sensitivity-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#4caf50;border:2px solid #66bb6a;border-radius:50%;box-shadow:0 0 8px #4caf5080;cursor:pointer;height:18px;width:18px}.sensitivity-control input[type=range]::-moz-range-thumb{background:#4caf50;border:2px solid #66bb6a;border-radius:50%;box-shadow:0 0 8px #4caf5080;cursor:pointer;height:18px;width:18px}.sensitivity-control input[type=range]:disabled{opacity:.4}.sensitivity-label{color:#66bb6a;font-weight:700;text-align:center}.sensitivity-label,.tuner-info{font-family:Courier New,monospace;font-size:11px}.tuner-info{background:#0003;border-radius:6px;color:#81c784;padding:12px}.tuner-info p{margin:4px 0}@media (max-width:600px){.tuner-container,.tuner-lcd{padding:15px}.tuner-lcd{min-height:140px}.note-display-container{margin:5px 0;min-height:40px}.note-name{font-size:42px}.note-octave{font-size:18px}.note-waiting{font-size:32px}.arc-container{height:100px}.needle{height:80px}.cents-display{font-size:16px}.cents-markers-outside{font-size:.65em}.frequency-display-outside,.tuner-status-outside{font-size:.7em}}.metronome-pedal{background:linear-gradient(135deg,#9c27b026,#7b1fa240),repeating-linear-gradient(90deg,#00000008,#00000008 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#00000008,#00000008 1px,#0000 0,#0000 2px),linear-gradient(180deg,#7b1fa2,#6a1b9a 50%,#4a148c);border:3px solid #9c27b0;border-radius:12px;box-shadow:-1px 1px 0 #9d28b1,-2px 2px 0 #9c27b0,-3px 3px 0 #9b26af,-4px 4px 0 #9a25ae,-5px 5px 0 #9924ad,-6px 6px 0 #9823ac,-7px 7px 0 #9722ab,-8px 8px 0 #9621aa,0 0 20px #9c27b099,0 0 30px #9c27b066,inset 0 1px 3px #ffffff26,inset 0 -2px 8px #0003;margin:0 auto;max-width:350px;padding:12px 16px;position:relative;width:100%}.metronome-header{margin-bottom:12px;position:relative;text-align:center}.metronome-pedal .compact-title{color:#9c27b0;font-family:monospace;font-size:14px;font-weight:700;letter-spacing:2px;margin:0;text-shadow:0 0 10px #9c27b080,0 1px 2px #000c;text-transform:uppercase}.metronome-volume-knob{position:absolute;right:0;top:-8px}.metronome-center-display,.metronome-volume-knob{align-items:center;display:flex;flex-direction:column}.metronome-center-display{gap:8px;justify-content:center}.tempo-marking{color:#fff;font-size:.85em;font-style:normal;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.bpm-display-large{align-items:baseline;display:flex;gap:6px;justify-content:center}.bpm-value{color:#fff;font-family:Courier New,monospace;font-size:2.2em;text-shadow:0 2px 8px #ffffff4d,0 0 20px #9c27b099}.bpm-unit{color:#fff9;font-weight:600;letter-spacing:1px;text-transform:uppercase}.metronome-volume-control{margin-top:4px}.tempo-scale-container{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:1fr auto 1fr;height:160px;margin:12px 0;position:relative}.tempo-marks-vertical{height:100%;position:relative}.tempo-mark-item{align-items:center;display:flex;font-size:.65em;gap:6px;position:absolute;transform:translateY(50%);white-space:nowrap}.tempo-label{color:#fff;font-weight:700;letter-spacing:.5px;min-width:55px;text-transform:uppercase}.tempo-bpm{color:#9c27b0e6;font-family:Courier New,monospace;font-size:.9em;font-weight:700}.slider-track-vertical{background:linear-gradient(180deg,#ffffff26,#ffffff0d);border:2px solid #fff3;border-radius:25px;box-shadow:inset 0 2px 4px #0000004d,0 2px 8px #0003;box-sizing:border-box;height:100%;padding:18px 0;position:relative;width:50px}.vertical-range-input{-webkit-appearance:slider-vertical;cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%;writing-mode:bt-lr;z-index:3}.slider-indicator{background:linear-gradient(145deg,#ce93d8,#ab47bc);border:3px solid #fff6;box-shadow:0 4px 12px #9c27b099,inset 0 2px 4px #ffffff4d;height:36px;pointer-events:none;transform:translateX(-50%);transition:bottom .05s ease;width:36px;z-index:2}.slider-indicator,.slider-indicator:after{border-radius:50%;left:50%;position:absolute}.slider-indicator:after{background:#ffffffe6;box-shadow:0 0 8px #fff9;content:"";height:8px;top:50%;transform:translate(-50%,-50%);width:8px}.beat-indicators{background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;display:flex;gap:10px;justify-content:center;margin:12px 0;padding:12px}.beat-led{background:#ffffff1a;border:2px solid #fff3;border-radius:50%;box-shadow:inset 0 1px 2px #00000080;height:14px;transition:all .1s ease;width:14px}.beat-led.first-beat{background:#4caf5026;border-color:#4caf504d}.beat-led.active{background:radial-gradient(circle,#ce93d8,#ab47bc);border-color:#ce93d8;box-shadow:0 0 16px #ce93d8cc,inset 0 1px 2px #ffffff80;transform:scale(1.3)}.beat-led.first-beat.active{background:radial-gradient(circle,#81c784,#4caf50);border-color:#81c784;box-shadow:0 0 16px #81c784cc,inset 0 1px 2px #ffffff80}.metronome-controls{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:auto 1fr}.time-signature-selector{display:flex;flex-direction:column;gap:4px}.time-signature-selector label{color:#fff9;font-size:.7em;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.signature-dropdown{background:#0000004d;border:2px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;font-family:Courier New,monospace;font-size:.95em;font-weight:700;padding:8px 12px;transition:all .2s ease}.signature-dropdown:hover{background:#0006;border-color:#9c27b099}.signature-dropdown:focus{border-color:#9c27b0;box-shadow:0 0 0 2px #9c27b04d;outline:none}.signature-dropdown option{background:#1a1a1a;color:#fff}.metronome-button{background:linear-gradient(135deg,#4caf50,#388e3c);border:3px solid #6f6;border-radius:8px;box-shadow:-2px 2px 0 0 #0000004d,-4px 4px 0 0 #0003,-6px 6px 0 0 #0000001a,-8px 8px 12px 0 #0003,0 0 20px #4caf5099;color:#fff;cursor:pointer;font-size:.9em;font-weight:700;letter-spacing:1.5px;padding:10px 20px;position:relative;text-shadow:0 1px 2px #0000004d;text-transform:uppercase;transition:all .15s ease}.metronome-button:hover{background:linear-gradient(135deg,#66bb6a,#43a047);border-color:#8f8;box-shadow:-2px 2px 0 0 #0000004d,-4px 4px 0 0 #0003,-6px 6px 0 0 #0000001a,-8px 8px 12px 0 #0003,0 0 30px #66bb6ab3;color:#fff;text-shadow:0 1px 2px #0006;transform:translate(-1px,1px)}.metronome-button:active{box-shadow:-1px 1px 0 0 #0006,-4px 4px 8px 0 #0000004d,0 0 20px #4caf5080;transform:translate(-8px,8px)}.metronome-button.playing{background:linear-gradient(135deg,#d32f2f,#b71c1c);border-color:#ff5252;box-shadow:-2px 2px 0 0 #0000004d,-4px 4px 0 0 #0003,-6px 6px 0 0 #0000001a,-8px 8px 12px 0 #0003,0 0 20px #f4433699;color:#fff;text-shadow:0 1px 2px #0000004d}.metronome-button.playing:hover{background:linear-gradient(135deg,#e53935,#c62828);border-color:#f66;box-shadow:-2px 2px 0 0 #0000004d,-4px 4px 0 0 #0003,-6px 6px 0 0 #0000001a,-8px 8px 12px 0 #0003,0 0 30px #f44336b3;text-shadow:0 1px 2px #0006;transform:translate(-1px,1px)}.metronome-button.playing:active{box-shadow:-1px 1px 0 0 #0006,-4px 4px 8px 0 #0000004d,0 0 20px #f4433680;transform:translate(-8px,8px)}@media (max-width:480px){.bpm-value{font-size:1.8em}.tempo-scale-container{height:140px}.slider-track-vertical{width:45px}.slider-indicator{height:32px;width:32px}.tempo-mark-item{font-size:.6em}.tempo-label{min-width:50px}.metronome-pedal{max-width:320px}}.shortcuts-memo{color:#e0e0e0;margin:0 auto;max-width:600px;padding:20px}.shortcuts-intro{background:#ffffff0d;border-left:3px solid #4caf50;border-radius:8px;margin-bottom:30px;padding:15px}.shortcuts-intro p{color:#b0b0b0;line-height:1.6;margin:0}.shortcuts-category{margin-bottom:30px}.shortcuts-category-title{border-bottom:2px solid #4caf504d;color:#4caf50;font-size:18px;font-weight:600;margin-bottom:15px;padding-bottom:8px}.shortcuts-list{display:flex;flex-direction:column;gap:12px}.shortcut-item{align-items:center;background:#ffffff08;border-radius:6px;display:flex;gap:15px;padding:10px;transition:background .2s ease}.shortcut-item:hover{background:#ffffff0f}.shortcut-key{align-items:center;background:linear-gradient(180deg,#f5f5f5 0,#e0e0e0);border-color:#999 #999 #555 #555;border-radius:6px;border-style:solid;border-width:2px 2px 5px 5px;box-shadow:-2px 2px 0 0 #00000026,-4px 4px 0 0 #0000001a,-6px 6px 8px 0 #0003,inset 0 1px 0 #fffc;color:#000;display:inline-flex;flex-shrink:0;font-family:Courier New,monospace;font-size:14px;font-weight:700;justify-content:center;min-width:60px;padding:6px 12px;position:relative;text-align:center}.shortcut-description{color:#d0d0d0;flex:1 1;font-size:14px;line-height:1.5}.shortcuts-note{background:#ffc1071a;border-left:3px solid #ffc107;border-radius:8px;margin-top:30px;padding:15px}.shortcuts-note p{color:#b0b0b0;font-size:13px;line-height:1.6;margin:0}.shortcuts-note strong{color:#ffc107}@media (max-width:768px){.shortcuts-memo{padding:15px}.shortcut-item{align-items:flex-start;flex-direction:column;gap:8px}.shortcut-key{align-self:flex-start;min-width:auto}.shortcut-description{padding-left:0}}.pedals-selector{margin:0 auto;max-width:800px;padding:20px}.pedals-title{color:#fff;font-size:24px;font-weight:700;margin-bottom:8px;text-align:center}.pedals-subtitle{color:#aaa;font-size:14px;margin-bottom:30px;text-align:center}.pedals-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:30px}.pedal-card{background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border:3px solid #444;border-radius:12px;cursor:pointer;overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.pedal-card:hover{box-shadow:0 8px 24px #0000004d;transform:translateY(-4px)}.pedal-card.active{box-shadow:0 8px 32px #fff3;transform:translateY(-4px)}.pedal-indicator{border-radius:50%;height:20px;margin:0 auto 15px;transition:all .3s ease;width:20px}.pedal-name{font-family:Courier New,monospace;font-size:18px;font-weight:700;letter-spacing:1px;margin-bottom:12px;text-align:center;transition:all .3s ease}.pedal-description{color:#999;font-size:13px;line-height:1.6;margin-bottom:15px;text-align:center}.pedal-active-badge{border-radius:12px;color:#fff;font-size:10px;font-weight:700;letter-spacing:1px;padding:4px 12px;position:absolute;right:10px;top:10px}.pedals-info{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-top:30px}.info-card{background:#0000004d;border:1px solid #333;border-radius:8px;padding:20px}.info-card h5{color:#fff;font-size:14px;font-weight:700;margin-bottom:12px}.info-card ul{list-style:none;margin:0;padding:0}.info-card li{color:#aaa;font-size:12px;padding:6px 0 6px 20px;position:relative}.info-card li:before{color:#666;content:"•";font-weight:700;left:0;position:absolute}@media (max-width:768px){.pedals-grid,.pedals-info{grid-template-columns:1fr}}.debug-assets{background:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.debug-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 6px #0000001a;color:#fff;margin-bottom:20px;padding:30px}.debug-header h1{font-size:32px;margin:0 0 10px}.debug-subtitle{font-size:16px;margin:0;opacity:.9}.debug-config{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:20px}.debug-config h2{color:#333;font-size:20px;margin:0 0 15px}.config-item{align-items:flex-start;display:flex;gap:10px;margin-bottom:12px}.config-item strong{color:#555;min-width:200px}.config-item code{background:#f0f0f0;border-radius:4px;flex:1 1;font-family:Monaco,Courier New,monospace;font-size:13px;padding:4px 8px;word-break:break-all}.debug-controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.debug-controls button{border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;cursor:pointer;font-size:15px;font-weight:600;padding:12px 24px;transition:all .2s}.debug-controls button:hover:not(:disabled){box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.debug-controls button:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:#667eea;color:#fff}.btn-secondary{background:#48bb78;color:#fff}.btn-clear{background:#e2e8f0;color:#333}.debug-results{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:20px}.debug-results h2{color:#333;font-size:20px;margin:0 0 15px}.results-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.result-card{background:#f9f9f9;border-left:4px solid #ccc;border-radius:6px;padding:12px;transition:all .2s}.result-card.success{background:#f0fff4;border-left-color:#48bb78}.result-card.error{background:#fff5f5;border-left-color:#f56565}.result-name{color:#333;font-weight:600;margin-bottom:6px}.result-url{color:#666;font-family:Monaco,Courier New,monospace;font-size:11px;margin-bottom:6px;word-break:break-all}.result-details{color:#48bb78}.result-details,.result-error{font-size:13px;font-weight:500}.result-error{color:#f56565}.debug-logs{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:20px}.debug-logs h2{color:#333;font-size:20px;margin:0 0 15px}.logs-container{background:#1e1e1e;border-radius:6px;font-family:Monaco,Courier New,monospace;font-size:13px;max-height:400px;overflow-y:auto;padding:15px}.log-entry{margin-bottom:4px;padding:4px 0}.log-timestamp{color:#666;margin-right:8px}.log-info .log-message,.log-message{color:#d4d4d4}.log-success .log-message{color:#4ec9b0}.log-error .log-message{color:#f48771}.debug-tips{background:#fff3cd;border-left:4px solid #ffc107;border-radius:8px;padding:20px}.debug-tips h3{color:#856404;margin:0 0 12px}.debug-tips ul{color:#856404;margin:0;padding-left:20px}.debug-tips li{margin-bottom:8px}.debug-tips code{background:#0000001a;border-radius:3px;font-family:Monaco,Courier New,monospace;padding:2px 6px}.audio-mixer-container{background:linear-gradient(180deg,#2a2a2a,#1a1a1a);border-radius:12px;box-shadow:-1px 1px 0 #3a3a3a,-2px 2px 0 #383838,-3px 3px 0 #363636,-4px 4px 0 #343434,-5px 5px 0 #323232,-6px 6px 0 #303030,-7px 7px 0 #2e2e2e,-8px 8px 0 #2c2c2c,-9px 9px 0 #2a2a2a,-10px 10px 0 #282828,-11px 11px 0 #262626,-12px 12px 0 #242424,-13px 13px 0 #222,-14px 14px 0 #202020,-15px 15px 0 #1a1a1a,-15px 15px 20px #0006,0 10px 30px #00000080,inset 0 1px 3px #ffffff1a,inset 0 -2px 5px #0000004d;display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:20px;width:100%}.audio-mixer-header{border-bottom:2px solid #ffd7004d;margin-bottom:25px;padding-bottom:15px;text-align:center}.audio-mixer-title{color:gold;font-size:clamp(1.5rem,5vw,2rem);font-weight:700;letter-spacing:2px;margin:0;text-shadow:0 0 10px #ffd70080,0 2px 4px #000c;text-transform:uppercase}.audio-mixer-subtitle{color:#888;font-size:clamp(.75rem,2vw,.9rem);letter-spacing:1px;margin-top:5px}.audio-mixer-tracks{align-items:flex-start;display:flex;flex-wrap:nowrap;gap:15px;justify-content:space-around;overflow-x:auto;padding:10px 5px;scrollbar-color:#4caf50 #1a1a1a;scrollbar-width:thin}.audio-mixer-tracks::-webkit-scrollbar{height:8px}.audio-mixer-tracks::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.audio-mixer-tracks::-webkit-scrollbar-thumb{background:#4caf50;border-radius:4px}.audio-mixer-track{align-items:center;background:linear-gradient(180deg,#2a2a2a,#1e1e1e);border-radius:10px;box-shadow:-1px 1px 0 #333,-2px 2px 0 #313131,-3px 3px 0 #2f2f2f,-4px 4px 0 #2d2d2d,-5px 5px 0 #2b2b2b,-5px 5px 10px #0000004d,inset 0 1px 2px #ffffff0d,inset 0 -1px 3px #0003;display:flex;flex-direction:column;flex-shrink:0;gap:12px;max-width:160px;min-width:140px;padding:15px;transition:transform .2s ease}.audio-mixer-track:hover{transform:translateY(-2px)}.audio-mixer-track-master{background:linear-gradient(180deg,#3a3a2a,#2e2e1e);border:1px solid #ffd7004d}.track-header{margin-bottom:5px;width:100%}.track-label{background:#0000004d;border-radius:5px;color:#fff;font-size:clamp(.85rem,2vw,1rem);font-weight:700;padding:5px;text-align:center}.track-label-master{border-left:3px solid gold!important;color:gold}.track-effects{display:flex;flex-direction:column;gap:10px;width:100%}.effects-row{display:flex;gap:10px;justify-content:space-around}.effect-knob-wrapper,.master-meter{align-items:center;display:flex;flex-direction:column}.master-meter{background:#0000004d;border-radius:5px;gap:8px;padding:10px}.meter-label{color:#888;font-size:.75rem;letter-spacing:1px}.meter-bar{background:#1a1a1a;border-radius:4px;box-shadow:inset 0 1px 3px #00000080;height:8px;overflow:hidden;width:80px}.meter-fill{animation:meterPulse 2s ease-in-out infinite;background:linear-gradient(90deg,#4caf50,gold 70%,#f44336);border-radius:4px;height:100%;width:70%}@keyframes meterPulse{0%,to{width:60%}50%{width:75%}}.track-fader{align-items:center;padding:10px 0}.track-controls,.track-fader{display:flex;justify-content:center;width:100%}.track-controls{gap:8px}.track-btn{border:none;border-radius:5px;box-shadow:0 2px 4px #0000004d,inset 0 1px 1px #ffffff1a;cursor:pointer;font-size:.9rem;font-weight:700;height:30px;text-transform:uppercase;transition:all .2s ease;width:40px}.solo-btn{background:linear-gradient(180deg,#555,#333);color:#fff}.solo-btn:hover{background:linear-gradient(180deg,#666,#444)}.solo-btn.active{background:linear-gradient(180deg,gold,#daa520);box-shadow:0 0 10px #ffd70099,0 2px 4px #0000004d,inset 0 1px 1px #ffffff4d;color:#000}.mute-btn{background:linear-gradient(180deg,#555,#333);color:#fff}.mute-btn:hover{background:linear-gradient(180deg,#666,#444)}.mute-btn.active{background:linear-gradient(180deg,#f44336,#c62828);box-shadow:0 0 10px #f4433699,0 2px 4px #0000004d,inset 0 1px 1px #fff3;color:#fff}.track-btn:active{box-shadow:0 1px 2px #0000004d,inset 0 1px 1px #0003;transform:translateY(1px)}.track-name{border-top:1px solid #ffffff1a;color:#888;font-size:.75rem;font-weight:700;letter-spacing:1px;padding:5px;text-align:center;width:100%}.track-name-master{color:gold}@media (min-width:1400px){.audio-mixer-tracks{flex-wrap:wrap;justify-content:center}.audio-mixer-track{max-width:180px;min-width:160px}}@media (max-width:1024px){.audio-mixer-container{padding:15px}.audio-mixer-tracks{gap:12px}.audio-mixer-track{max-width:140px;min-width:120px;padding:12px}.track-fader{padding:8px 0}}@media (max-width:768px){.audio-mixer-container{border-radius:8px;padding:10px}.audio-mixer-header{margin-bottom:15px;padding-bottom:10px}.audio-mixer-tracks{-webkit-overflow-scrolling:touch;gap:10px;overflow-x:auto;padding:5px;scroll-snap-type:x proximity}.audio-mixer-track{gap:10px;max-width:130px;min-width:110px;padding:10px;scroll-snap-align:start}.track-controls{gap:6px}.track-btn{font-size:.85rem;height:28px;min-height:44px;min-width:44px;width:36px}.track-fader{padding:5px 0}}@media (max-width:430px){.audio-mixer-container{padding:8px}.audio-mixer-header{margin-bottom:12px}.audio-mixer-tracks{gap:8px}.audio-mixer-track{max-width:120px;min-width:100px;padding:8px}.effects-row{gap:8px}}@media (max-height:500px) and (orientation:landscape){.audio-mixer-container{padding:10px}.audio-mixer-header{margin-bottom:10px;padding-bottom:8px}.audio-mixer-title{font-size:1.2rem}.audio-mixer-subtitle{font-size:.7rem}.audio-mixer-track{gap:8px;padding:8px}.track-fader{padding:5px 0}}.tools-trigger{background:#0000;border:none;cursor:pointer;flex-direction:column;gap:4px;height:auto;margin-top:-25px;opacity:1;padding:0;pointer-events:all;position:fixed;right:20px;top:50%;z-index:1000}.tools-icon-wrapper,.tools-trigger{align-items:center;display:flex;transition:all .3s ease;width:50px}.tools-icon-wrapper{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#ffffff0d,#ffffff05);border:2px solid #ffffff26;border-radius:10px;box-shadow:0 4px 15px #0000001a;height:50px;justify-content:center;transform-origin:center center}.tools-trigger:hover .tools-icon-wrapper{background:linear-gradient(145deg,#ffffff26,#ffffff14);border-color:#ffffff40;box-shadow:0 6px 20px #00000026;transform:scale(1.08)}.tools-trigger.active .tools-icon-wrapper{background:linear-gradient(145deg,#fff3,#ffffff1a);border-color:#ffffff4d}.tools-icon-wrapper svg{stroke:#fff9;fill:none;height:26px;transition:all .3s ease;width:26px}.tools-trigger:hover .tools-icon-wrapper svg{stroke:#ffffffe6;fill:#ffffff1a}.tools-trigger.active .tools-icon-wrapper svg{stroke:#fff;fill:#fff3}.tools-label{color:#ffffffb3;display:block;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;transition:color .3s ease}.tools-trigger:hover .tools-label{color:#ffffffe6}.tools-panel{background:#1a1a1a;border:none;box-shadow:0 0 0 1px #ffffff1a,0 8px 24px #00000080;display:flex;flex-direction:column;overflow:hidden;position:fixed;transition:transform .5s cubic-bezier(.4,0,.2,1);z-index:999}@media (orientation:landscape){.tools-panel{bottom:0;max-width:700px;min-width:400px;right:0;top:0;transform:translateX(100%);width:50%}.tools-panel.open{transform:translateX(0)}body.tools-open .main-container{margin-right:50%;transition:all .5s cubic-bezier(.4,0,.2,1)}body.tools-open .master-controls-top-right{left:25%;right:auto;transform:translateX(-50%);transition:all .5s cubic-bezier(.4,0,.2,1)}body.tools-open .app-header{margin-right:50%;transition:all .5s cubic-bezier(.4,0,.2,1)}}@media (min-width:1025px) and (orientation:portrait){.tools-panel{bottom:0;height:45%;left:0;max-height:500px;min-height:300px;right:0;transform:translateY(100%)}.tools-panel.open{transform:translateY(0)}body.tools-open .main-container{transform:translateY(-10%) scale(.92);transition:transform .5s cubic-bezier(.4,0,.2,1)}}@media (max-width:1024px) and (orientation:portrait){.tools-panel{bottom:0!important;height:100%!important;left:0!important;max-height:none!important;min-height:100%!important;right:0!important;top:0!important;transform:translateX(100%)!important}.tools-panel.open{transform:translateX(0)!important}body.tools-open .app-header,body.tools-open .main-container{display:none}.tools-panel .tools-content{padding-bottom:calc(80px + env(safe-area-inset-bottom))}}@media (max-width:1024px) and (orientation:landscape){.tools-panel{bottom:0!important;left:0!important;max-width:none!important;min-width:100%!important;right:0!important;top:0!important;transform:translateX(100%)!important;width:100%!important}.tools-panel.open{transform:translateX(0)!important}body.tools-open .app-header,body.tools-open .main-container{display:none}.tools-panel .tools-content{padding-bottom:calc(80px + env(safe-area-inset-bottom))}}@media (max-width:430px){.tools-panel{height:45%;max-height:450px;min-height:280px}body.tools-open .main-container{transform:translateY(-10%) scale(.88)}body.tools-open .footswitch{transform:scale(.85)}body.tools-open .master-control-item{margin:0}.tools-header{padding:10px 12px}.tools-title{font-size:18px}.tools-tagline{display:none}.tools-content{padding:16px}}.tools-header{align-items:flex-start;background:linear-gradient(180deg,#1a1a1a 0,#151515);border-bottom:1px solid #ffffff14;display:flex;flex-shrink:0;justify-content:space-between;padding:24px 24px 16px}.tools-header-content{flex:1 1}.tools-title{color:#fff;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:28px;font-weight:700;margin:0 0 4px}.tools-tagline{color:#ffffff80;font-size:14px;font-weight:400;margin:0}.close-tools-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all .2s ease;width:32px}.close-tools-btn:hover{background:#fff3;border-color:#ffffff4d}.close-tools-btn svg{stroke:#fffc;transition:stroke .2s ease}.close-tools-btn:hover svg{stroke:#fff}.tools-nav{background:#151515;border-bottom:1px solid #ffffff14;gap:4px;overflow-x:auto;padding:16px 24px}.tools-nav,.tools-nav-btn{display:flex;flex-shrink:0}.tools-nav-btn{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;color:#fff9;cursor:pointer;font-size:13px;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.tools-nav-btn:hover{background:#ffffff1a;border-color:#fff3;color:#fffc}.tools-nav-btn.active{background:#ffffff26;border-color:#ffffff4d;color:#fff}.tool-icon{font-size:16px}.tool-label{font-size:12px;font-weight:600}.tools-content{background:#1a1a1a;flex:1 1;overflow-y:auto;padding:24px}.tools-section{margin:0 auto;max-width:600px}.tools-content::-webkit-scrollbar{width:8px}.tools-content::-webkit-scrollbar-track{background:#0003}.tools-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.tools-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media (max-width:768px){.tools-trigger{margin-top:-25px;right:10px;top:50%;width:45px}.tools-icon-wrapper{height:45px;width:45px}.tools-icon-wrapper svg{height:22px;width:22px}.tools-label{font-size:11px}.tools-content{padding:16px}}.tools-overlay{animation:fadeIn .3s ease;background:#00000026;bottom:0;cursor:pointer;left:0;position:fixed;right:0;top:0;z-index:998}.settings-trigger{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;flex-direction:column;gap:4px;height:auto;margin-top:70px;opacity:1;padding:0;pointer-events:all;position:fixed;right:20px;top:50%;transition:all .3s ease;width:50px;z-index:1000}body.music-assistant-open .music-assistant-trigger,body.music-assistant-open .settings-trigger,body.music-assistant-open .share-trigger,body.music-assistant-open .tools-trigger,body.settings-open .music-assistant-trigger,body.settings-open .settings-trigger,body.settings-open .share-trigger,body.settings-open .tools-trigger,body.share-open .music-assistant-trigger,body.share-open .settings-trigger,body.share-open .share-trigger,body.share-open .tools-trigger,body.tools-open .music-assistant-trigger,body.tools-open .settings-trigger,body.tools-open .share-trigger,body.tools-open .tools-trigger{opacity:0;pointer-events:none}.settings-icon-wrapper{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#ffffff0d,#ffffff05);border:2px solid #ffffff26;border-radius:10px;box-shadow:0 4px 15px #0000001a;display:flex;height:50px;justify-content:center;transform-origin:center center;transition:all .3s ease;width:50px}.settings-trigger:hover .settings-icon-wrapper{background:linear-gradient(145deg,#ffffff26,#ffffff14);border-color:#ffffff40;box-shadow:0 6px 20px #00000026;transform:scale(1.08)}.settings-trigger.active .settings-icon-wrapper{background:linear-gradient(145deg,#fff3,#ffffff1a);border-color:#ffffff4d}.settings-icon-wrapper svg{stroke:#fff9;fill:none;height:26px;transition:all .3s ease;width:26px}.settings-trigger:hover .settings-icon-wrapper svg{stroke:#ffffffe6;fill:#ffffff1a}.settings-trigger.active .settings-icon-wrapper svg{stroke:#fff;fill:#fff3}.settings-label{color:#ffffffb3;display:block;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;transition:color .3s ease}.settings-trigger:hover .settings-label{color:#ffffffe6}.settings-panel{background:#1a1a1a;border:none;box-shadow:0 0 0 1px #ffffff1a,0 8px 24px #00000080;display:flex;flex-direction:column;overflow:hidden;position:fixed;transition:transform .5s cubic-bezier(.4,0,.2,1);z-index:999}@media (orientation:landscape){.settings-panel{bottom:0;max-width:700px;min-width:400px;right:0;top:0;transform:translateX(100%);width:50%}.settings-panel.open{transform:translateX(0)}body.settings-open .main-container{margin-right:50%;transition:all .5s cubic-bezier(.4,0,.2,1)}body.settings-open .master-controls-top-right{left:25%;right:auto;transform:translateX(-50%);transition:all .5s cubic-bezier(.4,0,.2,1)}body.settings-open .app-header{margin-right:50%;transition:all .5s cubic-bezier(.4,0,.2,1)}}@media (min-width:1025px) and (orientation:portrait){.settings-panel{bottom:0;height:45%;left:0;max-height:500px;min-height:300px;right:0;transform:translateY(100%)}.settings-panel.open{transform:translateY(0)}body.settings-open .main-container{transform:translateY(-10%) scale(.92);transition:transform .5s cubic-bezier(.4,0,.2,1)}}@media (max-width:1024px) and (orientation:portrait){.settings-panel{bottom:0!important;height:100%!important;left:0!important;max-height:none!important;min-height:100%!important;right:0!important;top:0!important;transform:translateX(100%)!important}.settings-panel.open{transform:translateX(0)!important}body.settings-open .app-header,body.settings-open .main-container{display:none}.settings-panel .settings-content{padding-bottom:calc(80px + env(safe-area-inset-bottom))}}@media (max-width:1024px) and (orientation:landscape){.settings-panel{bottom:0!important;left:0!important;max-width:none!important;min-width:100%!important;right:0!important;top:0!important;transform:translateX(100%)!important;width:100%!important}.settings-panel.open{transform:translateX(0)!important}body.settings-open .app-header,body.settings-open .main-container{display:none}.settings-panel .settings-content{padding-bottom:calc(80px + env(safe-area-inset-bottom))}}@media (max-width:430px){.settings-panel{height:45%;max-height:450px;min-height:280px}body.settings-open .main-container{transform:translateY(-10%) scale(.88)}body.settings-open .footswitch{transform:scale(.85)}body.settings-open .master-control-item{margin:0}.settings-header{padding:10px 12px}.settings-title{font-size:18px}.settings-tagline{display:none}.settings-sidebar{width:140px}.settings-nav{gap:2px;padding:12px 6px}.settings-nav-btn{font-size:10px;gap:6px;padding:8px}.section-icon{font-size:13px}.section-label{font-size:10px}.settings-content{padding:16px}}.settings-header{align-items:flex-start;background:linear-gradient(180deg,#1a1a1a 0,#151515);border-bottom:1px solid #ffffff14;display:flex;flex-shrink:0;justify-content:space-between;padding:24px 24px 16px}.settings-header-content{flex:1 1}.settings-title{color:#fff;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:28px;font-weight:700;margin:0 0 4px}.settings-tagline{color:#ffffff80;font-size:14px;font-weight:400;margin:0}.close-settings-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all .2s ease;width:32px}.close-settings-btn:hover{background:#fff3;border-color:#ffffff4d}.close-settings-btn svg{stroke:#fffc;transition:stroke .2s ease}.close-settings-btn:hover svg{stroke:#fff}.settings-main-layout{background:#1a1a1a;display:flex;flex:1 1;overflow:hidden}.settings-sidebar{background:#151515;border-right:1px solid #ffffff14;flex-shrink:0;overflow-y:auto;width:220px}.settings-nav{display:flex;flex-direction:column;gap:4px;padding:16px 12px}.settings-nav-btn{align-items:center;background:#ffffff08;border:1px solid #0000;border-radius:8px;color:#fff9;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:12px;padding:12px 14px;text-align:left;transition:all .2s ease;width:100%}.settings-nav-btn:hover{background:#ffffff14;border-color:#ffffff1a;color:#fffc}.settings-nav-btn.active{background:#ffffff1f;border-color:#fff3;box-shadow:0 2px 4px #0003;color:#fff}.section-icon{align-items:center;display:flex;flex-shrink:0;font-size:16px;justify-content:center}.section-label{flex:1 1;font-size:13px;font-weight:500}.settings-content{background:#1a1a1a;flex:1 1;overflow-y:auto;padding:24px 32px}.settings-section{max-width:600px}.section-title{color:#fff;font-size:22px;margin:0 0 24px}.setting-group{margin-bottom:32px}.setting-group h4{color:#ffffffe6;font-size:16px;font-weight:600;margin:0 0 16px}.setting-item{margin-bottom:20px}.setting-item label{color:#fffc;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.setting-item input[type=range],.setting-item select{background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;color:#fff;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.setting-item input[type=range]:hover,.setting-item select:hover{background:#ffffff1f;border-color:#ffffff40}.setting-item input:disabled,.setting-item label input:disabled,.setting-item select:disabled{opacity:.4}.radio-group{background:#ffffff0d;border-radius:8px;display:flex;flex-direction:column;gap:10px;padding:12px}.radio-group label{align-items:center;color:#ffffffb3;cursor:pointer;display:flex;font-size:14px;gap:8px;margin:0}.radio-group input[type=radio]{width:auto}.setting-hint{color:#fff6;font-size:12px;font-style:italic;margin:8px 0 0}.info-box{background:#4299e11a;border:1px solid #4299e14d;border-radius:8px;color:#fffc;font-size:14px;padding:16px}.info-box p{margin:8px 0}.info-box p:first-child{margin-top:0}.info-box p:last-child{margin-bottom:0}.info-box strong{color:#fffffff2}.settings-content::-webkit-scrollbar{width:8px}.settings-content::-webkit-scrollbar-track{background:#0003}.settings-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.settings-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media (max-width:768px){.settings-trigger{margin-top:50px;right:10px;top:50%;width:45px}.settings-icon-wrapper{height:45px;width:45px}.settings-icon-wrapper svg{height:22px;width:22px}.settings-label{font-size:11px}.settings-sidebar{width:160px}.settings-nav{gap:2px;padding:12px 8px}.settings-nav-btn{font-size:11px;gap:8px;padding:8px 10px}.section-icon{font-size:14px}.section-label{font-size:11px}.settings-content{padding:16px}}.settings-overlay{animation:fadeIn .3s ease;background:#00000026;bottom:0;cursor:pointer;left:0;position:fixed;right:0;top:0;z-index:998}.setting-label-with-info{align-items:center;display:flex;gap:8px;margin-bottom:8px}.setting-label-with-info label{flex:1 1;margin-bottom:0}.info-icon{align-items:center;background:none;border:none;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:0;transition:all .2s ease}.info-icon:hover{transform:scale(1.1)}.info-icon:active{transform:scale(.95)}.info-tooltip{animation:tooltipSlideIn .2s ease;max-width:450px;min-width:300px;pointer-events:none;position:absolute;z-index:10002}@keyframes tooltipSlideIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.info-tooltip-content{background:#1a1a1a;border:1px solid #2563eb4d;border-radius:8px;box-shadow:0 8px 24px #0009,0 0 0 1px #2563eb33;padding:16px 20px}.info-tooltip-content,.info-tooltip-content p{color:#ffffffd9;font-size:13px;line-height:1.6}.info-tooltip-content p{margin:0 0 10px}.info-tooltip-content p:last-child{margin-bottom:0}.info-tooltip-content strong{color:#fffffff2;font-weight:600}.info-tooltip-content em{color:#ffffffa6;font-style:italic}.info-tooltip-content ol{color:#ffffffd9;font-size:13px;line-height:1.6;margin:8px 0;padding-left:20px}.info-tooltip-content ol li{margin-bottom:6px}.info-tooltip-content ol li:last-child{margin-bottom:0}@media (max-width:1024px){.info-tooltip{display:none!important}}.info-modal-overlay{animation:fadeIn .2s ease;background:#000000b3;bottom:0;cursor:pointer;left:0;position:fixed;right:0;top:0;z-index:10000}@media (min-width:1025px){.info-modal,.info-modal-overlay{display:none!important}}.info-modal{animation:modalSlideIn .3s cubic-bezier(.4,0,.2,1);background:#1a1a1a;border:1px solid #ffffff26;border-radius:12px;box-shadow:0 8px 32px #00000080;left:50%;max-height:80vh;max-width:500px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:10001}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.info-modal-header{align-items:center;background:linear-gradient(180deg,#1a1a1a 0,#151515);border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:20px 24px}.info-modal-header h4{color:#fff;flex:1 1;font-size:18px;font-weight:600;margin:0}.info-modal-close{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:all .2s ease;width:28px}.info-modal-close:hover{background:#fff3;border-color:#ffffff4d}.info-modal-close svg{stroke:#fffc}.info-modal-close:hover svg{stroke:#fff}.info-modal-content{background:#1a1a1a;max-height:calc(80vh - 80px);overflow-y:auto;padding:24px}.info-modal-content p{color:#fffc;font-size:14px;line-height:1.6;margin:0 0 12px}.info-modal-content p:last-child{margin-bottom:0}.info-modal-content strong{color:#fffffff2;font-weight:600}.info-modal-content em{color:#fff9;font-style:italic}.info-modal-content ol{color:#fffc;font-size:14px;line-height:1.6;margin:10px 0;padding-left:20px}.info-modal-content ol li{margin-bottom:8px}.info-modal-content ol li:last-child{margin-bottom:0}@media (max-width:768px){.info-modal{max-width:none;width:95%}.info-modal-header{padding:16px 20px}.info-modal-header h4{font-size:16px}.info-modal-content{padding:20px}.info-modal-content ol,.info-modal-content p{font-size:13px}}.info-modal-content::-webkit-scrollbar{width:6px}.info-modal-content::-webkit-scrollbar-track{background:#0003}.info-modal-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.info-modal-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.share-trigger{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;flex-direction:column;gap:4px;height:auto;margin-top:165px;opacity:1;padding:0;pointer-events:all;position:fixed;right:20px;top:50%;transition:all .3s ease;width:50px;z-index:1000}body.music-assistant-open .share-trigger,body.settings-open .share-trigger,body.share-open .music-assistant-trigger,body.share-open .settings-trigger,body.share-open .share-trigger,body.share-open .tools-trigger,body.tools-open .share-trigger{opacity:0;pointer-events:none}.share-icon-wrapper{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#ffffff0d,#ffffff05);border:2px solid #ffffff26;border-radius:10px;box-shadow:0 4px 15px #0000001a;display:flex;height:50px;justify-content:center;transform-origin:center center;transition:all .3s ease;width:50px}.share-trigger:hover .share-icon-wrapper{background:linear-gradient(145deg,#ffffff26,#ffffff14);border-color:#ffffff40;box-shadow:0 6px 20px #00000026;transform:scale(1.08)}.share-trigger.active .share-icon-wrapper{background:linear-gradient(145deg,#fff3,#ffffff1a);border-color:#ffffff4d}.share-icon-wrapper svg{stroke:#fff9;fill:none;height:26px;transition:all .3s ease;width:26px}.share-trigger:hover .share-icon-wrapper svg{stroke:#ffffffe6;fill:#ffffff1a}.share-trigger.active .share-icon-wrapper svg{stroke:#fff;fill:#fff3}.share-label{color:#ffffffb3;display:block;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;transition:color .3s ease}.share-trigger:hover .share-label{color:#ffffffe6}.share-panel{background:#1a1a1a;border:none;box-shadow:0 0 0 1px #ffffff1a,0 8px 24px #00000080;display:flex;flex-direction:column;overflow:hidden;position:fixed;transition:transform .5s cubic-bezier(.4,0,.2,1);z-index:999}@media (orientation:landscape){.share-panel{bottom:0;max-width:700px;min-width:400px;right:0;top:0;transform:translateX(100%);width:50%}.share-panel.open{transform:translateX(0)}}@media (orientation:portrait){.share-panel{bottom:0;height:45%;left:0;max-height:500px;min-height:300px;right:0;transform:translateY(100%)}.share-panel.open{transform:translateY(0)}}.share-header{align-items:flex-start;background:linear-gradient(180deg,#1a1a1a 0,#151515);border-bottom:1px solid #ffffff14;display:flex;flex-shrink:0;justify-content:space-between;padding:24px 24px 16px}.share-header-content{flex:1 1}.share-title{color:#fff;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:28px;font-weight:700;margin:0 0 4px}.share-tagline{color:#ffffff80;font-size:14px;font-weight:400;margin:0}.close-share-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all .2s ease;width:32px}.close-share-btn:hover{background:#fff3;border-color:#ffffff4d}.close-share-btn svg{stroke:#fffc;transition:stroke .2s ease}.close-share-btn:hover svg{stroke:#fff}.share-content{flex:1 1;overflow-y:auto;padding:30px}.share-section{margin-bottom:30px}.section-title{color:#ffffffe6;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:18px;font-weight:600;margin:0 0 20px}.share-options{display:flex;flex-direction:column;gap:15px}.share-option-btn{align-items:center;background:linear-gradient(145deg,#ffffff0d,#ffffff05);border:2px solid #ffffff1a;border-radius:12px;cursor:pointer;display:flex;gap:15px;padding:20px;text-align:left;transition:all .3s ease}.share-option-btn:hover{border-color:#2196f366;box-shadow:0 4px 12px #2196f333;transform:translateY(-2px)}.share-option-btn:hover,.share-option-icon{background:linear-gradient(145deg,#2196f333,#2196f31a)}.share-option-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:48px;justify-content:center;transition:all .3s ease;width:48px}.share-option-btn:hover .share-option-icon{background:linear-gradient(145deg,#2196f34d,#2196f326)}.share-option-icon svg{stroke:#2196f3;fill:none}.share-option-content{flex:1 1}.share-option-content h4{color:#fffffff2;font-size:16px;font-weight:600;margin:0 0 5px}.share-option-content p{color:#fff9;font-size:13px;line-height:1.4;margin:0}@media (max-width:768px){.share-panel{width:100%}.share-trigger{right:15px}}.share-overlay{background:#00000026;cursor:pointer;z-index:998}.jam-recorder-overlay,.share-overlay{animation:fadeIn .3s ease;bottom:0;left:0;position:fixed;right:0;top:0}.jam-recorder-overlay{align-items:center;background:#000000e6;display:flex;justify-content:center;z-index:10000}.jam-recorder-dialog{animation:slideUp .4s ease;background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border:3px solid #daa520;border-radius:20px;box-shadow:0 0 40px #daa52080,0 20px 60px #000c,inset 0 1px 3px #ffffff1a;max-width:500px;padding:40px;width:90%}.jam-recorder-title{color:#daa520;font-size:2em;font-weight:900;letter-spacing:3px;margin:0 0 20px;text-align:center;text-shadow:0 0 20px #daa520cc,0 2px 4px #000c;text-transform:uppercase}.jam-recorder-description{color:#ffffffe6;font-size:1.1em;line-height:1.6;margin:20px 0;text-align:center}.jam-recorder-option{background:#0000004d;border:2px solid #daa5204d;border-radius:12px;margin:30px 0;padding:20px}.jam-recorder-option label{align-items:center;color:#ffffffe6;cursor:pointer;display:flex;font-size:1.1em;gap:15px}.jam-recorder-option input[type=checkbox]{accent-color:#daa520;cursor:pointer;height:24px;width:24px}.jam-recorder-buttons{display:flex;gap:15px;margin-top:30px}.jam-recorder-btn{border:none;border-radius:10px;box-shadow:0 4px 15px #0000004d;cursor:pointer;flex:1 1;font-size:1.1em;font-weight:700;letter-spacing:2px;padding:15px 25px;text-transform:uppercase;transition:all .3s ease}.jam-recorder-btn:hover{box-shadow:0 6px 20px #0006;transform:translateY(-2px)}.jam-recorder-btn:active{transform:translateY(0)}.jam-recorder-btn-cancel{background:linear-gradient(135deg,#555,#333);color:#fff}.jam-recorder-btn-cancel:hover{background:linear-gradient(135deg,#666,#444)}.jam-recorder-btn-start{animation:pulse 2s infinite;background:linear-gradient(135deg,red,#c00);color:#fff}.jam-recorder-btn-start:hover{background:linear-gradient(135deg,#f33,#d00)}.jam-recorder-btn-stop{background:linear-gradient(135deg,#f55,red);color:#fff;font-size:1.2em;padding:20px 40px}.jam-recorder-btn-download{background:linear-gradient(135deg,#daa520,#b8860b);color:#000;font-weight:900}.jam-recorder-btn-download:hover{background:linear-gradient(135deg,gold,#daa520)}.jam-recorder-recording{bottom:20px;position:fixed;right:20px;z-index:9999}.jam-recorder-recording-content{animation:recordingPulse 2s infinite;background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border:3px solid red;border-radius:20px;box-shadow:0 0 30px #f009,0 10px 40px #000c;padding:20px}@keyframes recordingPulse{0%,to{border-color:red}50%{border-color:#f66}}.jam-recorder-video-preview{border:2px solid #fff3;border-radius:12px;height:240px;margin-bottom:15px;object-fit:cover;width:320px}.jam-recorder-recording-info{text-align:center}.jam-recorder-recording-indicator{align-items:center;color:#fff;display:flex;font-size:1.2em;font-weight:700;gap:10px;justify-content:center;margin-bottom:15px}.jam-recorder-red-dot{animation:blink 1s infinite;background:red;border-radius:50%;height:16px;width:16px}.jam-recorder-time{font-family:Courier New,monospace;letter-spacing:2px}.jam-recorder-branding{border-top:2px solid #daa5204d;color:#daa520;font-size:.9em;font-weight:700;letter-spacing:2px;margin-top:20px;padding-top:20px;text-align:center}@media (max-width:768px){.jam-recorder-dialog{max-width:95%;padding:30px 20px}.jam-recorder-title{font-size:1.5em}.jam-recorder-buttons{flex-direction:column}.jam-recorder-recording{bottom:10px;left:10px;right:10px}.jam-recorder-video-preview{height:auto;width:100%}}.jam-fab-button{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;flex-direction:column;gap:6px;height:auto;justify-content:center;margin-top:-220px;padding:0;position:fixed;right:20px;top:50%;transition:all .3s ease;width:56px;z-index:1000}body.music-assistant-open .jam-fab-button,body.settings-open .jam-fab-button,body.share-open .jam-fab-button,body.tools-open .jam-fab-button{opacity:0;pointer-events:none}.jam-rec-circle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#ffffff0d,#ffffff05);border:2px solid #ffffff26;border-radius:50%;display:flex;height:48px;justify-content:center;position:relative;transform-origin:center center;transition:all .3s ease;width:48px}.jam-fab-button.active .jam-rec-circle{background:linear-gradient(145deg,#ff000026,#ff000014);border-color:#ff444480;box-shadow:0 0 10px #ff00004d}.jam-fab-button.active .jam-rec-dot{animation:rec-pulse-active 1s ease-in-out infinite;background:red}.jam-fab-button.active .jam-label{color:#ff4444e6}.jam-fab-button.recording .jam-rec-circle{background:linear-gradient(145deg,#ff323266,#c800004d);border-color:#f44c;box-shadow:0 0 20px #f009,inset 0 0 15px #f006,0 4px 8px #0000004d;transform:scale(1.08)}.jam-fab-button.recording .jam-rec-dot{animation:rec-pulse-recording .8s ease-in-out infinite;background:red;box-shadow:0 0 10px #f00c}.jam-fab-button.recording .jam-label{color:#ff3232;text-shadow:0 0 8px #f009}.jam-rec-dot{animation:rec-pulse 2s ease-in-out infinite;background:#f33;border-radius:50%;height:18px;width:18px}.jam-fab-button:hover .jam-rec-circle{background:linear-gradient(145deg,#ff32324d,#c8000033);border-color:#f449;box-shadow:0 0 15px #f006,0 6px 20px #0000004d;transform:scale(1.08)}.jam-fab-button:hover .jam-rec-dot{animation:rec-pulse-fast .8s ease-in-out infinite;background:red}.jam-fab-button:hover .jam-label{color:#f44}.jam-fab-button:active .jam-rec-circle{box-shadow:0 0 10px #ff00004d,0 2px 8px #0003;transform:scale(1.05)}.jam-label{color:#ffffffb3;font-size:11px;font-weight:600;letter-spacing:.3px;text-shadow:none;text-transform:uppercase;transition:all .3s ease}.jam-fab-button:hover .jam-label{color:#ffffffe6;text-shadow:none}@keyframes rec-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.1)}}@keyframes rec-pulse-fast{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.15)}}@keyframes rec-pulse-active{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}@keyframes rec-pulse-recording{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.3)}}@media (max-width:768px){.jam-fab-button{bottom:80px;right:50%;top:auto;transform:translateX(50%);width:50px}.jam-rec-circle{height:42px;width:42px}.jam-rec-dot{height:16px;width:16px}.jam-label{font-size:10px}}@media (max-width:360px){.jam-fab-button{bottom:68px}}.midi-editor-overlay{align-items:center;background:#000000d9;display:flex;height:100vh;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100vw;z-index:10000}.midi-editor-container{background:repeating-linear-gradient(90deg,#00000008,#00000008 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#00000008,#00000008 1px,#0000 0,#0000 2px),linear-gradient(180deg,#1a1a1a,#0d0d0d);border:3px solid #2a2a2a;border-radius:12px;box-shadow:-1px 1px 0 #3a3a3a,-2px 2px 0 #383838,-3px 3px 0 #363636,-4px 4px 0 #343434,-5px 5px 0 #323232,-6px 6px 0 #303030,-7px 7px 0 #2e2e2e,-8px 8px 0 #2c2c2c,-9px 9px 0 #2a2a2a,-10px 10px 0 #282828,-11px 11px 0 #262626,-12px 12px 0 #242424,-13px 13px 0 #222,-14px 14px 0 #202020,-15px 15px 0 #1a1a1a,-15px 15px 20px #0006,0 10px 30px #00000080,inset 0 1px 3px #ffffff1a,inset 0 -2px 5px #0000004d;max-height:90vh;max-width:90vw;padding:20px;width:100%}.midi-editor-header{align-items:center;border-bottom:2px solid #ffffff1a;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.midi-editor-title{color:#daa520;font-size:1.5em;font-weight:800;letter-spacing:3px;margin:0;text-shadow:0 0 10px #daa520cc,0 1px 2px #000c,0 0 20px #ffd70066;text-transform:uppercase}.midi-editor-controls{display:flex;flex-wrap:wrap;gap:8px}.midi-editor-btn{background:#0000004d;border:2px solid #daa52080;border-radius:6px;color:#daa520;cursor:pointer;font-size:.75em;font-weight:700;letter-spacing:1px;padding:8px 14px;text-transform:uppercase;transition:all .2s ease}.midi-editor-btn:hover{background:#daa52033;border-color:#daa520;color:gold}.midi-editor-btn:active{transform:scale(.95)}.midi-editor-btn:disabled{opacity:.3}.midi-editor-btn.close-btn{background:linear-gradient(135deg,#f44336,#d32f2f);background:#0000004d;border-color:#ff5252;border-color:#daa52080;color:#fff;color:#daa520;font-size:1.2em;min-width:32px}.midi-editor-btn.close-btn:hover{background:#daa52033;border-color:#daa520;color:gold}.midi-editor-select{background:#0000004d;border:2px solid #daa52080;border-radius:6px;color:#daa520;cursor:pointer;font-size:.75em;font-weight:700;letter-spacing:1px;padding:6px 10px;text-transform:uppercase;transition:all .2s ease}.midi-editor-select:hover{background:#daa52033;border-color:#daa520}.midi-editor-slider{-webkit-appearance:none;background:#0000004d;border-radius:2px;cursor:pointer;height:4px;outline:none;width:100px}.midi-editor-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#daa520;border:2px solid gold;border-radius:50%;cursor:pointer;height:16px;width:16px}.midi-editor-slider::-moz-range-thumb{background:#daa520;border:2px solid gold;border-radius:50%;cursor:pointer;height:16px;width:16px}.midi-editor-value{color:#daa520;font-size:.75em;font-weight:700;min-width:40px;text-align:center}.midi-editor-info{background:#00000080;border:1px solid #daa5204d;border-radius:6px;color:#ffffffb3;font-size:.85em;margin-bottom:10px;padding:8px 12px;text-align:center}.midi-editor-main-area{display:flex;flex-direction:row;gap:0}.midi-editor-note-list{background:#00000080;border-radius:8px 0 0 8px;box-shadow:inset 0 2px 8px #0006;flex-shrink:0;height:400px;overflow:hidden;width:60px}.midi-editor-note-label{border-bottom:1px solid #ffffff0d;color:#ffffff80;font-size:10px;font-weight:700;text-align:center;-webkit-user-select:none;user-select:none}.midi-editor-note-label.note-c{background:#daa5201a;color:#daa520;font-weight:900}.midi-editor-canvas-wrapper{background:#0000;border-radius:0 8px 8px 0;box-shadow:none;flex:1 1;overflow-x:auto;overflow-y:hidden;padding:0}.midi-editor-canvas{border:none;border-radius:0;cursor:crosshair;display:block}.midi-editor-footer{color:#ffffff80;font-size:.75em;font-style:italic;margin-top:10px;padding:8px;text-align:center}@media (max-width:768px){.midi-editor-container{max-width:100%;padding:15px}.midi-editor-header{flex-direction:column;gap:10px}.midi-editor-controls{justify-content:center;width:100%}.midi-editor-canvas{width:800px}}.midi-bank-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.midi-bank-dialog{animation:slideUp .3s ease-out;background:linear-gradient(145deg,#1a1a1a,#2d2d2d);border:2px solid #daa520;border-radius:12px;box-shadow:0 8px 32px #daa5204d;display:flex;flex-direction:column;max-height:80vh;max-width:700px;padding:20px;width:90%}.midi-bank-header{align-items:center;border-bottom:2px solid #daa5204d;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:15px}.midi-bank-title{color:#daa520;font-size:1.5em;font-weight:700;letter-spacing:1px;margin:0;text-transform:uppercase}.midi-bank-info{background:#daa5201a;border:1px solid #daa5204d;border-radius:8px;margin-bottom:15px;padding:12px}.midi-bank-filters{border-bottom:1px solid #daa52033;display:flex;flex-direction:column;gap:8px;margin-bottom:15px;padding-bottom:15px}.midi-bank-list{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding-right:8px}.midi-bank-list::-webkit-scrollbar{width:8px}.midi-bank-list::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.midi-bank-list::-webkit-scrollbar-thumb{background:#daa520;border-radius:4px}.midi-bank-list::-webkit-scrollbar-thumb:hover{background:#f0c040}.midi-bank-item{background:#0006;border:2px solid #daa5204d;border-radius:8px;cursor:pointer;padding:15px;transition:all .2s}.midi-bank-item.preview,.midi-bank-item:hover{background:#daa5200d;border-color:#daa520;transform:translateX(4px)}.midi-bank-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.midi-bank-item-title{color:#fff;font-size:1.1em;font-weight:700;margin:0}.midi-bank-item-style{background:#daa520;border-radius:12px;color:#000;font-size:.75em;font-weight:700;padding:3px 10px;text-transform:uppercase}.midi-bank-item-description{color:#ffffffb3;font-size:.9em;line-height:1.4;margin:0 0 10px}.midi-bank-item-meta{color:#fff9;display:flex;font-size:.85em;gap:15px;margin-bottom:10px}.midi-bank-item-transforms{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.transform-badge{background:#4caf5033;border:1px solid #4caf5066;border-radius:6px;color:#4caf50;font-size:.75em;font-weight:700;padding:4px 10px}.midi-bank-item-load{background:#daa520;border:2px solid #daa520;border-radius:6px;color:#000;cursor:pointer;font-size:.95em;font-weight:700;letter-spacing:.5px;padding:10px;text-transform:uppercase;transition:all .2s;width:100%}.midi-bank-item-load:hover{background:#f0c040;border-color:#f0c040;box-shadow:0 4px 12px #daa52066;transform:scale(1.02)}.midi-bank-item-load:active{transform:scale(.98)}@media (max-width:768px){.midi-bank-dialog{max-height:90vh;padding:15px;width:95%}.midi-bank-title{font-size:1.2em}.midi-bank-item{padding:12px}.midi-bank-item-title{font-size:1em}.midi-bank-item-meta{flex-direction:column;gap:5px}}.keyboard-compact{background:linear-gradient(135deg,#2196f326,#1565c040);border:3px solid #2196f3;border-radius:8px;box-shadow:-1px 1px 0 #2297f4,-2px 2px 0 #2196f3,-3px 3px 0 #2095f2,-4px 4px 0 #1f94f1,-5px 5px 0 #1e93f0,-6px 6px 0 #1d92ef,0 0 20px #2196f380,0 0 30px #2196f34d,inset 0 1px 3px #ffffff26,inset 0 -2px 8px #0003;cursor:pointer;margin-bottom:20px;padding:12px 20px;text-align:center;transition:all .3s ease;width:100%}.keyboard-compact:hover{background:linear-gradient(135deg,#2196f340,#1565c059);border-color:#42a5f5;box-shadow:-1px 1px 0 #2297f4,-2px 2px 0 #2196f3,-3px 3px 0 #2095f2,-4px 4px 0 #1f94f1,-5px 5px 0 #1e93f0,-6px 6px 0 #1d92ef,0 0 25px #2196f3b3,0 0 40px #2196f380,inset 0 1px 3px #ffffff26,inset 0 -2px 8px #0003}.keyboard-compact-title{color:#2196f3;font-size:1.5em;font-weight:800;letter-spacing:3px;text-shadow:0 0 10px #2196f3cc,0 1px 2px #000c;text-transform:uppercase}.keyboard-compact-subtitle{color:#fff9;font-size:.8em;letter-spacing:1px;margin-top:4px}.keyboard-expanded{background:repeating-linear-gradient(90deg,#00000008,#00000008 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#00000008,#00000008 1px,#0000 0,#0000 2px),linear-gradient(180deg,#1a1a1a,#0d0d0d);border:3px solid #2a2a2a;border-radius:12px;box-shadow:-1px 1px 0 #3a3a3a,-2px 2px 0 #383838,-3px 3px 0 #363636,-4px 4px 0 #343434,-5px 5px 0 #323232,-6px 6px 0 #303030,-7px 7px 0 #2e2e2e,-8px 8px 0 #2c2c2c,-9px 9px 0 #2a2a2a,-10px 10px 0 #282828,-11px 11px 0 #262626,-12px 12px 0 #242424,-13px 13px 0 #222,-14px 14px 0 #202020,-15px 15px 0 #1a1a1a,-15px 15px 20px #0006,0 10px 30px #00000080,inset 0 1px 3px #ffffff1a,inset 0 -2px 5px #0000004d;margin-bottom:20px;padding:20px;width:100%}.keyboard-header{border-bottom:2px solid #ffffff1a;margin-bottom:15px;padding-bottom:10px}.keyboard-title{color:#daa520;text-shadow:0 0 10px #daa520cc,0 1px 2px #000c,0 0 20px #ffd70066}.keyboard-controls{display:flex;flex-wrap:wrap;gap:8px}.keyboard-close,.keyboard-toggle{background:#0000004d;border:2px solid #fff3;border-radius:6px;color:#ffffffb3;cursor:pointer;font-size:.75em;font-weight:700;letter-spacing:1px;padding:8px 14px;text-transform:uppercase;transition:all .2s ease}.keyboard-close:hover,.keyboard-toggle:hover{background:#0006;border-color:#daa52099;color:#daa520}.keyboard-toggle.active{background:linear-gradient(135deg,#daa520,#b8860b);border-color:gold;box-shadow:0 0 10px #daa52080;color:#000}.keyboard-close{background:linear-gradient(135deg,#f44336,#d32f2f);border-color:#ff5252;color:#fff}.keyboard-close:hover{background:linear-gradient(135deg,#e53935,#c62828);border-color:#f66}.keyboard-current-chord{background:#00000080;border:2px solid #daa5204d;border-radius:8px;color:#daa520;font-size:1.8em;font-weight:800;letter-spacing:2px;margin-bottom:15px;padding:10px;text-align:center;text-shadow:0 0 15px #daa520cc}.piano-container{background:#0003;border-radius:8px;box-shadow:inset 0 2px 8px #0006;height:280px;padding:10px;position:relative;width:100%}.piano-keys{height:100%;width:100%}.piano-key.white,.piano-keys{display:flex;position:relative}.piano-key.white{align-items:center;background:linear-gradient(180deg,#fff,#f5f5f5);border:2px solid #333;border-radius:0 0 6px 6px;box-shadow:inset 0 -3px 6px #0000001a,0 2px 4px #0003;cursor:pointer;flex:1 1;flex-direction:column;justify-content:flex-end;padding-bottom:10px;transition:all .05s ease}.piano-key.white:hover{background:linear-gradient(180deg,#f0f0f0,#e5e5e5)}.piano-key.white.active{background:linear-gradient(180deg,#90caf9,#64b5f6);box-shadow:inset 0 2px 4px #0000004d,0 1px 2px #0003;transform:translateY(2px)}.piano-key.black{align-items:center;background:linear-gradient(180deg,#2a2a2a,#1a1a1a);border:2px solid #000;border-radius:0 0 4px 4px;box-shadow:inset 0 -2px 4px #00000080,0 3px 6px #0006,-1px 1px 0 #2b2b2b,-2px 2px 0 #2a2a2a;cursor:pointer;display:flex;flex-direction:column;height:60%;justify-content:flex-end;padding-bottom:8px;position:absolute;transition:all .05s ease;width:3.5%;z-index:2}.piano-key.black:hover{background:linear-gradient(180deg,#3a3a3a,#2a2a2a)}.piano-key.black.active{background:linear-gradient(180deg,#42a5f5,#2196f3);box-shadow:inset 0 2px 4px #00000080,0 1px 3px #0006;transform:translateY(2px)}.piano-key .note-label{display:none}.key-label{background:#0000;border:none;border-radius:0;bottom:15px;color:#0000004d;font-size:.65em;font-weight:400;left:50%;opacity:.5;padding:0;position:absolute;transform:translateX(-50%);-webkit-user-select:none;user-select:none}.piano-key.black .key-label{background:#0000;border:none;bottom:10px;color:#fff6}@media (max-width:768px){.keyboard-header{flex-direction:column;gap:10px}.keyboard-controls{justify-content:center;width:100%}.piano-container{height:150px}.piano-key.black{width:2.3%}.key-label{font-size:.6em;min-height:20px;min-width:20px;padding:3px}.piano-key .note-label{font-size:.55em}}@keyframes blink-rec{0%,to{opacity:1}50%{opacity:.3}}.piano-key.white.scale-non-penta:after,.piano-key.white.scale-penta:after{background:#000;border-radius:50%;bottom:8px;box-shadow:0 1px 2px #0000004d;content:"";height:11px;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);width:11px;z-index:10}.piano-key.white.scale-penta:after{background:#10b981;box-shadow:0 1px 2px #10b9814d}.piano-key.white.scale-non-penta:after{background:#888;border:1px solid #666;box-shadow:0 1px 2px #0000004d;height:11px;width:11px}.piano-key.black.scale-non-penta:after,.piano-key.black.scale-penta:after{background:#fff;border:1px solid #000;border-radius:50%;bottom:10px;box-shadow:0 1px 2px #fff6;content:"";height:9px;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);width:9px;z-index:10}.piano-key.black.scale-penta:after{background:#10b981;border:1px solid #fff;box-shadow:0 1px 2px #10b98199}.piano-key.black.scale-non-penta:after{background:#888;border:1px solid #aaa;box-shadow:0 1px 2px #ffffff4d;height:9px;width:9px}.keyboard-compact-container{background:repeating-linear-gradient(90deg,#00000008,#00000008 1px,#0000 0,#0000 2px),repeating-linear-gradient(0deg,#00000008,#00000008 1px,#0000 0,#0000 2px),linear-gradient(180deg,#1a1a1a,#0d0d0d);border:3px solid #2a2a2a;box-shadow:-1px 1px 0 #3a3a3a,-2px 2px 0 #383838,-3px 3px 0 #363636,-4px 4px 0 #343434,-5px 5px 0 #323232,-6px 6px 0 #303030,-7px 7px 0 #2e2e2e,-8px 8px 0 #2c2c2c,-9px 9px 0 #2a2a2a,-10px 10px 0 #282828,-11px 11px 0 #262626,-12px 12px 0 #242424,-13px 13px 0 #222,-14px 14px 0 #202020,-15px 15px 0 #1a1a1a,-15px 15px 20px #0006,0 10px 30px #00000080,inset 0 1px 3px #ffffff1a,inset 0 -2px 5px #0000004d;margin-bottom:15px}.keyboard-compact-container:hover{box-shadow:-1px 1px 0 #3c3c3c,-2px 2px 0 #3a3a3a,-3px 3px 0 #383838,-4px 4px 0 #363636,-5px 5px 0 #343434,-6px 6px 0 #323232,-7px 7px 0 #303030,-8px 8px 0 #2e2e2e,-9px 9px 0 #2c2c2c,-10px 10px 0 #2a2a2a,-11px 11px 0 #282828,-12px 12px 0 #262626,-13px 13px 0 #242424,-14px 14px 0 #222,-15px 15px 0 #202020,-16px 16px 0 #1a1a1a,-16px 16px 25px #00000073,0 15px 40px #00000059,inset 0 2px 3px #ffffff26,inset 0 -2px 5px #0006}.keyboard-compact-header{align-items:center;display:flex;height:14px;justify-content:space-between;margin-bottom:4px}.keyboard-compact-label{color:#daa520;font-size:.65em;font-weight:800;letter-spacing:1.5px;text-shadow:0 0 8px #daa52099,0 1px 1px #000c;text-transform:uppercase}.keyboard-compact-chord{color:gold;font-size:.7em;font-weight:700;text-shadow:0 0 10px #ffd700cc,0 1px 1px #000c}.keyboard-compact-key.white{align-items:flex-end;background:linear-gradient(180deg,#fff,#f5f5f5);border:1px solid #222;border-radius:0 0 3px 3px;box-shadow:inset 0 -2px 3px #0000001a,0 1px 2px #0003;cursor:pointer;display:flex;flex:1 1;justify-content:center;padding-bottom:3px;position:relative;transition:all .05s ease}.keyboard-compact-key.white:hover{background:linear-gradient(180deg,#f0f0f0,#e5e5e5)}.keyboard-compact-key.white.active{background:linear-gradient(180deg,#90caf9,#64b5f6);box-shadow:inset 0 1px 2px #0000004d,0 .5px 1px #0003;transform:translateY(1px)}.keyboard-compact-key.black{align-items:flex-end;background:linear-gradient(180deg,#2a2a2a,#1a1a1a);border:1px solid #000;border-radius:0 0 3px 3px;box-shadow:inset 0 -1px 2px #00000080,0 2px 4px #0006,-.5px .5px 0 #2b2b2b,-1px 1px 0 #2a2a2a;cursor:pointer;display:flex;height:60%;justify-content:center;padding-bottom:3px;position:absolute;transition:all .05s ease;width:3.5%;z-index:2}.keyboard-compact-key.black:hover{background:linear-gradient(180deg,#3a3a3a,#2a2a2a)}.keyboard-compact-key.black.active{background:linear-gradient(180deg,#42a5f5,#2196f3);box-shadow:inset 0 1px 2px #00000080,0 .5px 1.5px #0006;transform:translateY(1px)}@media (max-width:768px){.keyboard-compact-container{height:auto;max-width:500px;min-height:50px;padding:12px 16px;width:calc(100vw - 40px)}.keyboard-compact-keys{display:none}.keyboard-compact-header{justify-content:center;margin-bottom:0}.keyboard-compact-label{font-size:.9em}.keyboard-compact-chord{display:none}.keyboard-compact-key.black{width:4%}}.midi-controls-compact{align-items:center;cursor:default;display:flex;gap:4px}.midi-controls-compact button{transition:transform .1s ease,opacity .2s ease}.midi-controls-compact button:hover{opacity:.9;transform:scale(1.1)}.midi-controls-compact button:active{transform:scale(.95)}.keyboard-compact-key.white.scale-non-penta:after,.keyboard-compact-key.white.scale-penta:after{background:#000;border-radius:50%;bottom:5px;box-shadow:0 1px 2px #0000004d;content:"";height:8px;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);width:8px;z-index:10}.keyboard-compact-key.white.scale-penta:after{background:#10b981;box-shadow:0 1px 2px #10b9814d}.keyboard-compact-key.white.scale-non-penta:after{background:#888;border:1px solid #666;box-shadow:0 1px 2px #0000004d;height:8px;width:8px}.keyboard-compact-key.black.scale-non-penta:after,.keyboard-compact-key.black.scale-penta:after{background:#fff;border:1px solid #000;border-radius:50%;bottom:8px;box-shadow:0 1px 2px #fff6;content:"";height:7px;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);width:7px;z-index:10}.keyboard-compact-key.black.scale-penta:after{background:#10b981;border:1px solid #fff;box-shadow:0 1px 2px #10b98199}.keyboard-compact-key.black.scale-non-penta:after{background:#888;border:1px solid #aaa;box-shadow:0 1px 2px #ffffff4d;height:7px;width:7px}.privacy-notice-overlay{animation:fadeIn .3s ease-out;bottom:20px;left:20px;position:fixed;z-index:10000}.privacy-notice{animation:slideUp .4s ease-out;background:linear-gradient(135deg,#1e3a5f,#0f1e2e);border:2px solid #4a90e2;border-radius:12px;box-shadow:0 8px 32px #00000080,0 0 20px #4a90e24d;max-width:380px;padding:20px;width:380px}.privacy-notice h3{color:#fff;font-size:18px;font-weight:600;margin:0 0 15px;text-align:center}.privacy-content{color:#e0e0e0;font-size:13px;line-height:1.5}.privacy-content p{margin:0 0 15px}.privacy-details{background:#ffffff0d;border:1px solid #4a90e24d;border-radius:8px;margin:15px 0;padding:15px}.privacy-item{align-items:center;color:#fff;display:flex;font-size:12px;margin:8px 0}.privacy-icon{align-items:center;background:#4caf50;border-radius:50%;display:inline-flex;flex-shrink:0;font-size:11px;font-weight:700;height:18px;justify-content:center;margin-right:10px;width:18px}.privacy-tech-info{background:#0000004d;border-left:3px solid #4a90e2;border-radius:4px;color:#b0b0b0;font-size:11px;margin:15px 0 0;padding:12px}.privacy-tech-info strong{color:#4a90e2}.privacy-tech-info em{color:#81c784;font-style:normal;font-weight:600}.privacy-dismiss-btn{background:linear-gradient(135deg,#4a90e2,#357abd);border:none;border-radius:8px;box-shadow:0 4px 12px #4a90e266;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:15px;padding:12px 20px;transition:all .2s ease;width:100%}.privacy-dismiss-btn:hover{background:linear-gradient(135deg,#357abd,#2868a8);box-shadow:0 6px 16px #4a90e299;transform:translateY(-2px)}.privacy-dismiss-btn:active{box-shadow:0 2px 8px #4a90e266;transform:translateY(0)}@media (max-width:768px){.privacy-notice-overlay{bottom:10px;left:10px}.privacy-notice{max-width:320px;padding:15px;width:320px}.privacy-notice h3{font-size:16px}.privacy-content{font-size:12px}.privacy-item{font-size:11px}}.feedback-alert-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.feedback-alert{animation:slideIn .3s ease-out;background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border:2px solid #ff5722;border-radius:12px;box-shadow:0 10px 40px #ff57224d,0 0 20px #ff572233;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.feedback-alert-header{align-items:center;background:linear-gradient(135deg,#ff5722,#f44336);border-radius:10px 10px 0 0;display:flex;gap:15px;padding:20px}.feedback-alert-icon{animation:pulse 2s ease-in-out infinite;font-size:40px}.feedback-alert-header h2{color:#fff;font-family:Courier New,monospace;font-size:24px;margin:0;text-shadow:0 2px 4px #0000004d}.feedback-alert-content{color:#e0e0e0;padding:25px}.feedback-alert-main{background:#ff57221a;border:1px solid #ff57224d;border-radius:8px;color:#ff5722;font-size:18px;font-weight:700;margin:0 0 20px;padding:15px;text-align:center}.feedback-alert-explanation,.feedback-alert-solutions{margin-bottom:20px}.feedback-alert-explanation h3,.feedback-alert-solutions h3{color:#ffa726;font-family:Courier New,monospace;font-size:16px;letter-spacing:1px;margin:0 0 10px;text-transform:uppercase}.feedback-alert-explanation p{line-height:1.6;margin:0 0 10px}.feedback-alert-explanation strong{color:#ff5722}.feedback-alert-explanation ol{margin:10px 0;padding-left:25px}.feedback-alert-explanation li{line-height:1.5;margin:8px 0}.feedback-alert-solutions ul{list-style:none;margin:0;padding:0}.feedback-alert-solutions li{background:#ffffff0d;border-left:3px solid #4caf50;border-radius:6px;margin:8px 0;padding:12px;transition:all .2s ease}.feedback-alert-solutions li:hover{background:#ffffff14;border-left-color:#66bb6a}.feedback-alert-solutions strong{color:#66bb6a;display:block;margin-bottom:4px}.feedback-alert-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.feedback-alert-btn{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-family:Courier New,monospace;font-size:14px;font-weight:700;letter-spacing:.5px;min-width:180px;padding:12px 20px;text-transform:uppercase;transition:all .2s ease}.feedback-alert-btn-primary{background:linear-gradient(135deg,#ff5722,#f44336);box-shadow:0 2px 8px #ff572266;color:#fff}.feedback-alert-btn-primary:hover{box-shadow:0 4px 12px #ff572299;transform:translateY(-2px)}.feedback-alert-btn-secondary{background:#424242;border:1px solid #666;color:#e0e0e0}.feedback-alert-btn-secondary:hover{background:#4a4a4a;border-color:#888}@media (max-width:600px){.feedback-alert{max-height:95vh;width:95%}.feedback-alert-header h2{font-size:20px}.feedback-alert-content{padding:20px}.feedback-alert-actions{flex-direction:column}.feedback-alert-btn{min-width:100%}}.mobile-landscape-layout{display:flex;flex-direction:column;gap:10px;height:100%;padding:8px;width:100%}.landscape-keyboard{flex:0 0 auto;width:100%}.landscape-pedals{grid-gap:12px;display:grid;flex:1 1;gap:12px;grid-template-columns:1fr 1fr;min-height:0}.landscape-pedal{align-items:center;display:flex;justify-content:center;width:100%}.landscape-pedal>*{max-height:100%;width:100%}@media (max-height:500px){.mobile-landscape-layout{gap:6px;padding:4px}.landscape-pedals{gap:8px}}@media (orientation:landscape) and (min-width:768px) and (max-width:1024px){.landscape-pedals{gap:15px}}:root{--color-black:#000;--color-black-bg:#0a0a0a;--color-dark:#1a1a1a;--color-dark-alt:#222;--color-gray-dark:#2a2a2a;--color-gray:#333;--color-gray-medium:#666;--color-gray-light:#aaa;--color-silver:silver;--color-white:#fff;--color-green:#4caf50;--color-green-dark:#388e3c;--color-green-bright:#66bb6a;--color-orange:#ff6b00;--color-orange-bright:#ff8533;--color-red:#d32f2f;--color-red-bright:#f44336;--color-blue:#1976d2;--color-blue-dark:#1565c0;--color-cyan:#00bcd4;--color-cyan-bright:#00e5ff;--color-gold:gold;--color-gold-dark:#daa520;--color-success:var(--color-green);--color-danger:var(--color-red);--color-warning:var(--color-orange);--color-info:var(--color-blue);--overlay-black-10:#0000001a;--overlay-black-20:#0003;--overlay-black-30:#0000004d;--overlay-black-40:#0006;--overlay-black-50:#00000080;--overlay-black-60:#0009;--overlay-black-70:#000000b3;--overlay-black-80:#000c;--overlay-white-10:#ffffff1a;--overlay-white-20:#fff3;--overlay-white-30:#ffffff4d;--overlay-white-50:#ffffff80;--gradient-dark:linear-gradient(180deg,#2a2a2a,#1a1a1a);--gradient-dark-diagonal:linear-gradient(135deg,#2a2a2a,#1a1a1a);--gradient-green:linear-gradient(180deg,#4caf50,#388e3c);--gradient-red:linear-gradient(180deg,#f44336,#d32f2f);--gradient-orange:linear-gradient(180deg,#ff8533,#ff6b00);--shadow-3d-large:0 4px 0 var(--overlay-black-40);--shadow-3d-small:0 2px 0 var(--overlay-black-40);--shadow-3d-tiny:0 1px 0 var(--overlay-black-40);--shadow-pressed-large:0 2px 0 var(--overlay-black-40);--shadow-pressed-small:0 1px 0 var(--overlay-black-40);--shadow-drop-sm:0 2px 4px var(--overlay-black-30);--shadow-drop-md:0 4px 8px var(--overlay-black-30);--shadow-drop-lg:0 8px 16px var(--overlay-black-40);--shadow-drop-xl:0 10px 30px var(--overlay-black-30);--glow-green:0 0 20px #4caf5099;--glow-green-bright:0 0 30px #4caf50cc;--glow-red:0 0 20px #f4433699;--glow-orange:0 0 20px #ff6b0099;--glow-cyan:0 0 20px #00bcd499;--glow-silver:0 0 10px #c0c0c080;--shadow-inset-light:inset 0 1px 0 var(--overlay-white-10);--shadow-inset-dark:inset 0 -2px 8px var(--overlay-black-20);--shadow-inset-deep:inset 0 2px 8px var(--overlay-black-50);--shadow-pedal-3d:-15px 15px 0px var(--overlay-black-30),-15px 15px 20px var(--overlay-black-40),0 10px 30px var(--overlay-black-30),var(--shadow-inset-light),var(--shadow-inset-dark);--text-shadow-glow:0 0 10px var(--overlay-white-50);--text-shadow-strong:0 2px 4px var(--overlay-black-50);--space-xs:5px;--space-sm:8px;--space-md:10px;--space-lg:15px;--space-xl:20px;--space-2xl:30px;--space-3xl:40px;--space-4xl:60px;--space-5xl:80px;--gap-xs:5px;--gap-sm:8px;--gap-md:12px;--gap-lg:15px;--gap-xl:20px;--gap-2xl:60px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:15px;--radius-full:50%;--border-thin:1px;--border-medium:2px;--border-thick:3px;--border-heavy:4px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--color-black-bg);color:var(--color-white);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}.App{justify-content:space-between;min-height:100vh;padding:var(--space-xl)}.App,.app-header{display:flex;flex-direction:column}.app-header{align-items:center;flex-shrink:0;gap:0;margin-bottom:var(--space-xs);text-align:center}.app-header h1{align-items:center;color:var(--color-white);display:flex;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-size:2em;font-weight:700;gap:12px;letter-spacing:1px;margin:0;text-transform:none}.app-logo{filter:drop-shadow(0 2px 4px var(--overlay-black-30));height:40px;width:40px}.title-styled{align-items:baseline;display:inline-flex}.letter-large{font-size:.8em}.letter-large,.letter-small{font-weight:800;letter-spacing:.5px}.letter-small{font-size:.76em}.app-tagline{color:var(--color-silver);font-family:Dancing Script,cursive;font-size:1.4em;font-style:italic;font-weight:500;margin:0;text-shadow:var(--glow-silver)}.header{background:var(--color-black);border-bottom:var(--border-thin) solid var(--color-dark-alt);margin-bottom:var(--space-3xl);padding:var(--space-2xl) var(--space-xl);text-align:center}.header h1{color:var(--color-white);font-size:2em;font-weight:800;letter-spacing:3px;margin:0;text-transform:uppercase}.pedals-wrapper{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:0;padding-bottom:var(--space-5xl);padding-top:var(--space-xl)}.main-container{grid-gap:var(--space-4xl);grid-column-gap:var(--space-4xl);grid-row-gap:var(--gap-lg);column-gap:var(--space-4xl);display:grid;gap:var(--space-4xl);grid-template-columns:280px 280px;grid-template-rows:auto auto;justify-content:center;margin:0 auto;max-width:900px;padding:0 var(--space-md);position:relative;row-gap:var(--gap-lg)}.main-container>.rhythm-box-section{grid-column:1;grid-row:2}.main-container>.looper-section{grid-column:2;grid-row:2}@media (max-width:1400px){.main-container{gap:20px;grid-template-columns:1fr}}@media (min-width:820px) and (max-width:1024px){.keyboard-compact-container{grid-column:1/3;max-width:100%;width:100%}.main-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;padding:20px}.pedals-container{grid-gap:20px;display:grid;gap:20px;grid-column:1/3;grid-template-columns:1fr 1fr}.pedal-unit{justify-self:center;max-width:400px;width:100%}.mobile-studio-carousel{display:none!important}}@media (min-width:768px) and (max-width:819px){.mobile-studio-carousel{display:none!important}.main-container{display:flex;flex-direction:column;gap:15px;padding:15px}.keyboard-compact-container{margin:0;max-width:100%;order:1;width:100%}.pedals-container{grid-gap:15px;display:grid!important;gap:15px;grid-template-columns:1fr 1fr;max-width:100%;order:2;padding:0}.pedal-unit{max-width:100%;width:100%}.pedal-section.compact{max-height:380px;min-height:280px}}@media (max-width:768px){.header{flex-direction:column;gap:10px}.bpm-display{font-size:2em}.controls-row{align-items:stretch;flex-direction:column}.step-button{width:30px}.pedal-section{width:220px}.pedal-section.compact{height:380px}.main-container{column-gap:40px;gap:40px;grid-template-columns:220px 220px;row-gap:15px}.pedals-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto;overflow-y:hidden;padding:10px 0;scroll-snap-type:x mandatory;width:100vw}.main-container{display:flex;flex-direction:row;gap:20px;justify-content:flex-start;padding:0 20px;width:-webkit-max-content;width:max-content}.main-container>*{flex-shrink:0;scroll-snap-align:center}.keyboard-compact-container{height:140px;max-width:500px;width:calc(100vw - 40px)}.keyboard-compact-keys{height:100px}.pedal-section.compact{height:320px;max-width:350px;width:calc(100vw - 40px)}.fullscreen-overlay{display:none!important}.compact-pedal-content{pointer-events:none}.footswitch,.looper-action-btn{pointer-events:auto}.App,.keyboard-compact-container,.keyboard-expanded,.main-container,.pedal-section,.pedals-wrapper{max-width:100vw;overflow-x:hidden}.keyboard-compact-container{margin:0;max-width:100vw!important;padding:8px;width:100%!important}.keyboard-compact-keys{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.piano-key{min-width:30px}.mixer-container{padding:12px}.mixer-channels{display:flex;flex-direction:column;gap:16px}.mixer-channel{align-items:center;background:#ffffff05;border-radius:8px;display:flex;flex-direction:row;gap:12px;padding:12px}.mixer-channel-name{font-size:14px;font-weight:600;min-width:80px}.mixer-fader-container{flex:1 1}.mixer-controls{display:flex;gap:8px}.mixer-btn{min-height:44px;min-width:44px}img,svg,video{height:auto;max-width:100%}div,h1,h2,h3,h4,h5,h6,p,span{word-wrap:break-word;overflow-wrap:break-word}.footswitch,.piano-key,.step-button,button{min-height:44px;min-width:44px}.App{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}.controls-panel,.keyboard-header,.pedal-header{flex-wrap:wrap}.pedal-title{font-size:clamp(.9rem,3vw,1.2rem)}.keyboard-title{font-size:clamp(1rem,4vw,1.5rem)}.master-controls-top-right{display:none}.pedals-container{gap:15px;padding:5px}.pedal-unit{padding:12px}.pedal-label{font-size:12px;letter-spacing:1px}.pedal-status{font-size:10px}.expanded-pedal-container{padding:10px}.pedal-header{padding:15px}.pedal-title{font-size:18px}.expanded-pedal-overlay{padding:10px}.expanded-pedal-overlay .expanded-pedal-container{border-radius:12px;max-height:100vh;max-width:100vw;padding:20px}.mini-pedal{min-height:280px;width:100%}.mini-pedal-minimized{min-height:80px;padding:15px}.mini-title{font-size:12px}.mini-status{font-size:10px}}@media (max-width:430px){.app-tagline{display:none}.header{gap:5px;padding:10px}.app-header h1{font-size:1.6em;gap:8px}.app-logo{height:30px;width:30px}.letter-large{font-size:.75em}.letter-small{font-size:.7em}.pedal-section{padding:15px 10px;width:180px}.pedal-section.compact{height:340px}.main-container{column-gap:20px;gap:20px;grid-template-columns:180px 180px;row-gap:15px}.footswitch{height:90px;max-width:200px}.compact-title{font-size:.65em}.app-title{font-size:1.2em}}@media (max-width:480px){.expanded-pedal-overlay{padding:5px}.expanded-pedal-overlay .expanded-pedal-container{border-radius:8px;padding:15px}.mini-pedal{min-height:240px}}@media (max-width:768px){.footswitch,.knob,.piano-key,.step-button,a[role=button],button,input[type=button],input[type=submit]{min-height:44px;min-width:44px}.footswitch,button{padding:12px 16px}.bpm-preset-row,.controls-row{gap:12px}.keyboard-compact-container,.pedal-section{padding:12px 8px}.controls-panel,.header{margin:10px 0}.control-group label,label{font-size:.85em}}@media (max-height:500px) and (max-width:768px){.header{gap:5px;padding:5px}.pedal-section{max-height:400px;overflow-y:auto}}.knob-container{align-items:center;display:flex;flex-direction:column;gap:var(--gap-xs)}.knob{background:radial-gradient(circle,#3a3a3a 0,var(--color-dark) 100%);border:var(--border-thick) solid #555;border-radius:var(--radius-full);box-shadow:inset 0 2px 5px var(--overlay-black-50),0 4px 10px var(--overlay-black-30);cursor:pointer;outline:none;position:relative}.knob:focus{border-color:var(--color-green);box-shadow:inset 0 2px 5px var(--overlay-black-50),0 4px 10px var(--overlay-black-30),0 0 0 3px #4caf504d}.knob-track{height:100%;position:relative;width:100%}.knob-pointer{background:var(--color-silver);border-radius:2px;box-shadow:0 0 5px var(--color-silver);height:40%;left:50%;margin-left:-2px;position:absolute;top:10%;transform-origin:50% 100%;width:4px}.knob-label{color:var(--color-gray-light);font-size:.8em;font-weight:700}.knob-value{color:var(--color-silver);font-size:.9em;font-weight:700}.bpm-knob-container,.preset-knob-container{align-items:center;display:flex;flex-direction:column;gap:var(--gap-xs);margin:var(--space-xs)}.bpm-knob-container{gap:var(--gap-sm)}.bpm-knob,.preset-knob{background:radial-gradient(circle,var(--color-gray-dark) 0,var(--color-black-bg) 100%);border:var(--border-heavy) solid #555;border-radius:var(--radius-full);box-shadow:inset 0 3px 8px var(--overlay-black-70),0 6px 15px var(--overlay-black-50);cursor:pointer;outline:none;position:relative}.bpm-knob:focus,.preset-knob:focus{border-color:#88b4d4;box-shadow:inset 0 3px 8px var(--overlay-black-70),0 6px 15px var(--overlay-black-50),0 0 10px #88b4d466}.bpm-knob-outer,.preset-knob-outer{align-items:center;border-radius:var(--radius-full);display:flex;height:100%;justify-content:center;padding:15%;width:100%}.bpm-knob-ball,.preset-knob-ball{background:radial-gradient(circle at 30% 30%,#d0d0d0 0,var(--color-silver) 50%,#a0a0a0 100%);border-radius:var(--radius-full);box-shadow:0 3px 10px var(--overlay-black-50),inset 0 -2px 8px var(--overlay-black-40),inset 2px 2px 6px var(--overlay-white-30);height:100%;position:relative;transition:transform .1s ease-out;width:100%}.preset-knob-indicator{background:radial-gradient(circle at 30% 30%,var(--color-white) 0,#e0e0e0 100%);border:2px solid var(--color-white);border-radius:var(--radius-full);box-shadow:0 0 8px #ffffffe6,inset 0 -2px 3px var(--overlay-black-30),inset 1px 1px 2px var(--overlay-white-50)}.bpm-knob-indicator,.preset-knob-indicator{height:12px;left:50%;position:absolute;top:12%;transform:translateX(-50%);width:12px}.bpm-knob-indicator{background:radial-gradient(circle at 30% 30%,#88b4d4 0,#6a9ac4 100%);border:2px solid #88b4d4;border-radius:var(--radius-full);box-shadow:0 0 8px #88b4d4e6,inset 0 -2px 3px var(--overlay-black-30),inset 1px 1px 2px var(--overlay-white-50)}.preset-knob-label{color:var(--color-gray-light);font-size:.8em;font-weight:700;letter-spacing:1px;text-transform:uppercase}.bpm-knob-value{border-radius:var(--radius-sm);color:#88b4d4;cursor:pointer;font-size:1.4em;font-weight:800;min-width:60px;padding:4px var(--space-sm);text-align:center;transition:background .2s}.bpm-knob-value:hover{background:#88b4d41a}.bpm-value-display{display:inline-block}.bpm-knob-input{background:var(--color-dark);border:2px solid #88b4d4;border-radius:var(--radius-sm);color:#88b4d4;font-size:1em;font-weight:800;outline:none;padding:4px;text-align:center;width:60px}.bpm-knob-input::-webkit-inner-spin-button,.bpm-knob-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.rhythm-indicator{align-items:center;display:flex;flex-direction:column;gap:var(--gap-xs)}.rhythm-indicator svg{filter:drop-shadow(0 2px 6px var(--overlay-black-30))}.rhythm-indicator-label{color:var(--color-gray-light);font-size:.7em;font-weight:700;letter-spacing:1px;text-transform:uppercase}.footswitch-base,.footswitch-screw,.footswitch-screw-left,.footswitch-screw-right{display:none}.footswitch-top{border:2px solid}.footswitch-drum .footswitch-top{background:linear-gradient(180deg,#66bb6a 0,var(--color-green) 100%)}.footswitch-red .footswitch-top{background:linear-gradient(180deg,#ff5252 0,var(--color-red-bright) 100%)}.pedals-wrapper{grid-column:2;grid-row:2}.pedal-section{border:var(--border-thick) solid;border-radius:var(--radius-lg);box-shadow:-15px 15px 0 var(--overlay-black-30),-15px 15px 20px var(--overlay-black-40),0 10px 30px var(--overlay-black-30),inset 0 1px 0 var(--overlay-white-10),inset 0 -2px 8px var(--overlay-black-20);display:flex;flex-direction:column;gap:var(--gap-lg);overflow:visible;padding:var(--space-xl) var(--space-lg);position:relative;transform:perspective(1000px) rotateX(2deg);transition:all .3s ease-out;width:280px}.pedal-section.compact{display:flex;flex-direction:column;height:380px;justify-content:space-between;padding-bottom:var(--space-lg)}.looper-section.compact{gap:var(--gap-sm);padding-top:12px}.pedal-section.compact:hover{transform:perspective(1000px) rotateX(2deg) translateY(-2px)}.rhythm-box-section.compact:hover{box-shadow:-1px 1px 0 #1565c0,-2px 2px 0 #1565c0,-3px 3px 0 #1464bf,-4px 4px 0 #1363be,-5px 5px 0 #1262bd,-6px 6px 0 #1161bc,-7px 7px 0 #1060bb,-8px 8px 0 #0f5fba,-9px 9px 0 #0e5eb9,-10px 10px 0 #0d5db8,-11px 11px 0 #0c5cb7,-12px 12px 0 #0b5bb6,-13px 13px 0 #0a5ab5,-14px 14px 0 #0959b4,-15px 15px 0 #0858b3,-16px 16px 25px var(--overlay-black-45),0 15px 40px var(--overlay-black-35),inset 0 1px 3px var(--overlay-white-15),inset 0 -2px 8px var(--overlay-black-20)}.looper-section.compact:hover{box-shadow:-1px 1px 0 #c62828,-2px 2px 0 #c62828,-3px 3px 0 #c52727,-4px 4px 0 #c42626,-5px 5px 0 #c32525,-6px 6px 0 #c22424,-7px 7px 0 #c12323,-8px 8px 0 #c02222,-9px 9px 0 #bf2121,-10px 10px 0 #be2020,-11px 11px 0 #bd1f1f,-12px 12px 0 #bc1e1e,-13px 13px 0 #bb1d1d,-14px 14px 0 #ba1c1c,-15px 15px 0 #b71c1c,-16px 16px 0 #b61b1b,-16px 16px 25px var(--overlay-black-45),0 15px 40px var(--overlay-black-35),inset 0 1px 3px var(--overlay-white-15),inset 0 -2px 8px var(--overlay-black-20)}.pedal-section.expanded{min-height:auto;width:420px}.compact-pedal-content{align-items:center;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:var(--gap-md);justify-content:flex-start;min-height:0;padding:var(--space-lg) 0}.compact-title{font-size:1em;font-weight:800;letter-spacing:2px;margin:0;text-transform:uppercase}.rhythm-box-section.compact .compact-title{color:var(--color-blue)}.looper-section.compact .compact-title{color:var(--color-red)}.compact-info{align-items:center;display:flex;gap:20px}.compact-info-centered{align-items:center;display:flex;flex-direction:column;gap:var(--gap-sm);width:100%}.compact-bpm{color:var(--color-silver);font-size:1.8em;font-weight:800;text-shadow:0 0 15px #c0c0c0cc}.bpm-preset-row{gap:var(--gap-lg);justify-content:space-between;width:100%}.bpm-preset-row,.bpm-quarter{align-items:center;display:flex}.bpm-quarter{flex:0 0 25%;flex-direction:column;gap:var(--gap-sm)}.pedal-header{align-items:center;border-bottom:var(--border-medium) solid;display:flex;gap:var(--gap-xl);justify-content:space-between;padding-bottom:var(--space-lg)}.rhythm-box-section .pedal-header{border-bottom-color:var(--color-blue)}.looper-section .pedal-header{border-bottom-color:var(--color-red)}.pedal-title{font-size:1.8em;letter-spacing:2px}.rhythm-box-section .pedal-title{color:var(--color-blue)}.looper-section .pedal-title{color:var(--color-red)}.master-knob-header{gap:var(--space-sm)}.sync-indicator-above{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:var(--overlay-black-30);border:var(--border-thin) solid var(--overlay-white-10);border-radius:var(--radius-sm);color:var(--color-gray-medium);cursor:pointer;font-size:.7em;font-weight:700;letter-spacing:1.5px;padding:var(--space-sm) var(--space-lg);text-transform:uppercase;transition:all .3s ease;-webkit-user-select:none;user-select:none}.sync-indicator-above:hover{background:var(--overlay-black-40);border-color:var(--overlay-white-15);color:var(--color-gray-light)}.sync-indicator-above.sync-active{background:#4caf5033;border:var(--border-thin) solid #4caf5066;box-shadow:0 0 15px #4caf504d;color:var(--color-success);text-shadow:0 0 10px #4caf50cc}.sync-indicator-above.sync-active:hover{background:#4caf5040;border-color:#4caf5080}.led-display-container{display:flex;justify-content:center;margin-bottom:var(--space-sm);width:100%}.led-display-screen{align-items:center;background:linear-gradient(180deg,var(--color-black) 0,var(--color-black-bg) 100%);border:var(--border-thick) solid var(--color-gray);border-radius:var(--radius-md);box-shadow:inset 0 2px 10px var(--overlay-black-90),0 0 20px #c0c0c04d;display:flex;flex-direction:column;gap:var(--gap-sm);padding:var(--space-lg) var(--space-xl)}.led-digits{font-family:Courier New,monospace;font-size:2.2em;font-weight:800;letter-spacing:3px;text-shadow:0 0 20px silver,0 0 30px #c0c0c0cc,0 0 40px #c0c0c099}.led-digits,.led-unit{color:var(--color-silver)}.led-unit{font-size:.65em;font-weight:700;letter-spacing:2px;opacity:.7;text-shadow:0 0 10px #c0c0c0cc}.compact-looper-circle{filter:drop-shadow(0 4px 12px var(--overlay-black-40))}.fullscreen-pedal{border:var(--border-thick) solid;border-radius:var(--radius-xl);box-shadow:0 20px 60px var(--overlay-black-80);max-height:95vh;max-width:95%;overflow-y:auto;padding:12px}.fullscreen-pedal.rhythm-box-section{background:linear-gradient(135deg,#1976d226 0,#0d47a140 100%),repeating-linear-gradient(90deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),repeating-linear-gradient(0deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),linear-gradient(180deg,#2c5aa0 0,#1e3a66 50%,#1a2f52 100%);border-color:var(--color-blue);height:90vh;max-height:90vh;max-width:75vw;width:75vw}.fullscreen-pedal.looper-section{background:linear-gradient(135deg,#d32f2f26 0,#b71c1c40 100%),repeating-linear-gradient(90deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),repeating-linear-gradient(0deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),linear-gradient(180deg,#a02c2c 0,#661e1e 50%,#521a1a 100%);border-color:var(--color-red);max-width:90vw;position:relative;width:auto}.looper-always-mounted-container{height:auto;left:-9999px;pointer-events:none;position:absolute;top:0;visibility:hidden;width:auto}.looper-expanded{height:auto!important;left:auto!important;overflow:visible!important;pointer-events:auto!important;position:static!important;top:auto!important;visibility:visible!important;width:100%!important}.looper-expanded-view{align-items:center;display:flex;flex-direction:column;height:auto;overflow:visible;width:100%}.close-overlay-btn{align-items:center;background:var(--overlay-black-50);border:var(--border-thin) solid var(--overlay-white-20);border-radius:var(--radius-full);color:var(--overlay-white-60);cursor:pointer;display:flex;font-size:18px;height:30px;justify-content:center;position:fixed;right:20px;top:20px;transition:all .2s;width:30px;z-index:1001}.close-overlay-btn:hover{background:var(--overlay-white-10);border-color:var(--overlay-white-40);color:var(--color-white)}.rhythm-box-section{background:linear-gradient(135deg,#1976d226 0,#0d47a140 100%),repeating-linear-gradient(90deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),repeating-linear-gradient(0deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),linear-gradient(180deg,#2c5aa0 0,#1e3a66 50%,#1a2f52 100%);border-color:var(--color-blue);box-shadow:-1px 1px 0 #1565c0,-2px 2px 0 #1565c0,-3px 3px 0 #1464bf,-4px 4px 0 #1363be,-5px 5px 0 #1262bd,-6px 6px 0 #1161bc,-7px 7px 0 #1060bb,-8px 8px 0 #0f5fba,-9px 9px 0 #0e5eb9,-10px 10px 0 #0d5db8,-11px 11px 0 #0c5cb7,-12px 12px 0 #0b5bb6,-13px 13px 0 #0a5ab5,-14px 14px 0 #0959b4,-15px 15px 0 #0858b3,-15px 15px 20px var(--overlay-black-40),0 10px 30px var(--overlay-black-50),inset 0 1px 3px var(--overlay-white-10),inset 0 -2px 5px var(--overlay-black-30);position:relative}.looper-section{background:linear-gradient(135deg,#d32f2f26 0,#b71c1c40 100%),repeating-linear-gradient(90deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),repeating-linear-gradient(0deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),linear-gradient(180deg,#a02c2c 0,#661e1e 50%,#521a1a 100%);border-color:var(--color-red);box-shadow:-1px 1px 0 #c62828,-2px 2px 0 #c62828,-3px 3px 0 #c52727,-4px 4px 0 #c42626,-5px 5px 0 #c32525,-6px 6px 0 #c22424,-7px 7px 0 #c12323,-8px 8px 0 #c02222,-9px 9px 0 #bf2121,-10px 10px 0 #be2020,-11px 11px 0 #bd1f1f,-12px 12px 0 #bc1e1e,-13px 13px 0 #bb1d1d,-14px 14px 0 #ba1c1c,-15px 15px 0 #b71c1c,-15px 15px 20px var(--overlay-black-40),0 10px 30px var(--overlay-black-50),inset 0 1px 3px var(--overlay-white-10),inset 0 -2px 5px var(--overlay-black-30);position:relative}.drum-box-section{background:linear-gradient(135deg,#4caf5026 0,#2e7d3240 100%),repeating-linear-gradient(90deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),repeating-linear-gradient(0deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),linear-gradient(180deg,#2c5a2c 0,#1e3a1e 50%,#1a2f1a 100%);border-color:var(--color-green);box-shadow:-1px 1px 0 #43a047,-2px 2px 0 #43a047,-3px 3px 0 #429f46,-4px 4px 0 #419e45,-5px 5px 0 #409d44,-6px 6px 0 #3f9c43,-7px 7px 0 #3e9b42,-8px 8px 0 #3d9a41,-9px 9px 0 #3c9940,-10px 10px 0 #3b983f,-11px 11px 0 #3a973e,-12px 12px 0 #39963d,-13px 13px 0 #38953c,-14px 14px 0 #37943b,-15px 15px 0 #36933a,-15px 15px 20px var(--overlay-black-40),0 10px 30px var(--overlay-black-50),inset 0 1px 3px var(--overlay-white-10),inset 0 -2px 5px var(--overlay-black-30);position:relative}.drum-box-section.compact .compact-title{color:var(--color-green)}.drum-box-section.compact:hover{box-shadow:-1px 1px 0 #43a047,-2px 2px 0 #43a047,-3px 3px 0 #429f46,-4px 4px 0 #419e45,-5px 5px 0 #409d44,-6px 6px 0 #3f9c43,-7px 7px 0 #3e9b42,-8px 8px 0 #3d9a41,-9px 9px 0 #3c9940,-10px 10px 0 #3b983f,-11px 11px 0 #3a973e,-12px 12px 0 #39963d,-13px 13px 0 #38953c,-14px 14px 0 #37943b,-15px 15px 0 #36933a,-16px 16px 0 #35923a,-16px 16px 25px var(--overlay-black-45),0 15px 40px var(--overlay-black-35)}.drum-machine-section{background:linear-gradient(135deg,#2e7d3226 0,#1b5e2040 100%),repeating-linear-gradient(90deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),repeating-linear-gradient(0deg,var(--overlay-black-3) 0,var(--overlay-black-3) 1px,#0000 1px,#0000 2px),linear-gradient(180deg,#1b5e20 0,#0d2f10 50%,#0a2408 100%);border-color:#2e7d32;box-shadow:-1px 1px 0 #2e7d32,-2px 2px 0 #2d7b30,-3px 3px 0 #2c792f,-4px 4px 0 #2b772e,-5px 5px 0 #2a752d,-6px 6px 0 #29732c,-7px 7px 0 #28712b,-8px 8px 0 #276f2a,-9px 9px 0 #266d29,-10px 10px 0 #256b28,-11px 11px 0 #246927,-12px 12px 0 #236726,-13px 13px 0 #226525,-14px 14px 0 #216324,-15px 15px 0 #206123,-15px 15px 20px var(--overlay-black-40),0 10px 30px var(--overlay-black-50),inset 0 1px 3px var(--overlay-white-10),inset 0 -2px 5px var(--overlay-black-30);position:relative}.drum-machine-section.compact .compact-title{color:#2e7d32}.drum-machine-section.compact:hover{box-shadow:-1px 1px 0 #2e7d32,-2px 2px 0 #2d7b30,-3px 3px 0 #2c792f,-4px 4px 0 #2b772e,-5px 5px 0 #2a752d,-6px 6px 0 #29732c,-7px 7px 0 #28712b,-8px 8px 0 #276f2a,-9px 9px 0 #266d29,-10px 10px 0 #256b28,-11px 11px 0 #246927,-12px 12px 0 #236726,-13px 13px 0 #226525,-14px 14px 0 #216324,-15px 15px 0 #206123,-16px 16px 0 #1f5f22,-17px 17px 0 #1e5d21,-17px 17px 25px var(--overlay-black-50),0 12px 35px var(--overlay-black-60),inset 0 1px 3px var(--overlay-white-15),inset 0 -2px 8px var(--overlay-black-20)}.footswitch{align-items:flex-end;background:#0000;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;height:84px;margin:0 auto;max-width:240px;overflow:visible;padding:0 0 0 6px;position:relative;width:100%;z-index:1002}.footswitch-base,.footswitch-screw,.footswitch-screw-left,.footswitch-screw-right{display:none}.footswitch-top{align-items:center;border:var(--border-medium) solid;border-radius:var(--radius-md);display:flex;height:100%;justify-content:center;position:relative;transition:all .15s ease-out;width:100%}.footswitch-green .footswitch-top{background:linear-gradient(180deg,#42a5f5,#2196f3);border-color:#64b5f6;box-shadow:-1px 1px 0 #1e88e5,-2px 2px 0 #1e87e4,-3px 3px 0 #1d86e3,-4px 4px 0 #1c85e2,-5px 5px 0 #1b84e1,-6px 6px 0 #1a83e0,-6px 6px 15px var(--overlay-black-30),inset 0 1px 2px var(--overlay-white-20),inset 0 -1px 2px var(--overlay-black-20)}.footswitch-drum .footswitch-top{background:linear-gradient(180deg,#66bb6a,#4caf50);border-color:#81c784;box-shadow:-1px 1px 0 #43a047,-2px 2px 0 #42a046,-3px 3px 0 #419f45,-4px 4px 0 #409e44,-5px 5px 0 #3f9d43,-6px 6px 0 #3e9c42,-6px 6px 15px var(--overlay-black-30),inset 0 1px 2px var(--overlay-white-20),inset 0 -1px 2px var(--overlay-black-20)}.footswitch-red .footswitch-top{background:linear-gradient(180deg,#ff5252,#f44336);border-color:#ff7961;box-shadow:-1px 1px 0 #f4433a,-2px 2px 0 #f34239,-3px 3px 0 #f24138,-4px 4px 0 #f14037,-5px 5px 0 #f03f36,-6px 6px 0 #ef3e35,-6px 6px 15px var(--overlay-black-30),inset 0 1px 2px var(--overlay-white-20),inset 0 -1px 2px var(--overlay-black-20)}.footswitch-label{color:#fffffff2;font-size:1.3em;font-weight:800;letter-spacing:3px;text-shadow:0 2px 4px var(--overlay-black-80);text-transform:uppercase;z-index:1}.footswitch-green.clicking .footswitch-top,.footswitch-green:active .footswitch-top{box-shadow:-1px 1px 0 #1e88e5,-2px 2px 0 #1d86e3,-2px 2px 8px var(--overlay-black-20),inset 0 1px 2px var(--overlay-black-30);transform:translate(-4px,4px);transition:all .05s ease-out}.footswitch-drum.clicking .footswitch-top,.footswitch-drum:active .footswitch-top{box-shadow:-1px 1px 0 #43a047,-2px 2px 0 #42a046,-2px 2px 8px var(--overlay-black-20),inset 0 1px 2px var(--overlay-black-30);transform:translate(-4px,4px);transition:all .05s ease-out}.footswitch-red.clicking .footswitch-top,.footswitch-red:active .footswitch-top{box-shadow:-1px 1px 0 #f4433a,-2px 2px 0 #f24138,-2px 2px 8px var(--overlay-black-20),inset 0 1px 2px var(--overlay-black-30);transform:translate(-4px,4px);transition:all .05s ease-out}.footswitch-green.pressed .footswitch-top{animation:pulse 2.5s infinite;box-shadow:-1px 1px 0 #1e88e5,-2px 2px 0 #1e87e4,-3px 3px 0 #1d86e3,-4px 4px 0 #1c85e2,-5px 5px 0 #1b84e1,-6px 6px 0 #1a83e0,-6px 6px 15px var(--overlay-black-30),inset 0 1px 2px var(--overlay-white-20),0 0 30px #2196f3e6}.footswitch-drum.pressed .footswitch-top{animation:pulse 2.5s infinite;box-shadow:-1px 1px 0 #43a047,-2px 2px 0 #42a046,-3px 3px 0 #419f45,-4px 4px 0 #409e44,-5px 5px 0 #3f9d43,-6px 6px 0 #3e9c42,-6px 6px 15px var(--overlay-black-30),inset 0 1px 2px var(--overlay-white-20),0 0 30px #4caf50e6}.footswitch-red.pressed .footswitch-top{animation:pulse 2.5s infinite;box-shadow:-1px 1px 0 #f4433a,-2px 2px 0 #f34239,-3px 3px 0 #f24138,-4px 4px 0 #f14037,-5px 5px 0 #f03f36,-6px 6px 0 #ef3e35,-6px 6px 15px var(--overlay-black-30),inset 0 1px 2px var(--overlay-white-20),0 0 30px #f44336e6}.footswitch:hover .footswitch-top{filter:brightness(1.1)}@keyframes footswitch-click{0%{transform:translateY(0)}50%{transform:translateY(3px)}to{transform:translateY(0)}}.pedals-container{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--gap-xl);justify-content:center;margin-top:var(--space-xl);padding:var(--space-md)}.pedal-unit{border-radius:var(--radius-lg);margin:15px;padding:var(--space-lg);position:relative}.pedal-unit:hover{box-shadow:-1px 1px 0 #3a3a3a,-2px 2px 0 #383838,-3px 3px 0 #363636,-4px 4px 0 #343434,-5px 5px 0 #323232,-6px 6px 0 #303030,-7px 7px 0 #2e2e2e,-8px 8px 0 #2c2c2c,-9px 9px 0 #2a2a2a,-10px 10px 0 #282828,-11px 11px 0 #262626,-12px 12px 0 #242424,-13px 13px 0 #222,-14px 14px 0 #202020,-17px 17px 0 #1a1a1a,-17px 17px 25px var(--overlay-black-50),0 12px 35px var(--overlay-black-60),inset 0 1px 3px var(--overlay-white-10),inset 0 -2px 5px var(--overlay-black-30);transform:translateY(-2px)}.pedal-body{align-items:center;display:flex;flex-direction:column;gap:var(--gap-md)}.pedal-led{border:var(--border-medium) solid var(--color-dark);border-radius:var(--radius-full);box-shadow:inset 0 1px 3px var(--overlay-black-50);height:20px;transition:all .3s ease;width:20px}.pedal-label{color:var(--color-white);font-size:14px;font-weight:800;letter-spacing:2px;text-shadow:0 1px 2px var(--overlay-black-80);text-transform:uppercase}.pedal-status{color:var(--overlay-white-70);font-size:12px;font-weight:700}.pedal-expand-btn:hover{background:#daa52066!important;box-shadow:0 2px 8px #daa5204d;transform:translateY(-1px)}.pedal-expand-btn:active{transform:translateY(0)}.rhythm-pedal:hover{box-shadow:-1px 1px 0 #2196f3,-2px 2px 0 #2095f2,-3px 3px 0 #1f94f1,-4px 4px 0 #1e93f0,-5px 5px 0 #1d92ef,-6px 6px 0 #1c91ee,-7px 7px 0 #1b90ed,-8px 8px 0 #1a8fec,-9px 9px 0 #198eeb,-10px 10px 0 #188dea,-11px 11px 0 #178ce9,-12px 12px 0 #168be8,-13px 13px 0 #158ae7,-14px 14px 0 #1489e6,-17px 17px 0 #1565c0,0 0 25px #2196f3b3,0 0 40px #2196f380,inset 0 1px 3px var(--overlay-white-15),inset 0 -2px 8px var(--overlay-black-20)!important}.looper-pedal:hover{box-shadow:-1px 1px 0 #f44336,-2px 2px 0 #f34235,-3px 3px 0 #f24134,-4px 4px 0 #f14033,-5px 5px 0 #f03f32,-6px 6px 0 #ef3e31,-7px 7px 0 #ee3d30,-8px 8px 0 #ed3c2f,-9px 9px 0 #ec3b2e,-10px 10px 0 #eb3a2d,-11px 11px 0 #ea392c,-12px 12px 0 #e9382b,-13px 13px 0 #e8372a,-14px 14px 0 #e73629,-17px 17px 0 #d32f2f,0 0 25px #f44336b3,0 0 40px #f4433680,inset 0 1px 3px var(--overlay-white-15),inset 0 -2px 8px var(--overlay-black-20)!important}.drum-pedal{background:linear-gradient(135deg,#4caf5026,#388e3c40);border:var(--border-thick) solid var(--color-green);box-shadow:-1px 1px 0 #4caf50,-2px 2px 0 #4bae4f,-3px 3px 0 #4aad4e,-4px 4px 0 #49ac4d,-5px 5px 0 #48ab4c,-6px 6px 0 #47aa4b,-7px 7px 0 #46a94a,-8px 8px 0 #45a849,-9px 9px 0 #44a748,-10px 10px 0 #43a647,-11px 11px 0 #42a546,-12px 12px 0 #41a445,-13px 13px 0 #40a344,-14px 14px 0 #3fa243,-15px 15px 0 #388e3c,0 0 20px #4caf5080,0 0 30px #4caf504d,inset 0 1px 3px var(--overlay-white-15),inset 0 -2px 8px var(--overlay-black-20)}.drums-pedal{background:linear-gradient(135deg,#2e7d3226,#1b5e2040);border:var(--border-thick) solid #2e7d32;box-shadow:-1px 1px 0 #2e7d32,-2px 2px 0 #2d7c31,-3px 3px 0 #2c7b30,-4px 4px 0 #2b7a2f,-5px 5px 0 #2a792e,-6px 6px 0 #29782d,-7px 7px 0 #28772c,-8px 8px 0 #27762b,-9px 9px 0 #26752a,-10px 10px 0 #257429,-11px 11px 0 #247328,-12px 12px 0 #237227,-13px 13px 0 #227126,-14px 14px 0 #217025,-15px 15px 0 #1b5e20,0 0 20px #2e7d3280,0 0 30px #2e7d324d,inset 0 1px 3px var(--overlay-white-15),inset 0 -2px 8px var(--overlay-black-20)}.mini-pedal{display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}.mini-pedal:hover{transform:translateY(-4px)!important}.pedal-hint{color:var(--overlay-white-50);font-size:10px;font-style:italic;margin-top:var(--space-sm)}.mini-pedal-minimized{align-items:center;background:var(--overlay-black-60);border:var(--border-medium) solid var(--overlay-white-10);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--gap-sm);justify-content:center;min-height:100px;padding:var(--space-xl);transition:all .3s ease;width:100%}.mini-pedal-minimized:hover{background:var(--overlay-black-70);border-color:var(--overlay-white-20)}.mini-title{color:var(--color-white);font-size:14px;font-weight:800;letter-spacing:2px;text-shadow:0 2px 4px var(--overlay-black-50);text-transform:uppercase}.mini-status{color:var(--color-gray-medium);font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.mini-led{border:var(--border-medium) solid var(--overlay-white-20);border-radius:var(--radius-full);height:16px;transition:all .2s ease;width:16px}.mini-pedal .mini-pedal-minimized{flex:1 1;min-height:100px;width:100%}.expanded-pedal-container{background:var(--overlay-black-95);height:100%;width:100%;z-index:9999}.expanded-pedal-container,.expanded-pedal-overlay{left:0;overflow-y:auto;padding:var(--space-xl);position:fixed;top:0}.expanded-pedal-overlay{align-items:center;animation:fadeIn .3s ease-out;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:var(--overlay-black-85);display:flex;height:100vh;justify-content:center;width:100vw;z-index:9998}.expanded-pedal-overlay .expanded-pedal-container{animation:slideIn .3s ease-out;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border:var(--border-medium) solid var(--overlay-white-10);border-radius:20px;box-shadow:0 20px 60px var(--overlay-black-90),inset 0 1px 0 var(--overlay-white-10);max-height:95vh;max-width:95vw;overflow-y:auto;padding:var(--space-3xl);position:relative;z-index:9999}.pedal-header{background:var(--overlay-black-50);border-radius:var(--radius-lg);margin-bottom:var(--space-xl);padding:var(--space-xl)}.pedal-title{color:var(--color-white);font-size:24px;font-weight:800;letter-spacing:3px;margin:0;text-shadow:0 2px 4px var(--overlay-black-50);text-transform:uppercase}.close-expanded-btn:hover{box-shadow:0 4px 12px var(--overlay-black-30);transform:translateY(-2px)}.close-expanded-btn:active{transform:translateY(0)}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:1400px){.main-container{gap:var(--space-xl);grid-template-columns:1fr}}@media (max-width:768px){.pedals-container{gap:var(--gap-lg);padding:var(--space-sm)}.pedal-unit{padding:12px}.pedal-label{font-size:12px;letter-spacing:1px}.pedal-status{font-size:10px}.expanded-pedal-overlay{padding:var(--space-sm)}.expanded-pedal-overlay .expanded-pedal-container{border-radius:var(--radius-lg);max-height:100vh;max-width:100vw;padding:var(--space-xl)}.mini-pedal{min-height:280px;width:100%}.mini-pedal-minimized{min-height:80px;padding:var(--space-lg)}.mini-title{font-size:12px}.mini-status{font-size:10px}.pedal-header{padding:var(--space-lg)}.pedal-title{font-size:18px}}@media (max-width:480px){.expanded-pedal-overlay{padding:var(--space-xs)}.expanded-pedal-overlay .expanded-pedal-container{border-radius:var(--radius-md);padding:var(--space-lg)}.mini-pedal{min-height:240px}}.master-controls-top-right{background:var(--overlay-black-80);border:var(--border-medium) solid var(--color-gray);border-radius:var(--radius-lg);bottom:10px;box-shadow:var(--shadow-drop-lg);display:flex;flex-direction:row;gap:var(--gap-lg);left:50%;padding:var(--space-sm) var(--space-lg);position:fixed;transform:translateX(-50%);z-index:10}@media (max-width:768px){.master-controls-top-right{display:none}}.master-control-item{align-items:center;display:flex;flex-direction:column;gap:3px}.master-control-item .knob-label{font-size:.6em;font-weight:600;letter-spacing:.5px}.master-control-item .knob-label,.master-label-small{color:var(--color-gray-medium);text-transform:uppercase}.master-label-small{font-size:.65em;font-weight:700;letter-spacing:.8px}.master-knob-header{align-items:center;display:flex;flex-direction:column;gap:5px}.controls-panel{background:#0000;border:none;box-shadow:none;padding:0}.controls-row{gap:var(--gap-2xl)}.controls-row,.main-controls-row{align-items:center;display:flex;flex-wrap:wrap;margin-bottom:var(--space-xl)}.main-controls-row{gap:var(--space-xl)}.controls-group-right{display:flex;gap:var(--gap-lg);margin-left:auto}.control-group{display:flex;flex-direction:column;gap:var(--gap-sm)}.control-group label{color:var(--color-gray-light);font-size:.9em;font-weight:700}.control-group select{background:var(--color-dark);border:var(--border-medium) solid var(--color-gray-medium);border-radius:var(--radius-sm);color:var(--color-white);cursor:pointer;font-size:1em;padding:var(--space-sm) var(--space-md);transition:border-color .2s}.control-group select:hover{border-color:var(--color-orange)}.bpm-selector{background:linear-gradient(135deg,#b8b8b8,#a0a0a0);border:var(--border-thick) solid #a0a0a0;border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--overlay-black-40),0 0 30px #c0c0c080;gap:var(--gap-md);padding:var(--space-lg) var(--space-xl)}.bpm-display-big,.bpm-selector{align-items:center;display:flex}.bpm-display-big{background:var(--color-black);border-radius:var(--radius-md);flex-direction:column;min-width:120px;padding:var(--space-lg) var(--space-2xl)}.bpm-value{color:var(--color-silver);font-size:3em;font-weight:800;line-height:1;text-shadow:0 0 15px #c0c0c0cc}.bpm-label{color:var(--color-gray-medium);font-size:.9em;margin-top:var(--space-xs)}.bpm-display-compact,.bpm-label{font-weight:700;letter-spacing:2px}.bpm-display-compact{background:var(--color-black);border:var(--border-medium) solid var(--color-blue);border-radius:var(--radius-sm);color:var(--color-white);font-size:1.2em;padding:var(--space-sm) var(--space-xl)}.bpm-decrease,.bpm-increase{background:var(--overlay-black-30);border:none;border-radius:var(--radius-md);color:var(--color-white);cursor:pointer;font-size:2em;font-weight:700;height:50px;transition:all .15s;width:50px}.bpm-decrease:hover,.bpm-increase:hover{background:var(--overlay-black-50);transform:scale(1.1)}.bpm-decrease:active,.bpm-increase:active{transform:scale(.95)}.bpm-display-screen{align-items:center;background:var(--color-black);border:var(--border-medium) solid var(--color-gray-medium);border-radius:var(--radius-md);box-shadow:inset 0 2px 8px var(--overlay-black-50);display:flex;flex-direction:column;gap:5px;padding:var(--space-lg) var(--space-xl)}.bpm-input{background:#0000;border:none;color:#88b4d4;cursor:pointer;font-family:Inter,monospace;font-size:3em;font-weight:800;outline:none;text-align:center;text-shadow:0 0 5px #88b4d44d;width:120px}.bpm-input::-webkit-inner-spin-button,.bpm-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.bpm-unit{color:var(--color-orange);font-size:.85em;font-weight:700;letter-spacing:2px;opacity:.7}.transport-controls-primary{border-radius:var(--radius-lg);display:flex;gap:var(--space-xl);justify-content:center;margin-bottom:var(--space-3xl);padding:var(--space-xl)}.play-btn-large{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);border:4px solid var(--color-gray);border-radius:var(--radius-lg)}.play-btn-large:hover{background:linear-gradient(135deg,#333,#222)}.play-btn-large.playing{background:linear-gradient(135deg,var(--color-green) 0,var(--color-green-dark) 100%)}.play-btn-compact{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);border:var(--border-medium) solid var(--color-gray);border-radius:var(--radius-md);box-shadow:var(--shadow-3d-small);color:var(--color-green);cursor:pointer;font-size:1.2em;font-weight:700;padding:var(--space-md) var(--space-xl);transition:all .2s}.play-btn-compact:hover{box-shadow:var(--shadow-3d-large);transform:translateY(-1px)}.play-btn-compact.active{background:linear-gradient(135deg,var(--color-red-bright) 0,#b71c1c 100%);border-color:var(--color-red-bright);color:var(--color-white)}.rec-btn-compact{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);border:var(--border-medium) solid var(--color-gray);border-radius:var(--radius-md);box-shadow:var(--shadow-3d-small);color:var(--color-gray-medium);padding:var(--space-md) var(--space-xl)}.rec-btn-compact:hover{box-shadow:var(--shadow-3d-large)}.rec-btn-compact.active{background:linear-gradient(135deg,var(--color-red-bright) 0,#b71c1c 100%)}.tempo-control-section{align-items:center;border-radius:var(--radius-lg);display:flex;gap:var(--gap-2xl);justify-content:center;margin-bottom:var(--space-xl);padding:var(--space-xl)}.bpm-section{display:flex;flex-direction:column;gap:var(--gap-md)}.bpm-controls-group{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-xl)}.bpm-control-column{gap:var(--gap-sm)}.bpm-control-column,.bpm-display-and-tap{align-items:center;display:flex;flex-direction:column}.bpm-display-and-tap{gap:var(--gap-md)}.tap-button-compact{background:linear-gradient(135deg,#b8b8b8,#a0a0a0);border:var(--border-medium) solid #a0a0a0;border-radius:var(--radius-sm);box-shadow:0 3px 0 var(--overlay-black-40);padding:var(--space-sm) var(--space-md)}.tap-button-compact:hover{box-shadow:0 5px 0 var(--overlay-black-40);transform:translateY(-2px)}.tap-button-compact:active{box-shadow:0 2px 0 var(--overlay-black-40);transform:translateY(1px)}.tap-tempo-btn{align-self:flex-end;background:linear-gradient(135deg,#555,#444);border:var(--border-medium) solid #666;border-radius:var(--radius-sm);box-shadow:0 2px 0 var(--overlay-black-30);color:#ccc;cursor:pointer;font-size:.65em;font-weight:700;height:-webkit-fit-content;height:fit-content;letter-spacing:.5px;margin-bottom:var(--gap-sm);padding:var(--space-md) var(--gap-sm);transition:all .2s}.tap-tempo-btn:hover{background:linear-gradient(135deg,#666,#555);box-shadow:0 3px 0 var(--overlay-black-30);color:var(--color-white);transform:translateY(-1px)}.tap-tempo-btn:active{background:linear-gradient(135deg,#777,#666);box-shadow:0 1px 0 var(--overlay-black-30);transform:translateY(1px) scale(.98)}.rec-section{align-items:center;display:flex;gap:var(--gap-lg);justify-content:center;margin-bottom:var(--space-xl)}.presets-section,.rec-section{border-radius:var(--radius-lg);padding:var(--space-lg)}.presets-section{margin-top:var(--space-xl)}.presets-panel{gap:var(--gap-lg);padding:var(--space-lg)}.preset-selector,.presets-panel{display:flex;flex-direction:column}.preset-selector{align-items:center;background:linear-gradient(135deg,#c0c0c01a,#b0b0b00d);border:var(--border-medium) solid #c0c0c04d;border-radius:var(--radius-lg);gap:var(--gap-md);padding:var(--space-xl)}.preset-display{color:var(--color-silver);font-family:Inter,monospace;font-size:2.5em;font-weight:800;min-width:80px;text-align:center;text-shadow:0 0 15px #c0c0c0cc}.preset-name{color:var(--color-white);font-size:1.1em;font-weight:600;text-align:center}.preset-name-compact{color:var(--color-silver);font-size:.95em;font-weight:700;letter-spacing:1px;text-align:center;text-shadow:0 0 10px #c0c0c099;text-transform:uppercase}.preset-info-row{display:flex;gap:var(--space-xl);justify-content:space-between}.info-item{display:flex;flex:1 1;flex-direction:column;gap:5px}.info-label{color:var(--color-gray-light);font-size:.75em;font-weight:700;letter-spacing:1px;text-transform:uppercase}.detail-mini-label{color:var(--color-gray-medium)}.kit-select,.measures-select{background:var(--color-dark);border:var(--border-medium) solid var(--color-gray-medium);border-radius:var(--radius-sm);color:var(--color-white);cursor:pointer;font-size:1em;font-weight:600;padding:var(--space-md);transition:border-color .2s}.kit-select:hover,.measures-select:hover{border-color:var(--color-orange)}.groove-name-input{background:var(--color-dark);border:var(--border-medium) solid var(--color-gray-medium);border-radius:var(--radius-sm);outline:none;padding:var(--space-md);transition:border-color .2s}.action-buttons-row{display:flex;flex-wrap:wrap;gap:var(--gap-md)}.small-button{background:linear-gradient(135deg,#444,#222);border:var(--border-medium) solid var(--color-gray-medium);border-radius:var(--radius-sm);font-size:.85em;font-weight:700;letter-spacing:1px;padding:var(--space-md) var(--space-lg);text-transform:uppercase;transition:all .15s}.small-button:hover{background:linear-gradient(135deg,#555,#333);border-color:var(--color-orange)}.small-button.active{background:linear-gradient(135deg,var(--color-orange) 0,#f80 100%);border-color:#f80}.preset-bar-full{border:var(--border-medium) solid #c0c0c033;padding:var(--space-md) var(--gap-md)}.preset-bar-full,.preset-detail-mini{border-radius:var(--radius-sm)}.preset-zone{background:#c0c0c014;border:var(--border-medium) solid #c0c0c033;border-radius:var(--radius-sm);display:flex;flex:2 1;flex-direction:column;gap:var(--gap-sm);min-width:0;padding:var(--space-md) var(--gap-md)}.view-menu-bar{background:var(--overlay-black-30);border-radius:var(--radius-md);display:flex;gap:var(--gap-md);margin-bottom:var(--space-lg);padding:var(--space-md)}.view-btn{background:linear-gradient(135deg,#333,#222);border:var(--border-medium) solid var(--color-gray);border-radius:var(--radius-sm);color:var(--color-gray-light);cursor:pointer;flex:1 1;font-size:.9em;font-weight:700;letter-spacing:1px;padding:var(--space-md) var(--space-xl);text-transform:uppercase;transition:all .2s}.view-btn:hover{background:linear-gradient(135deg,#444,#333);border-color:var(--color-gray-medium);color:var(--color-white)}.view-btn.active{background:linear-gradient(135deg,var(--color-blue) 0,#0d47a1 100%);border-color:var(--color-blue);box-shadow:0 0 5px #1976d24d;color:var(--color-white)}.controls-panel-new{display:flex;flex-direction:column;gap:var(--space-xl)}.controls-top-section{grid-gap:var(--gap-2xl);align-items:center;display:grid;gap:var(--gap-2xl);grid-template-columns:2fr 1fr;padding:var(--space-lg)}.section-label{color:var(--color-gray-light);font-size:.85em;font-weight:700;letter-spacing:2px;text-transform:uppercase}.play-section{align-items:center;display:flex;justify-content:flex-end}.controls-panel-compact{display:flex;flex-direction:column;font-size:.85em;gap:var(--gap-sm)}.compact-label{color:var(--color-gray-medium);font-size:.75em;font-weight:700;letter-spacing:1.5px;min-width:60px;text-transform:uppercase}.horizontal-separator{background:linear-gradient(90deg,#0000 0,var(--color-blue) 50%,#0000 100%);height:var(--border-medium);margin:var(--gap-md) 0}.controls-split-row{display:flex;gap:var(--gap-md);width:100%}.mixage-zone{background:var(--overlay-black-20);border-radius:var(--radius-sm);flex:1 1;flex-direction:column;min-width:0;padding:var(--space-sm) var(--gap-md)}.mixage-controls,.mixage-zone{display:flex;gap:var(--gap-sm)}.mixage-controls{align-items:center;flex-wrap:wrap}.mixage-controls-daltons{align-items:flex-end;display:flex;gap:var(--gap-lg);justify-content:center}.compact-top-bar{background:var(--overlay-black-20);border-radius:var(--radius-sm);padding:var(--space-sm) var(--gap-md)}.compact-controls-row,.compact-top-bar{align-items:center;display:flex;gap:var(--gap-md)}.compact-controls-row{flex:1 1}.bpm-display-mini{align-items:center;display:flex}.bpm-input-mini{background:var(--overlay-black-40);border:var(--border-thin) solid var(--color-gray);border-radius:var(--radius-sm);color:var(--color-white);font-size:.9em;font-weight:600;padding:4px var(--space-sm);text-align:center;width:50px}.tap-btn-mini{background:linear-gradient(135deg,#555,#444);border:var(--border-thin) solid #666;border-radius:var(--radius-sm);color:#ccc;cursor:pointer;font-size:.75em;font-weight:700;padding:6px var(--space-md);transition:all .2s}.tap-btn-mini:hover{background:linear-gradient(135deg,#666,#555);color:var(--color-white)}.compact-bottom-bar{border-radius:var(--radius-sm);padding:var(--space-sm) var(--gap-md)}.menu-tab-compact{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);border:var(--border-medium) solid var(--color-gray);border-radius:var(--radius-sm);color:var(--color-gray-medium);padding:var(--space-sm) var(--space-xl)}.menu-tab-compact:hover{background:linear-gradient(135deg,#333,#222)}.menu-tab-compact.active{background:linear-gradient(135deg,var(--color-blue) 0,#0d47a1 100%)}.looper-action-btn{transition:all .15s ease}.looper-action-btn:active:not(:disabled){transform:scale(.96) translateY(1px)}.undo-btn:active:not(:disabled){background:linear-gradient(180deg,#ff9800 0,#f57c00)!important;box-shadow:0 1px 2px #ff980099,inset 0 1px 0 #fff6!important;color:var(--color-white)!important}.clear-looper-btn:active:not(:disabled){background:linear-gradient(180deg,#333 0,#111)!important;box-shadow:0 1px 2px #ffffff4d,inset 0 1px 0 #ffffff4d!important;color:var(--color-white)!important}.speakers-btn:active{box-shadow:0 1px 2px #4caf5099,inset 0 1px 0 #ffffff80!important;transform:scale(.96) translateY(1px)}.speakers-btn.headset-mode:active{background:linear-gradient(to bottom,#66bb6a 0,var(--color-green) 100%)!important}.speakers-btn.speakers-mode:active{background:linear-gradient(to bottom,var(--color-white) 0,#e0e0e0 100%)!important}.live-mixer-row{gap:var(--gap-sm)}.live-instrument-name{border:var(--border-medium) solid var(--color-gray);border-radius:var(--radius-sm);color:var(--color-gray-medium);padding:6px var(--space-xl)}.live-press-btn{border:var(--border-thick) solid var(--color-gray-medium);border-radius:var(--radius-sm);box-shadow:0 3px 0 var(--overlay-black-30),inset 0 1px 0 #ffffff80}.live-press-btn:hover{box-shadow:0 4px 0 var(--overlay-black-30),inset 0 1px 0 #ffffff80}.live-press-btn:active{box-shadow:0 1px 0 var(--overlay-black-30),inset 0 1px 0 #ffffff80}@media (max-width:1024px){.controls-panel-compact{font-size:.8em}.controls-split-row{gap:10px}.mixage-zone,.preset-zone{padding:8px 10px}.mixage-controls-daltons{gap:12px}.play-btn-large{font-size:2em;min-height:75px;min-width:90px;padding:15px 25px}.preset-content-row{gap:10px}.preset-num-display{font-size:1.5em}.preset-name-compact-new{font-size:1em}.menu-tab-compact{font-size:.7em;padding:8px 12px}}@media (max-width:768px){.controls-panel-compact{font-size:.75em;gap:8px}.controls-split-row{flex-direction:column;gap:8px}.mixage-zone,.preset-zone{flex:1 1;padding:6px 8px;width:100%}.mixage-controls-daltons{flex-direction:row;flex-wrap:wrap;gap:8px;justify-content:space-around}.play-btn-large{font-size:1.5em;margin-left:8px;min-height:60px;min-width:70px;padding:12px 20px}.play-btn-large:hover{transform:translate(-1px,1px)}.play-btn-large:active{min-height:56px;transform:translate(-6px,6px)}.mixage-controls-daltons .knob-container{transform:scale(.9)}.compact-label{font-size:.7em}.preset-content-row{flex-wrap:wrap;gap:8px}.preset-num-display{font-size:1.3em;min-width:40px}.preset-name-compact-new{font-size:.9em}.preset-detail-mini{font-size:.9em;padding:3px 6px}.detail-mini-label{font-size:.65em}.detail-mini-value{font-size:.75em}.tap-tempo-btn-large{font-size:11px;min-width:70px;padding:8px 12px}.mixage-zone>div:last-child{align-items:flex-start;flex-direction:column}.mixage-zone button[style*="42px"]{font-size:14px!important;height:36px!important;width:36px!important}.mixage-zone button[style*="18px"]{font-size:7px!important;height:16px!important;width:36px!important}.compact-bottom-bar{gap:8px;padding:6px 8px}.menu-tabs-compact{-webkit-overflow-scrolling:touch;gap:4px;overflow-x:auto}.menu-tab-compact{font-size:.65em;min-width:-webkit-fit-content;min-width:fit-content;padding:6px 8px;white-space:nowrap}.bpm-selector{gap:10px;padding:10px 15px}.bpm-display-big{min-width:90px;padding:10px 15px}.bpm-value{font-size:2em}.bpm-label{font-size:.8em}.tempo-control-section{gap:15px;padding:15px}.bpm-controls-group{gap:15px}.master-controls-top-right{display:none}}@media (max-width:480px){.controls-panel-compact{font-size:.7em}.play-btn-large{font-size:1.3em;margin-left:6px;min-height:50px;min-width:60px;padding:10px 16px}.play-btn-large:active{min-height:48px;transform:translate(-4px,4px)}.compact-label{font-size:.65em;min-width:50px}.preset-num-display{font-size:1.1em;min-width:35px}.preset-name-compact-new{font-size:.8em}.preset-detail-mini{padding:2px 4px}.detail-mini-label,.detail-mini-value{font-size:.6em}.tap-tempo-btn-large{font-size:10px;min-width:60px;padding:6px 10px}.mixage-zone button[style*="42px"]{font-size:13px!important;height:32px!important;width:32px!important}.mixage-zone button[style*="18px"]{font-size:6px!important;height:14px!important;width:32px!important}.menu-tab-compact{font-size:.6em;padding:5px 6px}.bpm-selector{padding:8px 12px}.bpm-display-big{min-width:80px;padding:8px 12px}.bpm-value{font-size:1.8em}}@media (max-width:768px) and (orientation:landscape){.controls-split-row{flex-direction:row!important}.mixage-zone,.preset-zone{flex:1 1 50%!important;max-width:50%;width:50%!important}.mixage-controls-daltons{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.play-btn-large{font-size:1.2em;margin-left:6px;min-height:50px;min-width:55px;padding:8px 14px}.mixage-controls-daltons .knob-container,.preset-content-row .knob-container{transform:scale(.8)}.preset-num-display{font-size:1.1em;min-width:35px}.preset-name-compact-new{font-size:.75em}.preset-detail-mini{font-size:.8em;padding:2px 4px}.detail-mini-label,.detail-mini-value{font-size:.55em}.menu-tab-compact{font-size:.55em;padding:4px 6px}.tap-tempo-btn-large{font-size:9px;min-width:55px;padding:6px 8px}}.play-btn-large{background:var(--gradient-dark-diagonal);border:4px solid var(--color-gray-medium);border-radius:10px;box-shadow:-3px 3px 0 0 var(--overlay-black-30),-6px 6px 0 0 var(--overlay-black-20),-9px 9px 0 0 var(--overlay-black-10),-12px 12px 15px 0 var(--overlay-black-20),0 0 20px #66ff664d;color:#6f6;cursor:pointer;font-size:2.5em;font-weight:700;margin-left:12px;min-height:90px;min-width:112px;padding:20px 32px;position:relative;text-shadow:0 0 10px #66ff6680;transition:all .15s ease}.play-btn-large:hover{background:linear-gradient(135deg,var(--color-gray) 0,var(--color-dark-alt) 100%);border-color:#555;box-shadow:-2px 2px 0 0 var(--overlay-black-30),-4px 4px 0 0 var(--overlay-black-20),-6px 6px 0 0 var(--overlay-black-10),-8px 8px 12px 0 var(--overlay-black-20),0 0 25px #88ff8880;color:#8f8;text-shadow:0 0 15px #88ff88b3;transform:translate(-1px,1px)}.play-btn-large:active{box-shadow:-1px 1px 0 0 var(--overlay-black-40),-4px 4px 8px 0 var(--overlay-black-30),0 0 12px #66ff664d;min-height:82px;transform:translate(-8px,8px)}.play-btn-large.playing{background:var(--gradient-green);border-color:var(--color-green);box-shadow:-3px 3px 0 0 var(--overlay-black-30),-6px 6px 0 0 var(--overlay-black-20),-9px 9px 0 0 var(--overlay-black-10),-12px 12px 15px 0 var(--overlay-black-20),0 0 20px #4caf5080;color:var(--color-white);text-shadow:0 0 15px #4caf50b3}.play-btn-large.playing:hover{box-shadow:-2px 2px 0 0 var(--overlay-black-30),-4px 4px 0 0 var(--overlay-black-20),-6px 6px 0 0 var(--overlay-black-10),-8px 8px 12px 0 var(--overlay-black-20),0 0 25px #4caf5099;transform:translate(-1px,1px)}.play-btn-large.playing:active{box-shadow:-1px 1px 0 0 var(--overlay-black-40),-4px 4px 8px 0 var(--overlay-black-30),0 0 12px #4caf5066;min-height:82px;transform:translate(-8px,8px)}.play-btn-large.stopped{animation:blink-play 1.5s ease-in-out infinite}@keyframes blink-play{0%,to{border-color:var(--color-gray-medium);box-shadow:0 3px 0 var(--overlay-black-40)}50%{border-color:var(--color-green);box-shadow:0 3px 0 var(--overlay-black-40),0 0 10px #4caf504d}}.rec-btn-compact{background:var(--gradient-dark-diagonal);border:2px solid var(--color-gray-medium);border-radius:6px;box-shadow:0 2px 0 var(--overlay-black-30);color:#888;cursor:pointer;font-size:1.2em;font-weight:700;padding:8px 16px;transition:all .2s}.rec-btn-compact:hover{box-shadow:0 3px 0 var(--overlay-black-30);transform:translateY(-1px)}.rec-btn-compact.active{background:var(--gradient-red);border-color:var(--color-red-bright);box-shadow:0 0 5px #d32f2f4d;color:var(--color-white)}.preset-bar-full{align-items:center;background:#c0c0c014;border:2px solid #c0c0c033;border-radius:6px;display:flex;gap:var(--gap-md);padding:10px 12px}.preset-content-row{align-items:center;display:flex;flex:1 1;gap:var(--gap-lg)}.preset-num-display{color:var(--color-silver);font-family:Inter,monospace;font-size:1.8em;font-weight:800;min-width:50px;text-align:center;text-shadow:0 0 10px #c0c0c099}.preset-name-compact-new{color:var(--color-white);flex:1 1;font-size:1.1em;font-weight:700;letter-spacing:1px;text-transform:uppercase}.preset-detail-mini{align-items:center;background:var(--overlay-black-30);border-radius:4px;display:flex;gap:6px;padding:4px 10px}.detail-mini-label{color:#888;font-size:.7em;font-weight:600;letter-spacing:1px}.detail-mini-value{color:var(--color-silver);font-size:.85em;font-weight:700;text-transform:uppercase}.preset-info-display{background:var(--overlay-black-30);border-radius:8px;display:flex;flex-direction:column;gap:15px;padding:15px}.preset-name-large{color:var(--color-white);font-size:1.5em;font-weight:700;letter-spacing:2px;text-align:center;text-transform:uppercase}.preset-details{display:flex;gap:20px;justify-content:space-around}.detail-item{align-items:center;display:flex;flex-direction:column;gap:5px}.detail-label{color:#888;font-size:.7em;letter-spacing:1px}.detail-label,.detail-value{font-weight:700;text-transform:uppercase}.detail-value{color:var(--color-silver);font-size:1.1em}.preset-layout-horizontal{align-items:center;display:flex;gap:30px;justify-content:space-between}.preset-info-display-large{background:#0006;border:2px solid var(--overlay-white-10);border-radius:10px;display:flex;flex:1 1;flex-direction:column;gap:20px;padding:20px 30px}.preset-name-xlarge{color:var(--color-white);font-size:2.5em;font-weight:800;letter-spacing:3px;text-align:center;text-shadow:0 2px 10px var(--overlay-black-50);text-transform:uppercase}.preset-details-large{display:flex;gap:40px;justify-content:center}.detail-item-large{align-items:center;display:flex;flex-direction:column;gap:8px}.detail-label-large{color:#888;font-size:.9em;letter-spacing:2px}.detail-label-large,.detail-value-large{font-weight:700;text-transform:uppercase}.detail-value-large{color:#4a9eff;font-size:1.8em;text-shadow:0 0 10px #4a9eff80}.compact-bottom-bar{align-items:center;background:var(--overlay-black-20);border-radius:6px;display:flex;gap:var(--gap-md);padding:8px 12px}.menu-tabs-compact{display:flex;flex:1 1;gap:var(--gap-sm)}.menu-tab-compact{background:var(--gradient-dark-diagonal);border:2px solid var(--color-gray-medium);border-radius:5px;color:#888;cursor:pointer;flex:1 1;font-size:.75em;font-weight:700;letter-spacing:1px;padding:8px 16px;text-transform:uppercase;transition:all .2s}.menu-tab-compact:hover{background:linear-gradient(135deg,var(--color-gray) 0,var(--color-dark-alt) 100%);border-color:#555;color:var(--color-gray-light)}.menu-tab-compact.active{background:linear-gradient(135deg,var(--color-blue) 0,var(--color-blue-dark) 100%);border-color:var(--color-blue);box-shadow:0 0 5px #1976d240;color:var(--color-white)}.live-view-container{align-items:stretch;flex-direction:column;gap:6px;height:auto;justify-content:flex-start;max-height:100%;overflow-y:auto;padding:6px 10px;width:100%}.live-mixer-row,.live-view-container{background:#0000;border-radius:0;display:flex}.live-mixer-row{flex-shrink:0;gap:8px;justify-content:center;padding:0}.live-mixer-channel{align-items:center;display:flex;flex-direction:column;gap:3px}.live-instrument-name{background:var(--overlay-black-30);border:2px solid var(--color-gray-medium);border-radius:4px;color:#888;cursor:pointer;font-size:.75em;font-weight:700;letter-spacing:1px;min-width:60px;padding:6px 12px;text-align:center;text-transform:uppercase;transition:all .2s}.live-instrument-name:hover{background:var(--overlay-black-40);border-color:var(--color-gray-medium);color:var(--color-gray-light)}.live-instrument-name.selected{background:linear-gradient(135deg,#88b4d4,#6a9ac4);border-color:#88b4d4;box-shadow:0 0 5px #88b4d44d;color:var(--color-white)}.live-beat-section{background:#0000;border-radius:0;display:flex;flex-direction:column;flex-shrink:0;gap:3px;padding:0}.live-beat-row-complete{align-items:center;display:flex;gap:var(--gap-lg)}.live-beat-label{color:#88b4d4;font-size:.9em;font-weight:700;letter-spacing:1.5px;min-width:60px;text-align:right;text-transform:uppercase}.live-beat-controls{align-items:center;display:flex;gap:var(--gap-lg)}.live-press-btn{background:linear-gradient(180deg,var(--color-white) 0,#e0e0e0 100%);border:3px solid #888;border-radius:6px;box-shadow:0 3px 0 var(--overlay-black-30),inset 0 1px 0 var(--overlay-white-50);color:var(--color-gray);cursor:pointer;font-size:.9em;font-weight:700;letter-spacing:1px;min-height:60px;min-width:90px;padding:14px 20px;text-transform:uppercase;transition:all .15s}.live-press-btn:hover{background:linear-gradient(180deg,#f0f0f0,#d0d0d0);box-shadow:0 4px 0 var(--overlay-black-30),inset 0 1px 0 var(--overlay-white-50);transform:translateY(-1px)}.live-press-btn:active{box-shadow:0 1px 0 var(--overlay-black-30),inset 0 1px 0 var(--overlay-white-30);transform:translateY(2px)}.live-beat-section .clear-instrument-btn{align-items:center;background:var(--gradient-dark-diagonal);border:3px solid var(--color-gray-medium);border-radius:6px;box-shadow:0 3px 0 var(--overlay-black-40);cursor:pointer;display:flex;height:45px;justify-content:center;transition:all .15s;width:45px}.live-beat-section .clear-instrument-btn .trash-icon{color:#888;height:20px;width:20px}.live-beat-section .clear-instrument-btn:hover{background:linear-gradient(180deg,#f30,#c00);border-color:#f52;box-shadow:0 2px 0 var(--overlay-black-40),0 0 15px #ff330080;transform:scale(1.05)}.live-beat-section .clear-instrument-btn:hover .trash-icon{color:var(--color-white)}.live-beat-section .clear-instrument-btn:active{box-shadow:0 1px 0 var(--overlay-black-40);transform:translateY(2px) scale(1.05)}.live-step-numbers{display:flex;gap:4px;margin-bottom:4px;margin-left:72px}.live-step-number{color:var(--color-gray-medium);font-size:.7em;font-weight:700;letter-spacing:.5px;text-align:center;width:50px}.live-grid-row{display:flex;gap:4px;height:70px;justify-content:center}.live-grid-row .step-button.active{background:var(--color-white);border-color:#d0d0d0;box-shadow:0 0 5px #c0c0c04d}.live-grid-row .step-button.active .beat-marker{color:#f84;font-size:1.2em}.live-grid-row .step-button.current{border-color:#0f8;box-shadow:0 0 6px #0f86}.live-grid-row .step-button.active.current{border-color:#0f8;box-shadow:0 0 10px #0f8c}.mixer-container{overflow-x:auto;padding:20px}.mixer-channels{display:flex;gap:30px;justify-content:center;min-width:-webkit-max-content;min-width:max-content}.mixer-channel{align-items:center;background:linear-gradient(180deg,var(--overlay-black-30) 0,var(--overlay-black-50) 100%);border:2px solid var(--color-gray);border-radius:10px;display:flex;flex-direction:column;gap:15px;min-width:120px;padding:15px}.channel-label{background:linear-gradient(135deg,var(--color-gray-medium) 0,var(--color-dark-alt) 100%);border-radius:6px;color:var(--color-white);font-size:.9em;font-weight:700;letter-spacing:2px;padding:8px 12px;text-align:center;text-transform:uppercase;width:100%}.channel-controls{display:flex;gap:8px;width:100%}.channel-btn{background:linear-gradient(135deg,var(--color-gray) 0,var(--color-dark-alt) 100%);border:2px solid var(--color-gray-medium);border-radius:5px;color:var(--color-gray-light);cursor:pointer;flex:1 1;font-size:.9em;font-weight:700;padding:8px;transition:all .15s}.channel-btn:hover{background:linear-gradient(135deg,var(--color-gray-medium) 0,var(--color-gray) 100%);border-color:var(--color-gray-medium)}.solo-btn.active{background:linear-gradient(135deg,#ffeb3b,#fbc02d);border-color:#ffeb3b;box-shadow:0 0 5px #ffeb3b4d;color:var(--color-black)}.mute-btn.active{background:var(--gradient-red);border-color:var(--color-red-bright);box-shadow:0 0 5px #f443364d;color:var(--color-white)}.channel-effects{background:var(--overlay-black-20);border-radius:6px;display:flex;gap:15px;padding:10px}.effect-control{align-items:center;display:flex;flex-direction:column}.channel-fader{margin-top:10px}.mixer-container-simplified{overflow-x:auto;padding:20px}.mixer-channels-simplified{display:flex;gap:15px;justify-content:center;min-width:-webkit-max-content;min-width:max-content}.mixer-channel-simple{align-items:center;background:linear-gradient(180deg,var(--overlay-black-20) 0,var(--overlay-black-40) 100%);border:2px solid var(--color-gray);border-radius:8px;display:flex;flex-direction:column;gap:10px;min-width:80px;padding:15px}.channel-effects-knobs{grid-gap:8px;background:#00000026;border-radius:6px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);margin-bottom:12px;padding:8px}.channel-fader-simple{align-items:center;display:flex;flex:1 1;justify-content:center}.channel-controls-simple{display:flex;gap:6px;width:100%}.channel-btn-simple{background:var(--gradient-dark-diagonal);border:2px solid var(--color-gray-medium);border-radius:4px;color:#888;cursor:pointer;flex:1 1;font-size:.75em;font-weight:700;padding:6px 8px;transition:all .2s}.channel-btn-simple:hover{background:linear-gradient(135deg,var(--color-gray) 0,var(--color-dark-alt) 100%);border-color:#555;color:var(--color-gray-light)}.channel-btn-simple.solo-btn.active{background:linear-gradient(135deg,orange,#ff8c00);border-color:orange;box-shadow:0 0 5px #ffa50040;color:var(--color-white)}.channel-btn-simple.mute-btn.active{background:linear-gradient(135deg,var(--color-red) 0,#b71c1c 100%);border-color:var(--color-red);box-shadow:0 0 5px #d32f2f40;color:var(--color-white)}.channel-name-simple{background:var(--overlay-black-30);border-radius:4px;color:var(--color-gray-light);font-size:.75em;font-weight:600;letter-spacing:1px;padding:4px 8px;text-align:center;text-transform:uppercase}.mixer-channel-master{border-left:2px solid #ff99004d;margin-left:15px;padding-left:15px}.channel-name-master{color:#f90;font-weight:700;width:100%}.section-title{color:#999;font-size:.9em;font-weight:700;letter-spacing:2px;margin-bottom:15px;text-align:center}.presets-controls{align-items:center}.presets-controls,.transport-controls{display:flex;gap:15px;justify-content:center}.transport-controls{border-radius:10px;margin-bottom:20px;padding:15px}.transport-button{align-items:center;border:3px solid;border-radius:10px;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30);cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:.9em;font-weight:700;gap:8px;height:80px;justify-content:center;letter-spacing:1px;min-width:120px;position:relative;transition:all .15s}.transport-button:active{box-shadow:0 2px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30);transform:translateY(2px)}.transport-icon{filter:drop-shadow(0 2px 4px var(--overlay-black-50));height:32px;width:32px}.button-label{font-size:.85em;font-weight:700;text-shadow:0 1px 2px var(--overlay-black-50)}.rec-button{background:var(--gradient-dark-diagonal);border-color:#555;color:#f30}.rec-button:hover{background:linear-gradient(180deg,var(--color-gray) 0,var(--color-dark-alt) 100%);border-color:#f30;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 15px #ff33004d}.rec-button.active{animation:pulse 1s infinite;background:linear-gradient(180deg,#f30,#c00);border-color:#f52;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-50),0 0 25px #f30c;color:var(--color-white)}.play-stop-button{background:linear-gradient(180deg,#2d5016,#1e3510);border:4px solid var(--color-green);box-shadow:0 5px 0 var(--overlay-black-50),inset 0 1px 2px #4caf504d,0 0 15px #4caf504d;color:var(--color-green);font-size:1.1em;height:90px;min-width:140px}.play-stop-button:hover{background:linear-gradient(180deg,#3d6620,#2d5016);border-color:#66bb6a;box-shadow:0 5px 0 var(--overlay-black-50),inset 0 -2px 8px var(--overlay-black-30),0 0 25px #4caf5080}.play-stop-button.active{background:linear-gradient(180deg,#66bb6a 0,var(--color-green) 100%);border-color:#81c784;box-shadow:0 3px 0 var(--overlay-black-50),inset 0 3px 10px var(--overlay-white-20),inset 0 -2px 8px var(--overlay-black-30),0 0 35px #4caf50cc;color:var(--color-white);transform:translateY(2px)}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.big-button{border:none;border-radius:8px;box-shadow:0 4px 10px var(--overlay-black-30);cursor:pointer;font-size:1.2em;font-weight:700;padding:15px 30px;transition:all .2s}.big-button.play{background:#0c4;color:var(--color-white)}.big-button.stop{background:#f30;color:var(--color-white)}.big-button.tap{background:#39f;color:var(--color-white)}.big-button.clear{background:#666;color:var(--color-white)}.big-button.random{background:#c0f;color:var(--color-white)}.big-button:hover{box-shadow:0 6px 15px var(--overlay-black-40);transform:translateY(-2px)}.big-button:active{transform:translateY(0)}.small-button{background:#444;border:none;border-radius:5px;color:var(--color-white);cursor:pointer;font-size:.9em;padding:10px 20px;transition:all .2s}.small-button:hover{background:#555}.groove-maker-toggle{background:var(--gradient-dark-diagonal);border:3px solid #555;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30);color:var(--color-orange);font-size:1em;transition:all .15s}.groove-maker-toggle:hover{background:linear-gradient(180deg,var(--color-gray) 0,var(--color-dark-alt) 100%);border-color:var(--color-orange);box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 20px #ff6b004d}.groove-maker-toggle.active{background:linear-gradient(180deg,#ff6b00,#f80);border-color:#fa0;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-50),0 0 25px #ff6b00cc;color:var(--color-white)}.bpm-tap-column{align-items:center;display:flex;flex-direction:column;gap:10px}.tap-button-compact{background:linear-gradient(180deg,#39f,#06c);border:3px solid #06c;border-radius:8px;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30);color:var(--color-white);cursor:pointer;font-size:.9em;font-weight:700;letter-spacing:1px;min-width:120px;padding:8px 24px;transition:all .15s}.tap-button-compact:hover{background:linear-gradient(180deg,#59f,#38e);border-color:#39f;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 20px #39f6}.tap-button-compact:active{background:linear-gradient(180deg,#ff6b00,#f80);border-color:#fa0;box-shadow:0 2px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 25px #ff6b00cc;transform:translateY(2px)}.groove-controls{gap:15px;justify-content:center;margin-bottom:5px;margin-top:2px;padding:8px}.groove-controls,.kit-selector-panel{align-items:center;border-radius:10px;display:flex}.kit-selector-panel{background:var(--overlay-black-30);border:2px solid #ff6b004d;flex-direction:column;gap:10px;margin-bottom:20px;padding:15px}.kit-selector-label{color:var(--color-orange);font-size:.9em;font-weight:700;letter-spacing:2px;text-transform:uppercase}.kit-selector-dropdown{background:var(--gradient-dark-diagonal);border:2px solid var(--color-orange);border-radius:8px;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 15px #ff6b004d;color:var(--color-white);cursor:pointer;font-size:1em;font-weight:600;padding:10px 15px;text-align:center;transition:all .2s;width:200px}.kit-selector-dropdown:hover{border-color:#fa0;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 20px #ffaa0080}.kit-selector-dropdown:focus{border-color:#fa0;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 25px #fa0c;outline:none}.kit-selector-dropdown option{background:var(--color-dark);color:var(--color-white);padding:10px}.groove-btn{align-items:center;border:3px solid;border-radius:10px;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30);cursor:pointer;display:flex;flex-direction:column;font-size:.9em;font-weight:700;gap:8px;height:80px;justify-content:center;letter-spacing:1px;min-width:100px;transition:all .15s}.groove-btn:active{box-shadow:0 2px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30);transform:translateY(2px)}.btn-icon-small{filter:drop-shadow(0 2px 4px var(--overlay-black-50));height:24px;width:24px}.rec-groove-btn{background:var(--gradient-dark-diagonal);border-color:#555;color:#f30}.rec-groove-btn:hover{background:linear-gradient(180deg,var(--color-gray) 0,var(--color-dark-alt) 100%);border-color:#f30;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 15px #ff33004d}.rec-groove-btn.active{animation:pulse 1s infinite;background:linear-gradient(180deg,#f30,#c00);border-color:#f52;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-50),0 0 25px #f30c;color:var(--color-white)}.clear-groove-btn{background:var(--gradient-dark-diagonal);border-color:var(--color-gray-medium);color:#888}.clear-groove-btn:hover{background:linear-gradient(180deg,var(--color-gray) 0,var(--color-dark-alt) 100%);border-color:var(--color-gray-medium);box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 15px #ffaa004d}.clear-groove-btn:active{background:linear-gradient(180deg,#fa0,#c80);border-color:#fc0;color:var(--color-black)}.groove-btn-small{align-items:center;background:var(--gradient-dark-diagonal);border:2px solid;border-color:var(--color-gray-medium);border-radius:6px;box-shadow:0 2px 0 var(--overlay-black-30);color:#888;cursor:pointer;display:flex;flex-direction:row;font-size:.75em;font-weight:700;gap:6px;justify-content:center;letter-spacing:1px;padding:8px 16px;transition:all .15s}.groove-btn-small .btn-icon-small{height:16px;width:16px}.groove-btn-small:hover{background:linear-gradient(180deg,var(--color-gray) 0,var(--color-dark-alt) 100%);box-shadow:0 3px 0 var(--overlay-black-30),0 0 10px #ffaa004d;transform:translateY(-1px)}.groove-btn-small:active{background:linear-gradient(180deg,#fa0,#c80);border-color:#fc0;box-shadow:0 1px 0 var(--overlay-black-30);color:var(--color-black);transform:translateY(1px)}.grooves-section{border-radius:8px;margin-top:20px;padding:15px}.grooves-title{color:var(--color-orange);font-size:1.1em;font-weight:700;letter-spacing:1px;margin-bottom:15px}.groove-save-controls{display:flex;gap:10px;margin-bottom:15px}.groove-name-input{background:var(--color-black-bg);border:2px solid var(--color-gray-medium);border-radius:5px;color:var(--color-white);flex:1 1;font-size:1em;padding:10px}.groove-name-input:focus{border-color:var(--color-orange);outline:none}.save-groove{background:var(--color-orange)!important;color:var(--color-white)!important}.save-groove:hover{background:#f80!important}.grooves-list{display:flex;flex-direction:column;gap:8px;max-height:600px;overflow-y:auto}.groove-item{align-items:center;background:var(--color-black-bg);border:1px solid var(--color-gray);border-radius:5px;display:flex;justify-content:space-between;padding:10px;transition:all .2s}.groove-item:hover{background:var(--color-dark);border-color:var(--color-orange)}.groove-info{display:flex;flex-direction:column;gap:4px}.groove-name{color:var(--color-white);font-size:1em;font-weight:700}.groove-meta{color:#888;font-size:.8em}.groove-actions{display:flex;gap:8px}.groove-load-btn{background:#0c4;border:none;border-radius:4px;color:var(--color-white);cursor:pointer;font-size:.85em;font-weight:700;padding:8px 16px;transition:all .2s}.groove-load-btn:hover{background:#0f6}.groove-delete-btn{background:#f30;border:none;border-radius:4px;color:var(--color-white);cursor:pointer;font-size:1em;font-weight:700;padding:8px 12px;transition:all .2s}.groove-delete-btn:hover{background:#f52}.beat-grid-container{background:var(--overlay-black-20);border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:15px}.beat-grid-row-edition{align-items:center;background:var(--overlay-black-30);border-radius:6px;display:flex;gap:10px;padding:8px;transition:all .2s}.beat-grid-row-edition:hover{background:var(--overlay-black-40)}.grid-row{display:flex;flex:1 1;gap:4px}.step-button{align-items:center;background:linear-gradient(135deg,var(--color-gray) 0,var(--color-dark-alt) 100%);border:3px solid var(--color-gray-medium);border-radius:6px;box-shadow:0 3px 0 var(--overlay-black-40),inset 0 -2px 4px var(--overlay-black-20);cursor:pointer;display:flex;height:50px;justify-content:center;position:relative;transition:all .15s ease;width:50px}.step-button:hover{background:linear-gradient(135deg,var(--color-gray-medium) 0,var(--color-gray) 100%);border-color:#888;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 4px var(--overlay-black-20);transform:translateY(-1px)}.step-button:active{box-shadow:0 1px 0 var(--overlay-black-40),inset 0 -2px 4px var(--overlay-black-30);transform:translateY(2px)}.step-button.active{background:linear-gradient(180deg,var(--color-white) 0,#e0e0e0 100%);border-color:#d0d0d0;box-shadow:0 0 8px #ff884480,inset 0 1px 0 var(--overlay-white-50)}.step-button.active .beat-marker{color:#f84;font-size:1.4em;text-shadow:0 0 5px #ff884480}.step-button.current{border-color:#2196f3;box-shadow:0 0 10px #2196f399}.step-button.active.current{border-color:#2196f3;box-shadow:0 0 15px #2196f3cc,inset 0 1px 0 var(--overlay-white-50)}.step-button.tapped{animation:tap-flash .2s ease-out;background:linear-gradient(180deg,#0f8,#0d7);border-color:#0f8;box-shadow:0 0 20px #0f8}@keyframes tap-flash{0%{box-shadow:0 0 20px #0f8;transform:scale(1)}50%{box-shadow:0 0 30px #0f8;transform:scale(1.1)}to{box-shadow:0 0 10px #00ff8880;transform:scale(1)}}.beat-marker{color:#666;font-size:.7em;font-weight:700;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none}.tap-button-labeled{align-items:center;background:var(--gradient-dark-diagonal);border:3px solid var(--color-gray-medium);border-radius:6px;box-shadow:0 3px 0 var(--overlay-black-40);cursor:pointer;display:flex;flex-direction:column;gap:4px;justify-content:center;min-width:90px;padding:12px 16px;transition:all .15s}.tap-button-labeled:hover{background:linear-gradient(135deg,var(--color-gray) 0,var(--color-dark-alt) 100%);border-color:#888;box-shadow:0 4px 0 var(--overlay-black-40);transform:translateY(-1px)}.tap-button-labeled:active{box-shadow:0 1px 0 var(--overlay-black-40);transform:translateY(2px)}.tap-button-labeled.tapping{background:linear-gradient(180deg,#ff6b00,#f80);border-color:#fa0;box-shadow:0 0 20px #ff6b00cc}.instrument-name-btn{color:var(--color-white);font-size:.9em;font-weight:700;letter-spacing:1px;text-transform:uppercase}.key-indicator{color:#888;font-size:.7em;font-weight:600}.clear-instrument-btn{align-items:center;background:var(--gradient-dark-diagonal);border:3px solid var(--color-gray-medium);border-radius:6px;box-shadow:0 3px 0 var(--overlay-black-40);cursor:pointer;display:flex;height:50px;justify-content:center;transition:all .15s;width:50px}.clear-instrument-btn .trash-icon{color:#888;height:22px;width:22px}.clear-instrument-btn:hover{background:linear-gradient(180deg,#f30,#c00);border-color:#f52;box-shadow:0 2px 0 var(--overlay-black-40),0 0 15px #ff330080;transform:scale(1.05)}.clear-instrument-btn:hover .trash-icon{color:var(--color-white)}.clear-instrument-btn:active{box-shadow:0 1px 0 var(--overlay-black-40);transform:translateY(2px) scale(1.05)}@media (max-width:1024px){.fullscreen-pedal.rhythm-box-section{height:auto;max-height:95vh;max-width:90vw;padding:10px;width:90vw}.expanded-pedal-container .pedal-header{padding:12px}.pedal-header>div{flex-direction:column;gap:10px}.pedal-title{font-size:1.2rem}.mixer-channels{flex-wrap:wrap;gap:20px;justify-content:center}.mixer-channel{min-width:auto;width:auto}.live-mixer-row{flex-wrap:wrap;gap:6px;justify-content:center}.live-mixer-channel{min-width:60px}.step-button{height:40px;width:40px}.live-grid-row{gap:3px}.live-step-numbers{gap:3px;margin-left:65px}.live-step-number{width:40px}}@media (max-width:768px){.fullscreen-pedal.rhythm-box-section{border-radius:0;height:100vh;max-height:100vh;max-width:100vw;padding:8px;width:100vw}.expanded-pedal-container{padding:8px}.expanded-pedal-container .pedal-header{margin-bottom:10px;padding:8px}.pedal-header>div:first-child{align-items:center;flex-direction:row;justify-content:space-between;margin-bottom:8px}.pedal-title{font-size:1rem}.close-expanded-btn{font-size:10px;padding:6px 12px}.pedal-header>div:nth-child(2){flex-direction:row;gap:12px;justify-content:center}.pedal-header .rhythm-indicator{height:50px;width:50px}.live-view-container{gap:4px;padding:4px 6px}.live-mixer-row{-webkit-overflow-scrolling:touch;gap:4px;overflow-x:auto;padding-bottom:8px}.live-mixer-channel{flex-direction:column-reverse;min-width:50px}.channel-fader-simple{height:100px}.live-instrument-name{font-size:.65em;min-width:50px;order:3;padding:4px 6px}.channel-controls-simple{order:2}.channel-fader-simple{order:1}.step-button{height:35px;width:35px}.live-grid-row{-webkit-overflow-scrolling:touch;gap:2px;overflow-x:auto}.live-step-numbers{gap:2px;margin-left:58px;overflow-x:auto}.live-step-number{font-size:.6em;width:35px}.live-beat-label{font-size:.75em;min-width:50px}.live-beat-row-complete{gap:8px}.live-beat-controls{flex-direction:column;gap:8px}.live-press-btn{font-size:.75em;min-height:48px;min-width:70px;padding:10px 14px}.clear-instrument-btn{height:40px;width:40px}.beat-grid-container{gap:6px;padding:8px}.beat-grid-row-edition{gap:6px;padding:6px}.grid-row{-webkit-overflow-scrolling:touch;gap:2px;overflow-x:auto}.mixer-container{padding:10px}.mixer-channels{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:12px;overflow-x:auto}.mixer-channel{gap:10px;min-width:90px;padding:10px}.mixer-container-simplified{padding:10px}.mixer-channels-simplified{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:10px;overflow-x:auto}.mixer-channel-simple{min-width:70px;padding:10px}.channel-name-simple{font-size:.65em}.groove-controls{gap:10px;padding:6px}.groove-btn-small{font-size:.7em;padding:6px 12px}.kit-selector-panel{gap:8px;padding:10px}.kit-selector-label{font-size:.8em}.kit-selector-dropdown{font-size:.9em;padding:8px 12px;width:160px}}@media (max-width:480px){.pedal-title{font-size:.9rem;letter-spacing:1px}.close-expanded-btn{font-size:9px;padding:4px 8px}.pedal-header>div:nth-child(2){gap:8px}.live-mixer-channel{flex-direction:column-reverse;min-width:45px}.live-instrument-name{font-size:.6em;order:3;padding:3px 4px}.channel-controls-simple{order:2}.channel-fader-simple{height:80px;order:1}.step-button{height:30px;width:30px}.live-step-number{font-size:.55em;width:30px}.live-step-numbers{margin-left:48px}.live-beat-label{font-size:.7em;min-width:40px}.live-press-btn{font-size:.7em;min-height:44px;min-width:60px;padding:8px 10px}.clear-instrument-btn{height:36px;width:36px}.mixer-channel{min-width:80px}.mixer-channel-simple{min-width:60px}.kit-selector-dropdown{font-size:.85em;width:140px}}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.looper-container{align-items:center;display:flex;flex-direction:column;gap:30px;padding:20px}.looper-display{align-items:center;display:flex;justify-content:center}.looper-circle{filter:drop-shadow(0 4px 20px var(--overlay-black-50))}.looper-controls{flex-wrap:wrap;gap:15px;margin:0 auto;max-width:500px;width:100%}.looper-button,.looper-controls{display:flex;justify-content:center}.looper-button{align-items:center;background:var(--gradient-dark-diagonal);border:4px solid var(--color-gray);border-radius:10px;box-shadow:-3px 3px 0 0 var(--overlay-black-30),-6px 6px 0 0 var(--overlay-black-20),-9px 9px 0 0 var(--overlay-black-10),-12px 12px 15px 0 var(--overlay-black-20),inset 0 -2px 8px var(--overlay-black-30);cursor:pointer;flex-direction:column;gap:8px;height:100px;margin-left:12px;position:relative;transition:all .15s ease;width:112px}.looper-button:hover{background:linear-gradient(135deg,var(--color-gray-dark) 0,var(--color-dark-alt) 100%);border-color:var(--color-gray-medium);box-shadow:-2px 2px 0 0 var(--overlay-black-30),-4px 4px 0 0 var(--overlay-black-20),-6px 6px 0 0 var(--overlay-black-10),-8px 8px 12px 0 var(--overlay-black-20),inset 0 -2px 8px var(--overlay-black-30);transform:translate(-1px,1px)}.looper-button:active{box-shadow:-1px 1px 0 0 var(--overlay-black-40),-4px 4px 8px 0 var(--overlay-black-30),inset 0 -2px 8px var(--overlay-black-30);height:92px;transform:translate(-8px,8px)}.looper-button:disabled{opacity:.3}.btn-icon{font-size:2em;font-weight:700}.btn-label{font-size:.75em;font-weight:700;letter-spacing:1px;text-transform:uppercase}.rec-btn{background:linear-gradient(180deg,#661e1e,#4d1616);border-color:red;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 1px 2px #ff00004d,0 0 15px #ff00004d;color:red}.rec-btn:hover:not(:disabled){background:linear-gradient(180deg,#8a2828,#661e1e);border-color:#f33;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 25px #ff000080}.rec-btn.active{animation:pulse 1s infinite;background:linear-gradient(180deg,red,#c00);border-color:#f33;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-50),0 0 30px #f00c;color:var(--color-white)}.play-btn{border-color:var(--color-green-bright);color:var(--color-green-bright)}.play-btn:hover{background:var(--gradient-dark);box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 15px #66bb6a66}.play-btn.active{background:linear-gradient(180deg,var(--color-green-bright) 0,var(--color-green) 100%);border-color:#81c784;box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-50),0 0 20px #66bb6a80;color:var(--color-white)}.play-btn:disabled{cursor:pointer;opacity:1}.stop-btn{border-color:var(--color-gray-medium);color:var(--color-gray-light)}.stop-btn:hover:not(:disabled){background:var(--gradient-dark);box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 15px #8886}.stop-btn.pending{animation:pulse 1.5s infinite;background:linear-gradient(180deg,#fa0,#f80);border-color:#fc3;color:var(--color-black)}.clear-btn{border-color:var(--color-orange);color:var(--color-orange)}.clear-btn:hover:not(:disabled){background:var(--gradient-dark);box-shadow:0 4px 0 var(--overlay-black-40),inset 0 -2px 8px var(--overlay-black-30),0 0 20px #fa06}.looper-bpm-control{align-items:center;border-radius:8px;display:flex;flex-direction:column;gap:10px;margin:20px 0;padding:15px}.looper-bpm-label{color:var(--color-red);font-size:.85em;font-weight:700;letter-spacing:1px}.looper-bpm-selector{align-items:center;display:flex;gap:15px}.looper-bpm-btn{background:var(--gradient-dark);border:2px solid var(--color-red);border-radius:5px;box-shadow:0 3px 0 var(--overlay-black-40);color:var(--color-red);cursor:pointer;font-size:1.5em;font-weight:700;height:35px;transition:all .15s;width:35px}.looper-bpm-btn:active:not(:disabled){box-shadow:0 1px 0 var(--overlay-black-40);transform:translateY(2px)}.looper-bpm-btn:disabled{opacity:.3}.looper-bpm-display{background:var(--color-black);border:2px solid var(--color-red);border-radius:5px;color:var(--color-red);font-size:2em;font-weight:800;min-width:80px;padding:5px 15px;text-align:center}.looper-options{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin:0 auto;max-width:600px;padding:0 15px;width:100%}.looper-option{align-items:center;color:var(--color-gray-light);cursor:pointer;display:flex;font-size:.95em;font-weight:500;gap:10px}.looper-option input[type=checkbox]{cursor:pointer;height:20px;width:20px}.looper-option span{-webkit-user-select:none;user-select:none}.measures-select{align-items:center;display:flex;gap:8px}.looper-measures-select{background:var(--color-dark);border:2px solid var(--color-gray-medium);border-radius:5px;color:var(--color-white);cursor:pointer;font-size:.9em;font-weight:600;padding:5px 10px}.looper-measures-select:focus{border-color:var(--color-red);outline:none}.sync-bpm-btn{background:var(--gradient-dark);border:2px solid var(--color-gray-medium);border-radius:8px;box-shadow:0 3px 0 var(--overlay-black-40);color:var(--color-blue);cursor:pointer;font-size:.9em;font-weight:700;letter-spacing:1px;padding:10px 20px;transition:all .2s}.sync-bpm-btn:hover{background:linear-gradient(180deg,var(--color-gray-dark) 0,var(--color-dark-alt) 100%);border-color:var(--color-blue);box-shadow:0 3px 0 var(--overlay-black-40),0 0 15px #1976d266}.sync-bpm-btn.active{background:linear-gradient(180deg,var(--color-blue) 0,var(--color-blue-dark) 100%);border-color:#42a5f5;box-shadow:0 3px 0 var(--overlay-black-40),0 0 20px #1976d299;color:var(--color-white)}.sync-bpm-btn:active{box-shadow:0 1px 0 var(--overlay-black-40);transform:translateY(2px)}.looper-info{align-items:center;background:var(--overlay-black-30);border-radius:8px;display:flex;flex-direction:column;gap:5px;padding:10px}.info-text{color:var(--color-gray-light);font-size:.85em;font-weight:600}.info-detail{color:var(--color-red);font-size:.9em;font-weight:700}.info-tip{color:var(--color-gray-medium);font-size:.75em;font-style:italic}.looper-master-volume{align-items:center;border-radius:8px;display:flex;flex-direction:column;gap:10px;margin:0 auto;max-width:400px;padding:20px;width:100%}.master-label{color:#39f;font-size:1.1em;font-weight:700;letter-spacing:2px}.master-slider{-webkit-appearance:none;border-radius:4px;cursor:pointer;height:8px;outline:none;transition:all .2s;width:100%}.master-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--color-orange);border-radius:50%;box-shadow:0 2px 8px #ff6b0080;cursor:pointer;height:24px;-webkit-transition:all .2s;transition:all .2s;width:24px}.master-slider::-webkit-slider-thumb:hover{box-shadow:0 4px 12px #ff6b00cc;transform:scale(1.2)}.master-slider::-moz-range-thumb{background:var(--color-orange);border:none;border-radius:50%;box-shadow:0 2px 8px #ff6b0080;cursor:pointer;height:24px;width:24px}.master-value{color:var(--color-white);font-size:1.2em;font-weight:700}.looper-panel{background:#0000;border:none;padding:0}.looper-panel h3{color:var(--color-orange);margin-bottom:15px}.looper-panel h4{color:var(--color-gray-light);font-size:.9em;margin-bottom:10px}.looper-input-group{display:flex;gap:10px}.loops-container{border-top:1px solid var(--color-gray);margin-top:20px;padding-top:15px}.loop-item{background:var(--color-dark);border:2px solid var(--color-gray);border-radius:5px;margin-bottom:10px;padding:12px}.loop-header{justify-content:space-between;margin-bottom:8px}.loop-header,.loop-info{align-items:center;display:flex}.loop-info{gap:10px}.loop-name{color:var(--color-white);font-size:1em;font-weight:700}.loop-tag{border-radius:12px;font-size:.75em;font-weight:700;padding:4px 10px;text-transform:uppercase}.tag-guitar{background:var(--color-orange)}.tag-bass,.tag-guitar{color:var(--color-white)}.tag-bass{background:#39f}.tag-voice{background:#0c4}.tag-drums,.tag-voice{color:var(--color-white)}.tag-drums{background:#f30}.tag-synth{background:#fa0}.tag-fx,.tag-synth{color:var(--color-black)}.tag-fx{background:var(--color-cyan)}.tag-other{background:var(--color-gray-medium);color:var(--color-white)}.loop-controls{display:flex;gap:8px}.loop-control-btn{background:var(--color-gray);border:none;border-radius:4px;cursor:pointer;font-size:1.1em;padding:8px 12px;transition:all .2s}.loop-control-btn:hover{background:var(--color-gray-medium)}.loop-control-btn.playing{background:#0c4}.loop-control-btn.delete{background:#f30}.loop-control-btn.delete:hover{background:#f52}.loop-progress-container{background:var(--color-gray);border-radius:3px;height:6px;overflow:hidden;width:100%}.loop-progress-bar{background:var(--gradient-orange);box-shadow:0 0 10px #ff6b0099;height:100%;transition:width .05s linear}.loop-waveform{align-items:center;background:var(--color-black-bg);border-radius:4px;display:flex;gap:1px;height:40px;justify-content:space-between;margin-bottom:8px;padding:4px}.waveform-bar{background:var(--color-orange);border-radius:1px;flex:1 1;min-height:2px;transition:opacity .1s}.loop-waveform-canvas{background:var(--color-black-bg);border-radius:4px;margin-bottom:8px;padding:4px;width:100%}.loop-name-input{background:var(--color-dark);border:2px solid var(--color-gray-medium);border-radius:5px;color:var(--color-white);flex:1 1;font-size:1em;padding:10px}.loop-name-input:focus{border-color:var(--color-orange);outline:none}.loop-name-edit{background:var(--color-dark);border:1px solid var(--color-gray);border-radius:4px;color:var(--color-white);flex:1 1;font-size:1em;font-weight:700;padding:6px 10px}.loop-name-edit:focus{border-color:var(--color-orange);outline:none}.loop-tag-select{border:2px solid var(--color-gray-medium);border-radius:5px;font-size:1em;min-width:120px;padding:10px}.loop-tag-edit,.loop-tag-select{background:var(--color-dark);color:var(--color-white);cursor:pointer}.loop-tag-edit{border:1px solid var(--color-gray);border-radius:4px;font-size:1.2em;padding:6px 10px}.loop-tag-edit:focus{border-color:var(--color-orange);outline:none}.overdub-checkbox{align-items:center;color:var(--color-gray-light);cursor:pointer;display:flex;gap:8px}.overdub-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.overdub-checkbox span{font-size:.95em}.loop-volume-control{border-top:1px solid var(--color-gray);margin-top:8px;padding-top:8px}.loop-volume-control label{color:var(--color-gray-light);display:block;font-size:.8em;margin-bottom:5px}.volume-slider{-webkit-appearance:none;background:var(--color-gray);border-radius:2px;cursor:pointer;height:4px;outline:none;width:100%}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--color-orange);border-radius:50%;cursor:pointer;height:14px;width:14px}.volume-slider::-moz-range-thumb{background:var(--color-orange);border:none;border-radius:50%;cursor:pointer;height:14px;width:14px}.loop-offset-control{border-top:1px solid var(--color-gray);margin-top:8px;padding-top:8px}.loop-offset-control label{color:var(--color-gray-light);display:block;font-size:.8em;margin-bottom:5px}.offset-slider{-webkit-appearance:none;background:var(--color-gray);border-radius:2px;cursor:pointer;height:4px;outline:none;width:100%}.offset-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--color-orange);border-radius:50%;cursor:pointer;height:14px;width:14px}.offset-slider::-moz-range-thumb{background:var(--color-orange);border:none;border-radius:50%;cursor:pointer;height:14px;width:14px}.latency-control{display:flex;flex:1 1;flex-direction:column;gap:5px;margin-left:20px}.latency-control label{color:var(--color-gray-light);font-size:.85em}.latency-slider{-webkit-appearance:none;background:var(--color-gray);border-radius:2px;cursor:pointer;height:4px;outline:none;width:100%}.latency-slider::-webkit-slider-thumb{-webkit-appearance:none;background:#39f;border-radius:50%;cursor:pointer;height:14px;width:14px}.latency-slider::-moz-range-thumb{background:#39f;border:none;border-radius:50%;cursor:pointer;height:14px;width:14px}.looper-button.recording{animation:pulse 1s infinite;background:#f30}.looper-button.waiting{animation:blink .5s infinite;background:#fa0}.recording-indicator{background:#f303;color:#f30}.recording-indicator,.waiting-indicator{border-radius:5px;font-size:.9em;font-weight:700;margin-top:10px;padding:10px}.waiting-indicator{background:#fa03;color:#fa0}.main-container>.keyboard-compact-container{grid-column:1/3;grid-row:1}.keyboard-compact-container{background:repeating-linear-gradient(90deg,#00000008 0,#00000008 1px,#0000 1px,#0000 2px),repeating-linear-gradient(0deg,#00000008 0,#00000008 1px,#0000 1px,#0000 2px),linear-gradient(180deg,var(--color-dark),var(--color-black));border:3px solid var(--color-gray-dark);border-radius:12px;box-shadow:-1px 1px 0 #3a3a3a,-2px 2px 0 #383838,-3px 3px 0 #363636,-4px 4px 0 #343434,-5px 5px 0 #323232,-6px 6px 0 #303030,-7px 7px 0 #2e2e2e,-8px 8px 0 #2c2c2c,-9px 9px 0 #2a2a2a,-10px 10px 0 #282828,-11px 11px 0 #262626,-12px 12px 0 #242424,-13px 13px 0 #222,-14px 14px 0 #202020,-15px 15px 0 var(--color-dark),-15px 15px 20px var(--overlay-black-40),0 10px 30px var(--overlay-black-50),inset 0 1px 3px var(--overlay-white-10),inset 0 -2px 5px var(--overlay-black-30);cursor:pointer;height:180px;margin:auto;padding:8px 12px;transition:all .3s ease;width:620px}.keyboard-compact-container:hover{box-shadow:-1px 1px 0 #3c3c3c,-2px 2px 0 #3a3a3a,-3px 3px 0 #383838,-4px 4px 0 #363636,-5px 5px 0 #343434,-6px 6px 0 #323232,-7px 7px 0 #303030,-8px 8px 0 #2e2e2e,-9px 9px 0 #2c2c2c,-10px 10px 0 #2a2a2a,-11px 11px 0 #282828,-12px 12px 0 #262626,-13px 13px 0 #242424,-14px 14px 0 #222,-15px 15px 0 #202020,-16px 16px 0 var(--color-dark),-16px 16px 25px #00000073,0 15px 40px #00000059,inset 0 2px 3px #ffffff26,inset 0 -2px 5px var(--overlay-black-40);transform:perspective(1000px) rotateX(2deg) translateY(-2px)}.keyboard-compact-keys{display:flex;height:140px;position:relative;width:100%}.keyboard-header{align-items:center;display:flex;justify-content:space-between}.keyboard-title{color:var(--color-gold-dark);font-size:1.5em;font-weight:800;letter-spacing:3px;margin:0;text-shadow:0 0 10px #daa520cc,0 1px 2px var(--overlay-black-80),0 0 20px #ffd70066;text-transform:uppercase}.tag-piano{background:#c0f;color:var(--color-white)}.piano-key{cursor:pointer;transition:all .05s ease}@media (max-width:1024px){.keyboard-compact-container{width:500px}}@media (max-width:768px){.keyboard-compact-container{height:140px;max-width:500px;width:calc(100vw - 40px)}.keyboard-compact-keys{height:100px}.piano-key{min-height:44px;min-width:44px}.keyboard-compact-container,.keyboard-expanded{max-width:100vw;overflow-x:hidden}.keyboard-header{flex-wrap:wrap}.keyboard-title{font-size:clamp(1rem,4vw,1.5rem)}}.bottom-navigation{display:none}@media (max-width:768px){.bottom-navigation{background:linear-gradient(180deg,#1a1a1a,#0a0a0a);border-top:1px solid #2a2a2a;border-top:1px solid var(--color-gray-dark,#2a2a2a);bottom:0;box-shadow:0 -4px 20px #00000080;display:flex;height:64px;left:0;margin:0;padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:fixed;right:0;z-index:1000}.bottom-nav-tab{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;color:#888;color:var(--color-text-secondary,#888);cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:4px;justify-content:center;min-height:48px;min-width:0;padding:8px 4px;transition:all .2s ease}.bottom-nav-tab:active{transform:scale(.95)}.bottom-nav-tab.active{color:#daa520;color:var(--color-brand,#daa520)}.bottom-nav-icon{align-items:center;display:flex;font-size:24px;justify-content:center;line-height:1;transition:transform .2s ease}.bottom-nav-icon svg{height:24px;width:24px}.bottom-nav-tab.active .bottom-nav-icon{transform:scale(1.1)}.music-assistant-trigger,.settings-trigger,.tools-trigger{display:none!important}.bottom-nav-label{font-size:11px;font-weight:500;letter-spacing:.3px;max-width:100%;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.App{padding-bottom:calc(64px + env(safe-area-inset-bottom))}@media (hover:hover){.bottom-nav-tab:hover{background:#ffffff0d;color:#bf8a03;color:var(--color-brand,#bf8a03)}}}@media (max-width:360px){.bottom-navigation{height:56px}.bottom-nav-icon{font-size:20px}.bottom-nav-icon svg{height:20px;width:20px}.bottom-nav-label{font-size:9px}}.mobile-studio-carousel{display:none}@media (max-width:767px){.mobile-studio-carousel{display:flex;flex-direction:column;gap:12px;height:auto;margin:0;padding:0;width:100%}.carousel-container{cursor:grab;overflow:hidden;position:relative;touch-action:pan-y;user-select:none;-webkit-user-select:none;width:100%}.carousel-container:active{cursor:grabbing}.carousel-track{display:flex;flex-direction:row;transition:transform .3s ease-out;width:100%}.carousel-slide{align-items:flex-start;display:flex;flex-shrink:0;justify-content:center;min-width:100%;padding:0 12px}.instrument-wrapper{margin:0 auto;max-width:500px;width:100%}.instrument-wrapper>*{width:100%}.carousel-navigation{align-items:center;display:flex;gap:16px;justify-content:space-between;padding:8px 16px;width:100%}.swipe-indicator{flex:1 1;min-width:0}.swipe-indicator.left{text-align:left}.swipe-indicator.right{text-align:right}.swipe-hint{color:#666;display:inline-block;font-size:11px;font-weight:500;letter-spacing:.5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.carousel-pagination{align-items:center;display:flex;flex-shrink:0;gap:6px;justify-content:center;margin:0;padding:0}.pagination-dot{background:#ffffff4d;border-radius:50%;height:3px;transition:all .2s ease;width:3px}.pagination-dot.active{background:#fff9;transform:scale(1.3)}.carousel-label{color:#daa520;color:var(--color-brand,#daa520);font-size:14px;font-weight:600;letter-spacing:1.5px;margin:0;padding:4px 0;text-align:center;text-transform:uppercase}.pedals-container,.pedals-wrapper{display:none!important}}@media (max-width:430px){.carousel-slide{padding:0 8px}.carousel-navigation{gap:12px;padding:8px 12px}.swipe-hint{font-size:10px}.pagination-dot{height:2px;width:2px}.carousel-label{font-size:12px}}@media (max-height:500px) and (max-width:767px){.mobile-studio-carousel{gap:8px}.carousel-pagination{padding:4px 0}.carousel-label{font-size:11px;padding:2px 0}}@media (max-width:430px){.stacked-slide{align-items:stretch;flex-direction:column}.stacked-instruments{display:flex;flex-direction:column;gap:12px;margin:0 auto;max-width:500px;width:100%}.stacked-instrument{flex-shrink:0;width:100%}.stacked-instrument:first-child{transform:scale(.95);transform-origin:top center}.stacked-instrument:last-child{margin-top:-10px}.carousel-slide.stacked-slide{align-items:center;padding:0 8px}.carousel-navigation{padding:12px}.pagination-dot{height:3px;width:3px}}.bottom-sheet-overlay{animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;top:0;z-index:1500}.bottom-sheet,.bottom-sheet-overlay{bottom:0;left:0;position:fixed;right:0}.bottom-sheet{background:linear-gradient(180deg,#1a1a1a,#0a0a0a);border-top-left-radius:20px;border-top-right-radius:20px;box-shadow:0 -4px 24px #000c;display:flex;flex-direction:column;max-height:100%;overflow:hidden;padding-bottom:env(safe-area-inset-bottom);z-index:1600}.bottom-sheet-handle-area{align-items:center;cursor:grab;display:flex;justify-content:center;padding:12px;touch-action:none;-webkit-user-select:none;user-select:none;width:100%}.bottom-sheet-handle-area:active{cursor:grabbing}.bottom-sheet-handle{background:#ffffff4d;border-radius:2px;height:4px;transition:background .2s ease;width:40px}.bottom-sheet-handle-area:hover .bottom-sheet-handle{background:#ffffff80}.bottom-sheet-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:12px 20px}.bottom-sheet-title{color:#fff;font-size:18px;font-weight:600;margin:0}.bottom-sheet-close{-webkit-tap-highlight-color:transparent;background:#0000;border:none;color:#888;cursor:pointer;font-size:24px;padding:4px 8px;transition:color .2s ease}.bottom-sheet-close:hover{color:#fff}.bottom-sheet-content{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:20px}.bottom-sheet-snap-indicators{background:#0003;display:flex;gap:8px;justify-content:center;padding:8px}.snap-indicator{-webkit-tap-highlight-color:transparent;background:#fff3;border:none;border-radius:50%;cursor:pointer;height:8px;padding:0;position:relative;transition:all .2s ease;width:8px}.snap-indicator:before{content:"";height:44px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:44px}.snap-indicator.active{background:#4caf50;background:var(--color-brand,#4caf50);transform:scale(1.3)}.snap-indicator:hover{background:#fff6}@media (min-width:769px){.bottom-sheet-overlay{display:none}.bottom-sheet{border-radius:0;box-shadow:none;max-height:none;position:relative;transform:none!important}.bottom-sheet-handle-area,.bottom-sheet-snap-indicators{display:none}}@media (max-height:500px) and (max-width:768px){.bottom-sheet-content{padding:12px}.bottom-sheet-header{padding:8px 16px}.bottom-sheet-title{font-size:16px}}.jam-library{background:linear-gradient(180deg,#0a0a0a,#1a1a1a);box-sizing:border-box;color:#fff;height:100vh;overflow-y:auto;padding:20px;width:100%}.jam-library-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.jam-library-header h2{color:#daa520;color:var(--color-brand,#daa520);font-size:28px;font-weight:700;margin:0}.jam-stats{color:#888;display:flex;font-size:14px;gap:8px}.jam-stats .separator{color:#444}.jam-library-controls{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.jam-search{width:100%}.jam-search-input{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;color:#fff;font-size:14px;padding:12px 16px;transition:all .2s ease;width:100%}.jam-search-input:focus{background:#ffffff14;border-color:#4caf50;border-color:var(--color-brand,#4caf50);outline:none}.jam-search-input::placeholder{color:#666}.jam-filters{display:flex;flex-wrap:wrap;gap:8px}.jam-filter-select,.jam-sort-select{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:13px;min-width:150px;padding:10px 12px;transition:all .2s ease}.jam-filter-select:hover,.jam-sort-select:hover{background:#ffffff14;border-color:#4caf50;border-color:var(--color-brand,#4caf50)}.jam-filter-select option,.jam-sort-select option{background:#1a1a1a}.jam-sort-order-btn{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;padding:10px 16px;transition:all .2s ease}.jam-sort-order-btn:hover{background:#ffffff14;border-color:#4caf50;border-color:var(--color-brand,#4caf50)}.jam-library-content{width:100%}.jam-empty,.jam-loading{color:#666;padding:60px 20px;text-align:center}.jam-empty-hint{color:#444;font-size:14px;margin-top:8px}.jam-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}@media (max-width:768px){.jam-grid{gap:16px;grid-template-columns:1fr}}.jam-card{background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border:1px solid #ffffff1a;border-radius:12px;cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease}.jam-card:hover{border-color:#4caf50;border-color:var(--color-brand,#4caf50);box-shadow:0 8px 24px #0006;transform:translateY(-4px)}.jam-card-cover{align-items:center;background:linear-gradient(135deg,#2a2a2a,#1a1a1a);display:flex;height:180px;justify-content:center;overflow:hidden;position:relative;width:100%}.jam-play-icon{color:#fff9;font-size:48px;transition:all .3s ease}.jam-card:hover .jam-play-icon{color:#4caf50;color:var(--color-brand,#4caf50);transform:scale(1.2)}.jam-duration-badge{background:#000c;border-radius:4px;bottom:8px;font-size:12px;font-weight:600;padding:4px 8px;position:absolute;right:8px}.jam-card-info{padding:16px}.jam-title{color:#fff;font-size:18px;font-weight:600;margin:0 0 4px}.jam-artist,.jam-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jam-artist{color:#888;font-size:14px;margin:0 0 12px}.jam-metadata{align-items:center;color:#666;display:flex;flex-wrap:wrap;font-size:12px;gap:6px;margin-bottom:8px}.jam-meta-item{white-space:nowrap}.jam-meta-separator{color:#444}.jam-tags{display:flex;flex-wrap:wrap;gap:6px}.jam-tag{background:#4caf501a;border-radius:4px;color:#4caf50;color:var(--color-brand,#4caf50);font-size:11px;font-weight:500;padding:4px 8px}.jam-card-actions{display:flex;gap:8px;padding:0 16px 16px}.jam-action-btn{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;padding:8px;transition:all .2s ease}.jam-action-btn:hover{background:#ffffff1a;transform:scale(1.05)}.jam-export-btn:hover{border-color:#2196f3;color:#2196f3}.jam-delete-btn:hover{border-color:#f44336;color:#f44336}.jam-player-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.jam-player-container{background:linear-gradient(180deg,#1a1a1a,#0a0a0a);border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 20px 60px #000c;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.jam-player-header{align-items:flex-start;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:24px}.jam-player-info h2{color:#fff;font-size:24px;font-weight:700;margin:0 0 4px}.jam-player-info p{color:#888;font-size:16px;margin:0}.jam-player-close{background:#0000;border:none;color:#888;cursor:pointer;font-size:24px;padding:4px 8px;transition:color .2s ease}.jam-player-close:hover{color:#fff}.jam-player-media{align-items:center;background:#0a0a0a;display:flex;justify-content:center;min-height:200px;width:100%}.jam-player-video{max-height:400px;width:100%}.jam-player-audio{height:60px;width:100%}.jam-player-error,.jam-player-loading{color:#666;padding:60px 20px;text-align:center}.jam-player-error{color:#f44336}.jam-player-controls{border-top:1px solid #ffffff1a;padding:24px}.jam-player-timeline{align-items:center;display:flex;gap:12px;margin-bottom:16px}.jam-time{color:#888;font-size:13px;min-width:40px;text-align:center}.jam-seek-slider{-webkit-appearance:none;appearance:none;background:#ffffff1a;border-radius:3px;cursor:pointer;flex:1 1;height:6px;outline:none}.jam-seek-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#4caf50;background:var(--color-brand,#4caf50);border-radius:50%;cursor:pointer;height:16px;width:16px}.jam-seek-slider::-moz-range-thumb{background:#4caf50;background:var(--color-brand,#4caf50);border:none;border-radius:50%;cursor:pointer;height:16px;width:16px}.jam-player-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.jam-control-btn{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:all .2s ease}.jam-control-btn:hover{background:#ffffff1a}.jam-control-btn:hover,.jam-play-btn{border-color:#4caf50;border-color:var(--color-brand,#4caf50)}.jam-play-btn{background:#4caf50;background:var(--color-brand,#4caf50);font-size:20px;padding:12px 24px}.jam-play-btn:hover{background:#45a049}.jam-delete-action:hover{border-color:#f44336;color:#f44336}.jam-volume-control{align-items:center;display:flex;flex:1 1;gap:8px;min-width:150px}.jam-volume-slider{-webkit-appearance:none;appearance:none;background:#ffffff1a;border-radius:2px;cursor:pointer;flex:1 1;height:4px;outline:none}.jam-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border-radius:50%;cursor:pointer;height:12px;width:12px}.jam-volume-slider::-moz-range-thumb{background:#fff;border:none;border-radius:50%;cursor:pointer;height:12px;width:12px}.jam-actions-group{display:flex;gap:8px;margin-left:auto}.jam-player-metadata{background:#0003;border-top:1px solid #ffffff1a;padding:24px}.jam-meta-row{align-items:center;display:flex;gap:12px;margin-bottom:12px}.jam-meta-row:last-child{margin-bottom:0}.jam-meta-label{color:#888;font-size:13px;font-weight:600;min-width:60px}.jam-meta-value{color:#fff;font-size:14px}.jam-meta-chords,.jam-meta-tags{display:flex;flex-wrap:wrap;gap:6px}.jam-meta-tag{background:#4caf501a;color:#4caf50;color:var(--color-brand,#4caf50)}.jam-meta-chord,.jam-meta-tag{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px}.jam-meta-chord{background:#ffffff0d;border:1px solid #ffffff1a;color:#fff}@media (max-width:768px){.jam-library{padding:12px}.jam-library-header h2{font-size:22px}.jam-filters{flex-direction:column}.jam-filter-select,.jam-sort-select{min-width:100%}.jam-player-container{border-radius:0;max-height:100vh}.jam-player-header{padding:16px}.jam-player-info h2{font-size:20px}.jam-player-controls{padding:16px}.jam-player-buttons{align-items:stretch;flex-direction:column}.jam-volume-control{width:100%}.jam-actions-group{margin-left:0;width:100%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideRight{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.jam-library{animation:slideUp .3s ease-out}.mixer-container,.settings-container{animation:fadeIn .3s ease-out}.bottom-navigation{animation:slideUp .4s ease-out}.carousel-track{transition:transform .3s cubic-bezier(.4,0,.2,1)}@media (max-width:768px){.App>div{animation:fadeIn .2s ease-out}.bottom-sheet{animation:slideUp .3s cubic-bezier(.4,0,.2,1)}.pagination-dot{transition:all .2s cubic-bezier(.4,0,.2,1)}.instrument-wrapper{animation:fadeIn .3s ease-out}}.panel-overlay,.side-panel{animation:slideLeft .3s ease-out}.expanded-pedal-overlay{animation:fadeIn .2s ease-out}.expanded-pedal-container{animation:scaleIn .3s cubic-bezier(.4,0,.2,1)}@media (max-width:768px){.footswitch:active,.jam-action-btn:active,button:active{transform:scale(.95);transition:transform .1s ease}}@media (hover:hover){.footswitch,.jam-action-btn,.jam-card,button{transition:all .2s ease}.footswitch:hover,button:hover{transform:translateY(-2px)}}@keyframes spin{to{transform:rotate(1turn)}}.loading-spinner{animation:spin 1s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading-pulse{animation:pulse 1.5s ease-in-out infinite}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{animation:shimmer 2s infinite;background:linear-gradient(90deg,#ffffff05,#ffffff0d 40px,#ffffff05 80px);background-size:1000px 100%}.bottom-sheet,.carousel-track,.expanded-pedal-container,.jam-library,.mobile-studio-carousel{backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0);will-change:transform}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/*# sourceMappingURL=main.7f0a79ca.css.map*/