:root{--gl-bg-atelier:#0d0d0d;--gl-bg-panel:#1a1412;--gl-bg-card:#191919;--gl-bg-chip:#2c211c;--gl-border-subtle:#d8a94a26;--gl-border-focus:#d8a94a;--gl-text-ivory:#fff;--gl-text-muted:#a1a1a1;--gl-text-gold:#d8a94a;--gl-shadow-soft:0 4px 16px #0006}.guitar-panel-chords,.guitar-panel-scales,.guitar-panel-progressions,.guitar-panel-circle{background:var(--gl-bg-panel);border:1px solid var(--gl-border-subtle);color:var(--gl-text-ivory);border-radius:12px;flex-direction:column;gap:16px;padding:18px;font-family:inherit;display:flex}.chords-controls-row,.scales-selectors-row,.progressions-header-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.root-selector-group,.quality-selector-group,.scale-type-group{flex-wrap:wrap;gap:4px;display:flex}.btn-chip,.btn-mode,.btn-toggle,.btn-box-num{background:var(--gl-bg-chip);border:1px solid var(--gl-border-subtle);color:var(--gl-text-muted);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .15s}.btn-chip:hover,.btn-mode:hover,.btn-toggle:hover,.btn-box-num:hover{color:var(--gl-text-ivory);border-color:var(--gl-border-focus)}.btn-chip.is-active,.btn-mode.is-active,.btn-toggle.is-active,.btn-box-num.is-active{background:var(--gl-border-focus);color:#0d0d0d;border-color:var(--gl-border-focus);font-weight:600;box-shadow:0 0 10px #d8a94a59}.chords-display-row{align-items:flex-start;gap:24px;display:flex}.chord-diagram-wrapper{background:var(--gl-bg-card);border:1px solid var(--gl-border-subtle);border-radius:8px;justify-content:center;padding:12px;display:flex}.chord-box-svg{color:var(--gl-text-gold)}.chord-title{fill:var(--gl-text-ivory);font-size:16px;font-weight:700}.fret-num{fill:var(--gl-text-muted);font-size:11px}.marker-mute{fill:#e06c75;font-size:14px;font-weight:700}.voicing-options-column{flex-direction:column;flex:1;gap:16px;display:flex}.voicing-chips-list{flex-wrap:wrap;gap:8px;display:flex}.btn-voicing-chip{background:var(--gl-bg-chip);border:1px solid var(--gl-border-subtle);color:var(--gl-text-ivory);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;transition:all .15s;display:flex}.btn-voicing-chip.is-active{border-color:var(--gl-border-focus);background:#d8a94a26}.fret-badge{color:var(--gl-text-gold);background:#0000004d;border-radius:4px;padding:2px 6px;font-size:10px}.chord-actions-row,.progressions-transport-row{align-items:center;gap:12px;display:flex}.btn-action,.btn-transport-play{border:1px solid var(--gl-border-focus);color:var(--gl-text-gold);cursor:pointer;background:#2a1f19;border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.btn-action:hover,.btn-transport-play:hover{background:var(--gl-border-focus);color:#0d0d0d;box-shadow:0 0 12px #d8a94a66}.btn-transport-play.is-playing{color:#fff;background:#e06c75;border-color:#e06c75}.progression-chords-sequence{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;display:grid}.prog-chord-card{background:var(--gl-bg-card);border:1px solid var(--gl-border-subtle);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;transition:all .2s;display:flex}.prog-chord-card.is-active{border-color:var(--gl-border-focus);background:#d8a94a33;transform:translateY(-2px);box-shadow:0 4px 14px #d8a94a40}.card-num{color:var(--gl-text-muted);font-size:11px}.card-name{color:var(--gl-text-ivory);font-size:18px;font-weight:700}.card-bars{color:var(--gl-text-gold);font-size:10px}.guitar-panel-circle{flex-direction:row;align-items:center;gap:32px}.circle-diatonic-column{flex:1}.diatonic-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.diatonic-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;display:grid}.btn-diatonic-chord{background:var(--gl-bg-card);border:1px solid var(--gl-border-subtle);color:var(--gl-text-ivory);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;transition:all .15s;display:flex}.btn-diatonic-chord:hover{border-color:var(--gl-border-focus);background:#d8a94a26}.d-roman{color:var(--gl-text-gold);font-size:11px;font-weight:700}.d-name{font-size:15px;font-weight:700}.d-role{color:var(--gl-text-muted);font-size:9px}@media (width<=768px){.chords-display-row,.guitar-panel-circle{flex-direction:column;align-items:stretch}}.virtual-guitar-atelier{background:linear-gradient(180deg, #1c1512 0%, var(--gl-bg-atelier) 100%);border:1px solid var(--gl-border-subtle);box-shadow:var(--gl-shadow-soft), inset 0 1px 0 #ffffff0a;color:var(--gl-text-ivory);border-radius:14px;flex-direction:column;gap:14px;padding:16px;display:flex}.guitar-atelier-heading{text-align:center;margin:2px 0 4px}.guitar-title{letter-spacing:.06em;text-transform:uppercase;color:var(--gl-text-gold);margin:0;font-size:1.05rem;font-weight:700}.guitar-subtitle{max-width:62ch;color:var(--gl-text-muted);margin:4px auto 0;font-size:13px;line-height:1.5}.guitar-stage-bar{background:var(--gl-bg-card);border:1px solid var(--gl-border-subtle);border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:12px 14px;display:flex}.stage-control-group{align-items:center;gap:8px;display:inline-flex}.stage-label{letter-spacing:.05em;text-transform:uppercase;color:var(--gl-text-muted);white-space:nowrap;font-size:12px;font-weight:600}.stage-select{background:var(--gl-bg-chip);border:1px solid var(--gl-border-subtle);color:var(--gl-text-ivory);font:inherit;cursor:pointer;border-radius:6px;padding:6px 10px;font-size:13px;transition:border-color .15s,box-shadow .15s}.stage-select:hover,.stage-select:focus-visible{border-color:var(--gl-border-focus);outline:none;box-shadow:0 0 0 2px #d8a94a40}.stage-capo-slider{width:132px;accent-color:var(--gl-border-focus);cursor:pointer}.capo-value{color:var(--gl-text-gold);font-weight:600}.toggle-checkbox-label{color:var(--gl-text-muted);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.toggle-checkbox-label input{accent-color:var(--gl-border-focus);cursor:pointer}.stage-actions-group{gap:8px;margin-left:auto;display:inline-flex}.btn-start-audio,.btn-strum-action,.btn-arpeggio-action{border:1px solid var(--gl-border-focus);color:var(--gl-text-gold);font:inherit;cursor:pointer;background:#2a1f19;border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.btn-start-audio:hover,.btn-strum-action:hover,.btn-arpeggio-action:hover{background:var(--gl-border-focus);color:#0d0d0d;box-shadow:0 0 12px #d8a94a66}.btn-start-audio:focus-visible,.btn-strum-action:focus-visible,.btn-arpeggio-action:focus-visible,.btn-desk-tab:focus-visible,.btn-chip:focus-visible,.btn-mode:focus-visible,.btn-toggle:focus-visible,.btn-box-num:focus-visible,.btn-voicing-chip:focus-visible,.btn-action:focus-visible,.btn-transport-play:focus-visible,.btn-diatonic-chord:focus-visible,.prog-chord-card:focus-visible{outline:2px solid var(--gl-border-focus);outline-offset:2px}.fretboard-canvas-stage{border:1px solid var(--gl-border-subtle);background:linear-gradient(#201713 0%,#0d0d0d 100%);border-radius:12px;width:100%;padding:10px;overflow:hidden;box-shadow:inset 0 2px 10px #0000008c}.fretboard-canvas{touch-action:none;border-radius:8px;width:100%;height:auto;display:block}.guitar-desk-tabs{background:var(--gl-bg-card);border:1px solid var(--gl-border-subtle);scrollbar-width:thin;border-radius:10px;gap:6px;padding:6px;display:flex;overflow-x:auto}.btn-desk-tab{color:var(--gl-text-muted);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;padding:8px 14px;font-size:13px;font-weight:500;transition:all .15s}.btn-desk-tab:hover{color:var(--gl-text-ivory);border-color:var(--gl-border-subtle)}.btn-desk-tab.is-active{background:var(--gl-border-focus);border-color:var(--gl-border-focus);color:#0d0d0d;font-weight:700;box-shadow:0 0 12px #d8a94a59}.guitar-desk-panel-viewport{margin-top:2px}.guitar-keyboard-hint{text-align:center;color:var(--gl-text-muted);margin:0;font-size:12px;line-height:1.5}.guitar-kbd-window{color:var(--gl-text-gold);font-weight:600}@media (width<=768px){.virtual-guitar-atelier{border-radius:10px;padding:12px}.guitar-stage-bar{gap:10px}.stage-actions-group{width:100%;margin-left:0}.guitar-desk-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap}.fretboard-canvas-stage{padding:6px}}@media (prefers-reduced-motion:reduce){.btn-desk-tab,.stage-select,.btn-start-audio,.btn-strum-action,.btn-arpeggio-action,.btn-chip,.btn-mode,.btn-toggle,.btn-box-num,.btn-voicing-chip,.btn-action,.btn-transport-play,.btn-diatonic-chord,.prog-chord-card{transition:none}}
