.subTitle {
  margin:12px 0px 18px;
}

.subSectionTitle {
  font-size:18px;
  font-weight:bold;
  margin: 0px 0px 6px 0px;
  padding: 0px 0px 2px 12px;
  border-bottom:1px solid #DEDEDE;
}

.keywordAnalysisWrap {
  position:relative;
}

.keyword {
  position:absolute;
  box-sizing: border-box;
  font-size: 12px;  
  padding:4px 4px;
  transition:0.8s;
  border:1px solid #FFF;
  margin-top:4px;
  cursor:pointer;
}

.keyword.ready {
  border:1px solid #CDCDCD;
  margin-top:2px;
  padding:6px 10px;
}

.keyword::after {
  position:absolute;
  bottom:-16px;
  left:12px;
  font-size:10px;
  font-weight:bold;
}

.keyword.flag-global-common {
  background-color:#FAA;
}

.keyword.flag-global-common::after {
  content:'common';
  color:#A00;
}

.keyword.flag-market-descriptor {
  background-color:#FFA;
}

.keyword.flag-market-descriptor::after  {
  content:'defining';
  color:#CA0;
}

.keyword.flag-market-differentiator {
  background-color:#ADF;
}

.keyword.flag-market-differentiator::after  {
  content:'differentiator';
  color:#0AF;
}

.keyword.selected {
  border:2px solid #008;
}

#selectedTerms {
  border:1px solid #DDD;
  padding:8px 12px;
  margin:16px;
  border-radius:4;
  min-height:140px;  
  margin-bottom:8px;
}

#selectedTerms .keywordChoice {
  display:block;
  position:initial;
  border:2px solid #CDCDCD;
  margin-top:2px;
  padding:6px 10px;
  
  box-sizing: border-box;
  font-size: 12px;
  transition:0.8s;
  cursor:pointer;
}

.connectorSpan {
  width:1px;
  background-color:#AAA;
  position:absolute;
  opacity:0;
  transition:0.8s;
}

.keywordAnalysisPanel {
  width:40%;
  min-height:100px;
  display:inline-block;
  vertical-align:top;
}

.analysisEntryBox {
  height:64px;
}

.rightPanel {
  display:inline-block;
  vertical-align:top;
  width:58%;
  margin-bottom:64px;
}

.instructions .step {
  display:none;
}
.instructions .step > div {
  margin-top:16px;
}
.instructions .step > div:first-child {
  margin-top:0px;
}
.instructions .legend {
  width:90%;
  margin:12px auto;
}
.instructions .legend .entry {
  margin:12px 0px;
}
.instructions .legend .entry > div {
  display:inline-block;
  vertical-align:top;
}
.instructions .legend .entry .key {
  border:1px solid #DDD;
  width:32px;
  height:32px;
  box-sizing:border-box;
  margin-left:calc( 10% - 42px );
  margin-right:10px;
}
.instructions .legend .entry .label {
  width:20%;
  font-weight:bold;
  line-height:32px;
}
.instructions .legend .entry .explanation {
  width:65%;
  font-style:italic;
  padding-top:4px;
}
