anchor.diff:                    marginTop: 3
                     display: 'inline-block'
                     cursor: 'pointer'
  +                onMouseEnter: (=> @local.dropped_down = true; save(@local))
  +                onMouseLeave: (=> @local.dropped_down = false; save(@local))
   
                   SPAN null,
                     "#{if @proposal.designator && @proposal.category then "#{@proposal.category[0]}-#{@proposal.designator} " else ''}#{@proposal.name}" 
  
positive.code:                       position: 'relative'
                        top: 2
  
                if @local.dropped_down
                  DIV 
                    style: 
                      width: 500
                      position: 'absolute'
                      top: 38
                      paddingTop: 5
  
                    DIV style: {backgroundColor: subdomain.branding.primary_color, borderRadius: '4px'},
                      DIV style: {backgroundColor: 'rgba(0,0,0,.2)', padding: '14px 0', borderRadius: '4px'},
  
                        if curr_cluster?.proposals.length > 1
                          DIV null,
                            TABLE className: 'current_cluster', style: {width: '100%'},
                              TBODY null,
                                for other_proposal in curr_cluster.proposals
                                  TR href: proposal_url(other_proposal), onClick: clickInternalLink, key: "tr/#{other_proposal.slug}",
                                    TD style: {textAlign: 'left', paddingLeft: 20},
                                      A 
                                        href: proposal_url(other_proposal)
                                        onClick: clickInternalLink
                                        style: 
                                          color: 'white'
                                          fontWeight: if other_proposal.key == @proposal.key then 700 else 400
                                          fontSize: 18                                        
                                        other_proposal.name
  
                                    TD style: {position: 'relative'},
                                      if !other_proposal.your_opinion || !fetch(other_proposal.your_opinion).published
                                        SPAN style: {fontWeight: 400, color: 'rgb(205,205,205)', fontSize: 21}, '?'
                                      else
                                        # make a small slider summary
                                        opinion = fetch(other_proposal.your_opinion)
                                        face_size = 20 # height/width of the summary slider bar
                                        eye_style = { width: 2, height: 2, borderRadius: '50%', backgroundColor: subdomain.branding.primary_color, position: 'absolute', top: 6 }
                                        mouth_style = {fontSize: 12, color: subdomain.branding.primary_color, left: face_size * .45, top: face_size * .28, position: 'absolute', transform: 'rotate(90deg)'}
                                        css.crossbrowserify mouth_style
                                        if opinion.stance_segment < 3
                                          # frown!
                                          mouth = '('
                                        else if opinion.stance_segment == 3
                                          # confused!
                                          mouth = '|'
                                        else
                                          # pleased!
                                          mouth = ')'
  
                                        DIV 
                                          style: 
                                            borderBottom: "1px solid white"
                                            width: 100
                                            position: 'relative'
                                            top: 15
  
                                          DIV
                                            style: 
                                              borderRadius: '50%'
                                              backgroundColor: 'white'
                                              width: face_size
                                              height: face_size
                                              position: 'absolute'
                                              top: -face_size / 2
                                              marginLeft: -face_size / 2 
                                              left: "#{100 * (opinion.stance + 1.0) / 2.0}%"
                                            DIV style: _.extend {}, eye_style, {left: 6} # left eye
                                            DIV style: _.extend {}, eye_style, {left: face_size - 8} # right eye
                                            DIV style: mouth_style, mouth
  
  
                                    TD style: {paddingRight: 20}
  
                            DIV className: 'separator', style: {borderBottom: '1px dotted #dedede', width: '85%', margin: '28px auto 12px auto'}
  
                        DIV className: 'other_clusters',
                          for cluster in proposals.clusters
                            if @proposal.cluster != cluster.name && cluster.proposals.length > 0
                              do (cluster) =>
                                DIV 
                                  className: 'another_cluster'
                                  onMouseEnter: => @local.show_cluster = cluster.name; save(@local)
                                  onMouseLeave: => @mouseLeaveOtherCluster(cluster.name)
                                  style: {padding: '0 50px', width: '100%', position: 'relative'}
  
                                  SPAN style: {float: 'left', fontSize: 18, fontWeight: 400},
                                    cluster.name
                                  I className: 'fa fa-caret-right', style: {float: 'right'}
                                  DIV style: {clear: 'both'}
  
                                  if @local.show_cluster == cluster.name
                                    DIV style: {width: 300, zIndex: 99999, backgroundColor: subdomain.branding.primary_color, borderRadius: '4px', position: 'absolute', left: 458, top: -12},                                  
                                      UL className: 'other_proposal_list', style: {backgroundColor: 'rgba(0,0,0,.2)', borderRadius: '4px', padding: '8px 0' },
                                        for other_proposal in cluster.proposals
                                          LI style: {listStyle: 'none'}, key: "li/#{other_proposal.slug}",
                                            A 
                                              href: proposal_url(other_proposal)
                                              onClick: clickInternalLink
                                              style:
                                                display: 'block'
                                                textAlign: 'left'
                                                padding: '2px 10px'
                                                color: 'white'
                                                fontSize: 18
                                                fontWeight: 400
                                              other_proposal.name
  
  
                if next_proposal
                  DIV 
                    style: 
                      fontSize: 15
                      marginLeft: 50
                      display: 'inline-block'
                      fontWeight: 400
  
                    "Next: "
                      A
                        style: 
                          color: 'white'
                          textDecoration: 'underline'
                        onClick: do (url = proposal_url(next_proposal)) =>
                          => window.app_router.navigate(url, {trigger: true})
                        next_proposal.name
  
  
    componentDidMount : -> @initOrUpdateHeader()
    componentDidUpdate : -> @initOrUpdateHeader()
  
negative.code:             marginLeft: if lefty then 300
              #marginRight: if lefty then 0
  
            DIV style: {width: CONTENT_WIDTH}, # ...but let the stuff inside be big
              DIV
                style:
                  fontSize: 22
  