.CircleOfFifths-module__JLRvmW__wrapper{width:100%;max-width:220px;margin:0 auto;position:relative}.CircleOfFifths-module__JLRvmW__svg{width:100%;height:auto;display:block}.CircleOfFifths-module__JLRvmW__segment{cursor:pointer}.CircleOfFifths-module__JLRvmW__wedge{fill:var(--panel-recessed);stroke:var(--groove);stroke-width:.6px;transition:fill .1s}.CircleOfFifths-module__JLRvmW__segment:hover .CircleOfFifths-module__JLRvmW__wedge{fill:#221d17}.CircleOfFifths-module__JLRvmW__wedgeSelected,.CircleOfFifths-module__JLRvmW__segment:hover .CircleOfFifths-module__JLRvmW__wedgeSelected{fill:var(--amber)}.CircleOfFifths-module__JLRvmW__wedgeDominant,.CircleOfFifths-module__JLRvmW__wedgeSubdominant{fill:#3a2f22;stroke:var(--amber-dim);stroke-width:1px}.CircleOfFifths-module__JLRvmW__segment:hover .CircleOfFifths-module__JLRvmW__wedgeDominant,.CircleOfFifths-module__JLRvmW__segment:hover .CircleOfFifths-module__JLRvmW__wedgeSubdominant{fill:#463827}.CircleOfFifths-module__JLRvmW__label{font-family:var(--font-mono);fill:var(--cream);text-anchor:middle;dominant-baseline:middle;pointer-events:none;font-size:7px}.CircleOfFifths-module__JLRvmW__labelSelected{fill:var(--groove);font-weight:700}.CircleOfFifths-module__JLRvmW__minorLabel{font-family:var(--font-mono);fill:var(--cream);opacity:.55;text-anchor:middle;dominant-baseline:middle;pointer-events:none;font-size:4.6px}.CircleOfFifths-module__JLRvmW__center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:1px;display:flex;position:absolute;inset:0}.CircleOfFifths-module__JLRvmW__centerLabel{letter-spacing:1px;text-transform:uppercase;opacity:.5;font-size:8px}.CircleOfFifths-module__JLRvmW__centerValue{font-family:var(--font-display);letter-spacing:1px;color:var(--amber);font-size:20px;line-height:1}.CircleOfFifths-module__JLRvmW__centerHint{font-family:var(--font-mono);opacity:.55;margin-top:2px;font-size:8px}
.ChordPalette-module__vBR6zq__palette{flex-direction:column;gap:16px;height:100%;display:flex}.ChordPalette-module__vBR6zq__display{background:var(--panel-recessed);border:1px solid var(--border);min-height:46px;font-family:var(--font-display);letter-spacing:.03em;color:var(--amber);text-shadow:0 0 12px #f0a52f59;white-space:nowrap;border-radius:8px;align-items:center;gap:10px;padding:12px 14px;font-size:20px;font-weight:600;display:flex;overflow-x:auto;box-shadow:inset 0 2px 5px #000000b3,inset 0 0 0 1px #f0a52f1f}.ChordPalette-module__vBR6zq__display:before{content:"";background:var(--amber);border-radius:2px;flex:none;width:3px;height:20px;box-shadow:0 0 8px #f0a52fb3}.ChordPalette-module__vBR6zq__displayEmpty{color:var(--switch-label);text-shadow:none;font-size:16px}.ChordPalette-module__vBR6zq__invalidTokens{color:#e2734f;font-family:var(--font-mono);font-size:12px}.ChordPalette-module__vBR6zq__grid{flex-direction:column;flex:1;gap:16px;display:flex}.ChordPalette-module__vBR6zq__section{flex-direction:column;gap:10px;display:flex}.ChordPalette-module__vBR6zq__eyebrow{font-family:var(--font-mono);letter-spacing:.22em;color:var(--switch-label);text-transform:uppercase;font-size:10px}.ChordPalette-module__vBR6zq__rootGrid{grid-template-columns:repeat(6,1fr);gap:7px;display:grid}.ChordPalette-module__vBR6zq__rootButton{color:#c7bca9;font-family:var(--font-display);letter-spacing:.04em;cursor:pointer;background:linear-gradient(#2c2721,#1d1812);border:1px solid #100c09;border-radius:6px;padding:9px 0;font-size:13px;font-weight:600;transition:color 80ms;box-shadow:inset 0 1px #ffecc80d,0 2px 3px #00000080}.ChordPalette-module__vBR6zq__rootButton:hover{color:var(--amber)}.ChordPalette-module__vBR6zq__rootButton:active{transform:translateY(1px)}.ChordPalette-module__vBR6zq__rootButtonActive,.ChordPalette-module__vBR6zq__rootButtonActive:hover{color:var(--on-accent);background:linear-gradient(180deg, var(--gold-light), var(--amber));border-color:#c47d15;box-shadow:inset 0 1px #fff6,0 2px 8px #f0a52f66,0 0 14px #f0a52f4d}.ChordPalette-module__vBR6zq__circleToggle{color:var(--amber);font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:12px;font-weight:600}.ChordPalette-module__vBR6zq__circleToggle:hover{color:var(--gold-light)}.ChordPalette-module__vBR6zq__circlePanel{border:1px solid var(--border);background:#00000040;border-radius:6px;flex-direction:column;gap:8px;padding:10px;display:flex}.ChordPalette-module__vBR6zq__circleHelp{color:var(--text-2);font-size:11px;line-height:1.5}.ChordPalette-module__vBR6zq__circleHelp strong{color:var(--amber);font-weight:600}.ChordPalette-module__vBR6zq__qualityGrid{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.ChordPalette-module__vBR6zq__button{color:#c2b7a5;font-family:var(--font-body);letter-spacing:.02em;cursor:pointer;background:linear-gradient(#2a2620,#1c1712);border:1px solid #100c09;border-radius:6px;padding:9px 0;font-size:12.5px;font-weight:600;transition:color 80ms;box-shadow:inset 0 1px #ffecc80d,0 2px 3px #00000080}.ChordPalette-module__vBR6zq__button:hover{color:#f7c268}.ChordPalette-module__vBR6zq__button:active{transform:translateY(1px)}.ChordPalette-module__vBR6zq__actions{gap:9px;margin-top:auto;padding-top:6px;display:flex}.ChordPalette-module__vBR6zq__actionButton{border:1px solid var(--border);color:#c2b7a5;font-family:var(--font-body);cursor:pointer;background:linear-gradient(#2a241c,#181310);border-radius:7px;flex:1;padding:10px 0;font-size:13px;font-weight:600;transition:color 80ms,border-color 80ms;box-shadow:inset 0 1px #ffecc80f}.ChordPalette-module__vBR6zq__actionButton:hover{color:#f7c268;border-color:var(--amber-dim)}.ChordPalette-module__vBR6zq__actionButton:active{transform:translateY(1px)}.ChordPalette-module__vBR6zq__presetList{flex-direction:column;gap:6px;display:flex}.ChordPalette-module__vBR6zq__presetButton{text-align:left;border:1px solid var(--border);color:#c2b7a5;font-family:var(--font-body);cursor:pointer;background:linear-gradient(#2a241c,#181310);border-radius:6px;padding:8px 12px;font-size:12.5px;font-weight:600;transition:color 80ms,border-color 80ms;box-shadow:inset 0 1px #ffecc80d}.ChordPalette-module__vBR6zq__presetButton:hover{color:#f7c268;border-color:var(--amber-dim)}.ChordPalette-module__vBR6zq__presetButton:active{transform:translateY(1px)}
.Fretboard-module__eF_hka__board{flex-direction:column;gap:14px;width:100%;display:flex}.Fretboard-module__eF_hka__wrapper{border-radius:9px;width:100%;overflow-x:auto;box-shadow:0 6px 18px #0009,inset 0 0 40px #3c230a66}.Fretboard-module__eF_hka__svg{width:100%;height:auto;display:block}.Fretboard-module__eF_hka__faintNote{font-family:var(--font-mono);fill:#6d5a3e;text-anchor:middle;dominant-baseline:middle;pointer-events:none;font-size:9px}.Fretboard-module__eF_hka__dot{filter:drop-shadow(0 2px 5px #0000008c)}.Fretboard-module__eF_hka__dotLabel{font-family:var(--font-display);text-anchor:middle;dominant-baseline:middle;pointer-events:none;font-size:11px;font-weight:700}.Fretboard-module__eF_hka__fretLabel{font-family:var(--font-mono);fill:#3d2a12;text-anchor:middle;font-size:10px;font-weight:600}.Fretboard-module__eF_hka__legend{border-top:1px solid #ffecc80f;gap:20px;padding-top:14px;display:flex}.Fretboard-module__eF_hka__legendItem{font-family:var(--font-mono);color:var(--text-2);align-items:center;gap:8px;font-size:11px;display:flex}.Fretboard-module__eF_hka__legendSwatch{border-radius:50%;width:13px;height:13px;box-shadow:inset 0 1px 1px #fff6}
.InfoPanel-module__1vGB3q__panel{flex:1;align-items:center;gap:22px;min-width:0;display:flex}.InfoPanel-module__1vGB3q__eyebrow{font-family:var(--font-mono);letter-spacing:.2em;color:var(--switch-label);text-transform:uppercase;margin-bottom:5px;font-size:10px;display:block}.InfoPanel-module__1vGB3q__chordBlock{flex-direction:column;gap:6px;display:flex}.InfoPanel-module__1vGB3q__chordRow{align-items:baseline;gap:12px;display:flex}.InfoPanel-module__1vGB3q__chordName{font-family:var(--font-display);color:var(--amber);text-shadow:0 0 22px #f0a52f66;font-size:40px;font-weight:700;line-height:.85}.InfoPanel-module__1vGB3q__chordNotes{gap:6px;display:flex}.InfoPanel-module__1vGB3q__noteChip{font-family:var(--font-mono);color:#cabfad;background:var(--panel-recessed);border:1px solid #ffecc814;border-radius:5px;padding:4px 9px;font-size:12px}.InfoPanel-module__1vGB3q__divider{background:linear-gradient(#0000,#ffecc81f,#0000);align-self:stretch;width:1px}.InfoPanel-module__1vGB3q__counters{gap:26px;margin-left:auto;display:flex}.InfoPanel-module__1vGB3q__counter{min-width:0}.InfoPanel-module__1vGB3q__value{font-family:var(--font-display);color:var(--cream-2);font-size:22px;font-weight:600}.InfoPanel-module__1vGB3q__valueSub{color:var(--switch-label);font-size:14px}.InfoPanel-module__1vGB3q__valueMuted{font-family:var(--font-display);color:var(--switch-label);font-size:22px;font-weight:600}.InfoPanel-module__1vGB3q__valueScale{font-family:var(--font-display);color:var(--cream-2);font-size:18px;font-weight:600}
.ModeSelector-module__pbI8vq__wrapper{flex-direction:column;flex:1;gap:9px;min-width:240px;display:flex}.ModeSelector-module__pbI8vq__eyebrow{font-family:var(--font-mono);letter-spacing:.2em;color:var(--switch-label);text-transform:uppercase;font-size:10px}.ModeSelector-module__pbI8vq__options{background:#100d0a;border-radius:9px;gap:8px;padding:4px;display:flex;box-shadow:inset 0 1px 3px #0009}.ModeSelector-module__pbI8vq__option{color:#b6ab99;font-family:var(--font-body);letter-spacing:.02em;text-align:center;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:9px 12px;font-size:13px;font-weight:600;transition:color 80ms,background 80ms}.ModeSelector-module__pbI8vq__option:hover{color:var(--cream)}.ModeSelector-module__pbI8vq__option:active{transform:translateY(1px)}.ModeSelector-module__pbI8vq__optionSelected{color:var(--on-accent);background:linear-gradient(180deg, var(--gold-light), var(--amber));box-shadow:0 2px 6px #f0a52f59,inset 0 1px #fff6}.ModeSelector-module__pbI8vq__optionSelected:hover{color:var(--on-accent)}
.ProgressionTimeline-module__6LCniq__timeline{flex-wrap:nowrap;gap:9px;padding-bottom:2px;display:flex;overflow-x:auto}.ProgressionTimeline-module__6LCniq__step{border:1px solid var(--border);color:#cabfad;font-family:var(--font-display);cursor:pointer;background:linear-gradient(#2a241c,#181310);border-radius:8px;flex:none;padding:9px 18px;font-size:17px;font-weight:600;transition:border-color .12s,color .12s;box-shadow:inset 0 1px #ffecc80f}.ProgressionTimeline-module__6LCniq__step:hover{border-color:var(--amber-dim);color:#f7c268}.ProgressionTimeline-module__6LCniq__step:active{transform:translateY(1px)}.ProgressionTimeline-module__6LCniq__stepCurrent,.ProgressionTimeline-module__6LCniq__stepCurrent:hover{color:var(--on-accent);background:linear-gradient(180deg, var(--gold-light), var(--amber));border-color:#c47d15;box-shadow:inset 0 1px #fff6,0 3px 8px #f0a52f59}.ProgressionTimeline-module__6LCniq__empty{font-family:var(--font-mono);color:var(--switch-label);font-size:13px}
.Knob-module__SR7akW__knobControl{flex-direction:column;align-items:center;gap:5px;display:flex}.Knob-module__SR7akW__label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--switch-label);font-size:10px}.Knob-module__SR7akW__dialWrapper{cursor:ns-resize;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.Knob-module__SR7akW__dialWrapper:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:50%}.Knob-module__SR7akW__dialSvg{width:100%;height:100%}.Knob-module__SR7akW__arcTrack{fill:none;stroke:#00000073;stroke-width:5px;stroke-linecap:round}.Knob-module__SR7akW__arcValue{fill:none;stroke:var(--amber);stroke-width:5px;stroke-linecap:round;transition:stroke .1s}.Knob-module__SR7akW__bezel{filter:drop-shadow(0 1px 1.5px #0000008c)}.Knob-module__SR7akW__cap{stroke:#0000008c;stroke-width:.75px}.Knob-module__SR7akW__pointer{stroke:var(--gold-bright);stroke-width:3.5px;stroke-linecap:round;filter:drop-shadow(0 0 4px #f0a52fe6)}.Knob-module__SR7akW__dialWrapperActive .Knob-module__SR7akW__arcValue{filter:drop-shadow(0 0 3px #eaa23c99)}.Knob-module__SR7akW__value{font-family:var(--font-mono);color:var(--amber);letter-spacing:.5px;text-shadow:0 0 10px #f0a52f80;font-size:15px;font-weight:700}
.TransportControls-module__DJHRya__transport{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.TransportControls-module__DJHRya__buttons{align-items:center;gap:9px;display:flex}.TransportControls-module__DJHRya__transportButton{border:1px solid var(--border);color:#b6ab99;cursor:pointer;background:linear-gradient(#2a241c,#181310);border-radius:9px;width:46px;height:46px;font-size:16px;transition:box-shadow 80ms,transform 80ms,color 80ms;box-shadow:inset 0 1px #ffecc814,0 3px 5px #00000080}.TransportControls-module__DJHRya__transportButtonPlay{color:var(--amber);text-shadow:0 0 8px #f0a52f99;background:linear-gradient(#332c22,#1d1712);box-shadow:inset 0 1px #ffecc81f,0 3px 5px #00000080}.TransportControls-module__DJHRya__transportButton:hover:not(:disabled){color:var(--amber)}.TransportControls-module__DJHRya__transportButton:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 2px 4px #000000b3}.TransportControls-module__DJHRya__transportButton:disabled{opacity:.35;cursor:default}.TransportControls-module__DJHRya__faderGroup{flex-direction:column;gap:9px;display:flex}.TransportControls-module__DJHRya__eyebrow{font-family:var(--font-mono);letter-spacing:.2em;color:var(--switch-label);text-transform:uppercase;font-size:10px}.TransportControls-module__DJHRya__beatLamps{align-items:center;gap:9px;display:flex}.TransportControls-module__DJHRya__beatLamp{background:var(--led-off);width:14px;height:14px;box-shadow:inset 0 1px 3px #000c, inset 0 0 0 1px var(--led-off-ring);border-radius:50%}.TransportControls-module__DJHRya__beatLampLit{background:radial-gradient(circle at 35% 30%, var(--gold-bright), var(--amber));animation:.2s ease-out TransportControls-module__DJHRya__beat-pop;box-shadow:0 0 10px #f0a52fcc,inset 0 1px 1px #ffffff80}@keyframes TransportControls-module__DJHRya__beat-pop{0%{transform:scale(1.5)}to{transform:scale(1)}}.TransportControls-module__DJHRya__toggle{border:1px solid var(--border);height:42px;color:var(--switch-label);font-family:var(--font-body);letter-spacing:.02em;cursor:pointer;background:linear-gradient(#2a241c,#181310);border-radius:8px;padding:0 18px;font-size:14px;font-weight:600;transition:box-shadow 80ms,color 80ms,border-color 80ms;box-shadow:inset 0 1px #ffecc80f,0 3px 6px #0006}.TransportControls-module__DJHRya__toggle:active{transform:translateY(1px)}.TransportControls-module__DJHRya__toggleActive{border-color:var(--amber-dim);color:#f7c268;text-shadow:0 0 8px #f7c26866;background:linear-gradient(#241d13,#1a140c);box-shadow:inset 0 0 14px #f0a52f29,0 3px 6px #0006}
.page-module__wtSYKa__page{z-index:1;min-height:100dvh;font-family:var(--font-body);flex-direction:column;gap:16px;padding:22px;display:flex;position:relative}.page-module__wtSYKa__header{flex:none;justify-content:space-between;align-items:center;padding:0 4px;display:flex}.page-module__wtSYKa__brand{font-family:var(--font-display);letter-spacing:.06em;color:var(--cream);text-shadow:0 1px #000,0 2px 6px #0009;align-items:baseline;gap:12px;font-size:30px;font-weight:700;line-height:1;display:flex}.page-module__wtSYKa__brand .page-module__wtSYKa__brandAccent{font-family:var(--font-mono);letter-spacing:.42em;color:var(--amber);text-shadow:0 0 12px #f0a52f73;font-size:11px;font-weight:500}.page-module__wtSYKa__status{border:1px solid var(--border);background:linear-gradient(#1c1813,#131009);border-radius:20px;align-items:center;gap:9px;padding:7px 13px;display:flex;box-shadow:inset 0 1px #ffecc80d}.page-module__wtSYKa__statusLed{background:var(--led-off);width:8px;height:8px;box-shadow:inset 0 0 0 1px var(--led-off-ring);border-radius:50%}.page-module__wtSYKa__statusLedOk{background:var(--led-green);animation:2.4s ease-in-out infinite page-module__wtSYKa__ledPulse}.page-module__wtSYKa__statusLedError{background:#d8654f;box-shadow:0 0 6px 1px #d8654f99}.page-module__wtSYKa__statusLabel{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-2);font-size:11px}.page-module__wtSYKa__panel{background:linear-gradient(180deg, var(--panel-top), var(--panel-bottom));border:1px solid var(--border);border-radius:var(--shell-radius);padding:18px;position:relative;box-shadow:inset 0 1px #ffe6b40f,inset 0 -30px 60px #00000059,0 10px 30px #0000008c}.page-module__wtSYKa__eyebrow{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--switch-label);margin-bottom:10px;font-size:10px;display:block}.page-module__wtSYKa__transportBar{background:radial-gradient(circle at 35% 30%, #5a5148, #211d18) 10px 9px / 9px 9px no-repeat, radial-gradient(circle at 35% 30%, #5a5148, #211d18) calc(100% - 10px) 9px / 9px 9px no-repeat, radial-gradient(circle at 35% 30%, #5a5148, #211d18) 10px calc(100% - 9px) / 9px 9px no-repeat, radial-gradient(circle at 35% 30%, #5a5148, #211d18) calc(100% - 10px) calc(100% - 9px) / 9px 9px no-repeat, linear-gradient(180deg, var(--panel-top), var(--panel-bottom));flex-wrap:wrap;flex:none;align-items:center;gap:28px;padding:20px 24px;display:flex}.page-module__wtSYKa__transportDivider{background:linear-gradient(#0000,#f0a52f38,#0000);align-self:stretch;width:1px;margin:0 2px}.page-module__wtSYKa__main{flex:auto;grid-template-columns:340px minmax(0,1fr);align-items:stretch;gap:16px;min-height:0;display:grid}.page-module__wtSYKa__paletteColumn{flex-direction:column;min-height:0;display:flex}.page-module__wtSYKa__centerColumn{flex-direction:column;gap:16px;min-height:0;display:flex}.page-module__wtSYKa__fretboardPanel{flex-direction:column;flex:auto;justify-content:center;min-height:0;padding:22px;display:flex}.page-module__wtSYKa__infoStrip{flex-wrap:wrap;flex:none;align-items:center;gap:22px;padding:16px 20px;display:flex}.page-module__wtSYKa__progBlock{flex-direction:column;gap:10px;display:flex}.page-module__wtSYKa__progBlock .page-module__wtSYKa__eyebrow{margin-bottom:0}.page-module__wtSYKa__stripDivider{background:linear-gradient(#0000,#ffecc81f,#0000);align-self:stretch;width:1px}@media (max-width:1180px){.page-module__wtSYKa__main{grid-template-columns:300px minmax(0,1fr)}}@media (max-width:920px){.page-module__wtSYKa__main{grid-template-columns:1fr}.page-module__wtSYKa__infoStrip{justify-content:flex-start}}
