anchor.diff:      
       return DIV null, 'Nothing to see here, move on' if (permit('update proposal', proposal) < 0) || (!@props.fresh && !proposal.slug )
   
  -    block_style = { width: CONTENT_WIDTH, padding: '2px 0px', marginBottom: 12, position: 'relative' }
  -    description_field_style = {fontSize: 16, width: CONTENT_WIDTH - 200, padding: '4px 8px', marginBottom: 8, border: '1px solid #ccc'}
  -    input_style = _.extend {}, description_field_style, {marginLeft: 18}
  -    label_style = {verticalAlign: 'top', fontSize: 16, width: 150, display: 'inline-block'}
  +    block_style = 
  +      width: CONTENT_WIDTH
  +      padding: '2px 0px'
  +      marginBottom: 12
  +      position: 'relative'
  +
  +    description_field_style =
  +      fontSize: 18
  +      width: CONTENT_WIDTH - 200
  +      padding: 12
  +      marginBottom: 8
  +      border: '1px solid #ccc'
  +
  +    input_style = _.extend {}, description_field_style, 
  +      display: 'block'
  +
  +    label_style =
  +      fontSize: 24
  +      fontWeight: 600
  +      width: 240
  +      display: 'inline-block'
  +      color: considerit_blue
  +      marginBottom: 3
  +
   
       if !@local.description_fields
         @local.description_fields = if @data().description_fields then $.parseJSON(@data().description_fields) || [] else []
  +      @local.open_fields = []
  +
         if @local.description_fields.length > 0
           if @local.description_fields[0].group
             # Right now, we just downgrade group syntax to flat description list syntax
             # TODO: when editing a proposal, support the proposal description groups syntax (or get rid of it)
             @local.description_fields = _.flatten(@local.description_fields.map (group) -> group.items)
   
  +        # Add unique identifiers to each field so we can hide/edit them
  +        for field,idx in @local.description_fields
  +          field.id = idx
  +
  +      save @local
  +
  +    toggleDescriptionFieldOpen = (field, field_open) =>
  +      if field_open
  +        @local.open_fields = _.without @local.open_fields, field.id
  +      else
  +        @local.open_fields.push field.id
         save @local
   
       DIV null, 
         DashHeader name: if @props.fresh then "New Proposal" else "Edit #{proposal.name}"
  -      DIV style: { width: PAGE_WIDTH, margin: 'auto', padding: '3em 0' },
  +      DIV style: { width: CONTENT_WIDTH, margin: 'auto', padding: '3em 0' },
   
           DIV style: block_style,
  -          LABEL htmlFor:'slug', style: label_style, 'URL'
  +          LABEL htmlFor:'slug', style: label_style, 'URL:'
             INPUT 
               id:'slug'
               name:'slug'
  
positive.code:             style: input_style
  
          DIV style: block_style,
            LABEL htmlFor:'name', style: label_style, 'Topic question'
            INPUT 
              id:'name'
              name:'name'
              pattern:'^.{3,}'
              placeholder:'Make this super succinct with a <verb> <noun>.'
              required:'required'
              defaultValue: if @props.fresh then null else proposal.name
              style: input_style
  
          DIV style: block_style,
            LABEL htmlFor:'description', style: label_style, 'Description'
            AutoGrowTextArea 
              id:'description'
              name:'description'
              pattern:'^.{3,}'
              placeholder:'Make this good :)'
              required:'required'
              defaultValue: if @props.fresh then null else proposal.description
              style: _.extend {}, input_style, {height: 150}
  
            # Expandable description fields
            if fetch('/current_user').is_admin
              DIV style: {marginLeft: 168, marginBottom: 30},
                for field,idx in @local.description_fields
  
                  DIV key: "field-#{idx}", style: block_style,
                    I className: "fa fa-plus-circle", style: {position: 'absolute', left: -20, top: 10, color: '#bbb'}
                    INPUT
                      style: description_field_style
                      type: 'text'
                      id:"field-#{idx}-label"
                      name:"field-#{idx}-label"
                      pattern:'^.{3,}'
                      placeholder:'Label'
                      required:'required'
                      onChange: do(idx) => (e) => @local.description_fields[idx].label = e.target.value; save(@local)
                      value: @local.description_fields[idx].label
  
                    AutoGrowTextArea
                      id:"field-#{idx}-html"
  
negative.code:             style: input_style
  
          DIV style: block_style,
            LABEL htmlFor: 'listed_on_homepage', style: label_style, 'List on homepage:'
  
            INPUT 
              id: 'listed_on_homepage'
              name: 'listed_on_homepage'
              type: 'checkbox'
              defaultChecked: if @props.fresh then true else !proposal.hide_on_homepage
              style: {fontSize: 24}
  
          DIV style: block_style,
            LABEL htmlFor: 'open_for_discussion', style: label_style, 'Open for discussion:'
  
            INPUT 
              id: 'open_for_discussion'
              name: 'open_for_discussion'
              type: 'checkbox'
              defaultChecked: if @props.fresh then true else proposal.active
              style: {fontSize: 24}
  
  
          if @props.fresh
            DIV null, 
              SPAN 
                style: _.extend {}, label_style,
                  textDecoration: 'underline'
                  cursor: 'pointer'
                  width: 400
                  position: 'relative'
                onClick: => 
                  @local.edit_roles = !@local.edit_roles
                  save @local
                I 
                  className: 'fa-child fa'
                  style: 
                    position: 'absolute'
                    left: -25
                    top: 5
  
  
                'Permissions and invitations'
  
              DIV 
                style: 
  