  /*
  **  stylesheet definitions für voellanerhof.com - form styles
  **
  **  line endings: unix; encoding: utf-8; BOM: off; tabs: spaces; tab width: 2
  **
  **  @copyright  (c) Profi IT
  **  @author     tommy(at)profi(dot)it
  **  @since      07.11.2008 16:45:49
  */

  /* css definitions for live environment */

  form.complex {
  }

    /* the styles of this elements should be adapted to the style-typography settings of normal ul/li content elements */
    form.complex div.form-results {
      border-color: #f00;
      border-width: 0px 2px 2px 2px;
      border-style: solid;
      margin-bottom: 2em;
    }

      form.complex div.form-results h2 {
        background-color: #f00;
        color: #fff;
        font-weight: bold;
        padding: 0.5em;
        font-size: 1.2em;
        line-height: 1.5em;
      }

      form.complex div.form-results ul {
        margin: 0.5em;
        list-style: none;
      }

        form.complex div.form-results ul li {
          color: #f00;
          line-height: 1.5em;
          background: transparent url('../img/exclamation.png') left center no-repeat;
          padding: 0.5em 0 0.5em 2em;
        }

    /* common styles */
    form.complex input[type=text],
    form.complex input.text, /* this special class is needed for IE6 browsers because attribute selectors are only processed during page rendering */
    form.complex textarea {
      border: 1px solid #d4d3d6;
    }

    form.complex input[type=text],
    form.complex input.text, /* this special class is needed for IE6 browsers because attribute selectors are only processed during page rendering */
    form.complex input[type=reset],
    form.complex input[type=submit],
    form.complex select,
    form.complex textarea {
      /* font family needs to be specified */
      font: 1.1em Arial, Helvetica, sans-serif;
    }

    form.complex select#country,
    form.complex select#receiver_country,
    form.complex select#sender_country,
    form.complex select#countryPrefix {
      width: 245px;
    }

    form.complex textarea#notes {
      width: 247px;
    }

    form.complex input.align-center {
      text-align: center;
    }

    /*
      explicit reset of ol and li elements
      the !important rule is needed because standard content elements are margined/padded
    */
    form.complex ol,
    form.complex ol li {
      margin: 0 !important;
      padding: 0 !important;
    }

    /* this is the only way to define margin and padding in IE6 */
    form.complex ol {
      margin-bottom: 2em !important;
      padding-top: 0.4em !important;
      list-style-type: none !important;
    }

    /* new padding rule for field container elements */
    form.complex ol li {
      padding: 0.25em !important;
      clear: both;
    }

    /* form container and fieldset style for 	erroneous fields */
    form.complex li.error,
    form.complex fieldset.error {
      background: transparent url('../img/exclamation.png') 98% center no-repeat;
    }

      form.complex li.error input.culprit {
        border: 1px solid #f00;
      }

    /* fieldset settings */
    form.complex fieldset {
      /* necessary, because radio/checkbox field containers are floated */
      clear: both;
      border: none;
      /*border-top: 1px solid #cecece;*/
      /* this isnt supported by IE6, moved it to ol definition
      margin-bottom: 2em;
      padding-top: 0.4em;
      */
    }

      form.complex fieldset legend {
        font-weight: bold;
        font-size: 1.2em;
        line-height: 1.5em;
        margin-bottom: 1em;
        color: #7a797a !important;
      }

    /* settings for special elements */

    /*
      a fieldset can hold label/field combinations which are in reverse order, e.g. radio/checkbox fieldsets

      margin setting MUST be identical with normal fieldset labels
      the !important rule overrides the reset of ol elements
    */
    form.complex fieldset.label-after-field ol {
      float: left;
      width: 70%;
    }

      /* the reverse labeled fields must be labeld with a paragraph element which behaves like a legend */
      form.complex fieldset.label-after-field p.legend {
        float: left;
        width: 30%;
        line-height: 2.5em !important;
      }

      form.complex fieldset.label-after-field p.legend,
      form.complex fieldset p.long-legend {
        line-height: 1.5em;
        font-weight: bold;
        font-size: 1.2em;
        color: #908f91 !important;
      }

      /* the field containers all gets floated and 2 field containers resists side by side */
      form.complex fieldset.label-after-field ol li {
      }

      /* common label settings */
      form.complex fieldset label {
        float: left;
        width: 30%;
        line-height: 1.5em;
      }

      /* labels can be marked with this class if used in a fieldset without a label */
      form.complex fieldset label.no-legend {
        font-weight: bold;
      }

      form.complex fieldset.label-after-field select,
      form.complex fieldset.label-after-field input {
        float: left;
      }

      form.complex fieldset.label-after-field select {
        margin-right: 5px;
      }

      /*
        no floating and auto width for radio/checkbox labels
        and field-pair labels
      */
      form.complex fieldset.label-after-field label,
      form.complex li.field-pair label {
        float: none;
        width: auto;
      }

        /* a span with the class label-container wraps a label pair */
        form.complex li.field-pair span.label-container {
          float: left;
          width: 30%;
        }

    /* form help elements - rarely used yet */
    form.complex p.form-help {
      font-size: 0.9em;
      line-height: 1.5em;
    }
    form.complex .label-after-field p.form-help {
      margin-left: 21px;
    }

  /* this class can change later! */
  form.complex input.calendar-button {
    border: none;
    margin: 1px;
    padding: 1px;
    text-indent: -9999em;
    width: 16px;
    height: 16px;
    background: transparent url('../img/calendar_icon.png') center no-repeat;
  }

    /* the form action buttons (submit/reset) */
    form.complex ul.form-actions {
      text-align: right;
    }

      form.complex ul.form-actions li {
        display: inline;
      }

  /* special settings for some input fields */
  input#countAdults,
  input#countChildren,
  input[id|=ageChild] {
    width: 2em;
  }
  
  .tx-srfreecap-pi2-image {
    margin: 0 !important;  
  }

  #frmExpress {
    font-size: 1.4em;
  }

  form#frmExpress label {
    font-size: 12px;
    line-height: 1.8em;
    padding: 0 !important;
    width: 55% !important;
  }

  #frmExpress .form-actions input#submit {
    color: #7a5b7e;
    text-decoration: underline;
    cursor: pointer;
    border: none;
    background: none;
  }

  #frmExpress ol li {
    padding: 0.25em 0 !important;
  }

  #frmExpress ol {
    margin-bottom: 0.75em !important;
  }
