#guitar-songwriting-tool,
.guitar-tool-wrapper{
  width:100%;
  max-width:1920px;
  margin:0 auto;
  padding:0 20px;
}

#fretboard{
  width:100%;
  background:linear-gradient(180deg,#3a2615,#1e1208);
  padding:24px 16px;
  border-radius:14px;
  box-shadow:inset 0 0 20px #000;
  overflow-x:auto;
}

.neck-wrap{
  width:100%;
}

.neck{
  position:relative;
}

.string{
  display:flex;
  align-items:center;
  height:56px;
  border-bottom:1px solid rgba(255,255,255,0.15);
}

.string-label{
  width:50px;
  color:#fff;
  font-weight:700;
  text-align:right;
  padding-right:10px;
  flex-shrink:0;
}

.fret{
  position:relative;
  height:100%;
  border-right:1px solid rgba(255,255,255,0.25);
  box-sizing:border-box;
  cursor:pointer;
  background:transparent;
}

.fret:hover{
  background:rgba(255,255,255,0.08);
}

.note{
  position:absolute;
   z-index: 5;
  top:6px;
  left:50%;
  transform:translateX(-50%);
  color:#f5f5f5;
  font-size:13px;
  white-space:nowrap;
  pointer-events:none;
  text-align:center;
}

.note small{
  display:block;
  font-size:10px;
  opacity:0.7;
}

.has-inlay .note{
  color:#2b2b2b;
  font-weight:600;
}

.has-inlay .note small{
  color:#3a3a3a;
  opacity:0.85;
}

.inlays-layer{
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  pointer-events:none;
}
.fret {
  position: relative;
  z-index: 2;
}

.inlays-layer {
  z-index: 1;
}
.inlay{
  position:absolute;
  top:0;
  bottom:0;
  background:rgba(235,235,235,0.75);
  border-radius:4px;
}
.fret {
  position: relative;
  z-index: 2;
}

.fret.active-shape {
   background: rgba(255, 180, 60, 0.55) !important;
}

.fret.active-scale {
  background: rgba(120, 220, 120, 0.45) !important;
}

.inlay.double::before{
  content:'';
  position:absolute;
  left:10%;
  top:0;
  bottom:0;
  width:30%;
  background:rgba(235,235,235,0.75);
  border-radius:4px;
}

.inlay.double::after{
  content:'';
  position:absolute;
  right:10%;
  top:0;
  bottom:0;
  width:30%;
  background:rgba(235,235,235,0.75);
  border-radius:4px;
}

.fret-numbers{
  display:flex;
  margin-top:10px;
  color:#ddd;
  font-size:12px;
}

.fret-number{
  text-align:center;
  opacity:0.85;
  flex-shrink:0;
}

.fret-number:first-child{
  font-weight:700;
}

.chords-grid{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
  margin-top:16px;
}

.chord-card{
  background:#111;
  border:1px solid #333;
  padding:10px;
  width:10%;
  text-align:center;
  border-radius:6px;
}

.chord-title{
  font-size:14px;
  font-weight:600;
  margin-bottom:6px;
}

.diagram{
  display:grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(5, 1fr);
  gap:2px;
  height:100px;
}

.diagram div{
  border:1px solid #444;
}

.diagram .dot{
  background:#e0e0e0;
  border-radius:50%;
}
