/**
 * "Yet Another Multicolumn Layout" - (X)HTML/CSS Framework
 *
 * CSS-Baustein zur Erstellung von Formularen mit untereinander angeordneten Elementen
 *
 * @note            Many thanks to Ansgar Hein (http://www.anatom5.de) for contribution
 *
 * @copyright       Copyright 2005-2011, Dirk Jesse
 * @license         CC-A 2.0 (http://creativecommons.org/licenses/by/2.0/),
 *                  YAML-C (http://www.yaml.de/en/license/license-conditions.html)
 * @link            http://www.yaml.de
 * @package         yaml
 * @version         3.3.1
 * @revision        $Revision: 501 $
 * @lastmodified    $Date: 2011-06-18 17:27:44 +0200 (Sa, 18 Jun 2011) $
 */

@media screen, projection {

/**
 * ---------------------------------------------------------------------------------------------------- #
 *
 *  Festlegung des optischen Erscheinungsbildes
 *  
 *  @section yaml_forms_visual_styling
 */

.yform {
    margin: 0 0 1em 0;
    border: 1px solid #ddd;
    padding: 10px;
    background: #f4f4f4;
}

.yform fieldset {
    margin: 0 0 1em 0;
    border: 1px solid #ddd;
    padding: 0.5em;
    background: #fafafa;
}

.yform legend {
    font-size: 125%;
    font-weight: 400;
    color: #000;
}

.yform label {
    color: #666;
}

/* Proportionale Fonts für alle Form-Elemente */
.yform input,
.yform textarea,
.yform select,
.yform optgroup {
    font-family: Arial, Helvetica, sans-serif;
}

.yform .type-text input,
.yform .type-text textarea,
.yform .type-select select {
    border: 1px solid #ddd;
}

/* Effekt zur Hervorhebung von Formularfeldern bei :hover oder :focus */
.yform div.type-text input:hover,
.yform div select:hover,
.yform div textarea:hover,
.yform div.type-text input:active,
.yform div select:active,
.yform div textarea:active,
.yform div.type-text input:focus,
.yform div select:focus,
.yform div textarea:focus {
    border: 1px solid #a66;
    background: #fff;
}

/* Gestaltung von individuell gestalteten Buttons */
.yform .type-button input {
    border-top: 1px #ddd solid;
    border-right: 1px #444 solid;
    border-bottom: 1px #444 solid;
    border-left: 1px #ddd solid;
    padding: 5px 1em;
    color: #000;
    background: #454545 url(images/button_gray.png) repeat-x 0 0;
}

.yform .type-button input[type=reset] {
    color: #300;
    background: #661717 url(images/button_red.png) repeat-x 0 0;
}

.yform .type-button input[type=submit] {
    color: #330;
    background: #5e5607 url(images/button_yellow.png) repeat-x 0 0;
}

/* Optionales Button Styling für den IE6 */
.yform .type-button input.reset {
    color: #300;
    background: #661717 url(images/button_red.png) repeat-x 0 0;
}

.yform .type-button input.submit {
    color: #330;
    background: #5e5607 url(images/button_yellow.png) repeat-x 0 0;
}

/* Effekt zur Hervorhebung von Schaltern bei :hover oder :focus */
.yform div.type-button input:hover,
.yform div.type-button input:active,
.yform div.type-button input:focus {
    border-top: 1px solid #444;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #444;
    color: #fff;
    background: #555;
}

.yform div.type-button input.reset:hover,
.yform div.type-button input.reset:active,
.yform div.type-button input.reset:focus {
    color: #fff;
    background: #800;
}

.yform div.type-button input.submit:hover,
.yform div.type-button input.submit:active,
.yform div.type-button input.submit:focus {
    color: #fff;
    background: #880;
}


/**
 * ---------------------------------------------------------------------------------------------------- #
 *
 * Vertical-Forms - technical base (standard)
 *
 * |-------------------------------|
 * | fieldset                      |
 * |-------------------------------|
 * |   label                       |
 * |   input / select / textarea   |
 * |-------------------------------|
 * | /fieldset                     |
 * |-------------------------------|
 *
 * Formulargestaltung, bei der sowohl label als auch input/select/textarea mit display:block; gestaltet werden
 *
 * WARNUNG: Dieser Teil enthält mehrere IE-Stabilitäts-Fixes.
 *          Ändere nichts, wenn du dir nicht sicher bist, was du tust!
 */

/* Allgemeine Formatierung des Formulars */
.yform { overflow: hidden; }
.yform fieldset { display: block; }
.yform label { display: block; cursor: pointer; }
.yform legend { border: 0; padding: 0 0.5em; background: transparent; }
.yform .message { display: block; margin-bottom: 0.5em; color: #666; }

/* Versteckte Felder wirklich verstecken (sonst ggf. hässliche Lücken im Firefox) */
.yform input[type=hidden] { display: none !important; }

/* Pflichtfeldkennzeichnung hervorheben */
.yform sup { color: #800; font-weight: 700; }

/* zeilenweises Float-Clearing */
fieldset:after,
.yform div.type-text:after,
.yform div.type-select:after,
.yform div.type-check:after,
.yform div.type-button:after {
    visibility: hidden;
    display: block;
    clear: both;
    height: 0;
    font-size: 0;
    content: ".";
}

/* Gestaltung der kapselnden DIV-Elemente */
.yform div.type-text,
.yform div.type-select,
.yform div.type-check,
.yform div.type-button {
    position: relative;
    display: block;
    margin: 0.5em 0;
    padding: 3px 0.5em;
}

/* Gestaltung der einzelnen Formularelemente mit annähend gleicher Breite */
.yform .type-text input,
.yform .type-text textarea {
    position: relative;
    display: block;
    width: 58.5%;
    padding: 0.3em 0.3em;
}

.yform .type-select select {
    position: relative;
    display: block;
    width: 60%;
    padding: 0.3em 2px 0.3em 1px;
    cursor: pointer;
}

.yform .type-select select optgroup {
    font-style: normal;
    font-weight: 700;
}

.yform .type-check label {
    display: inline;
    vertical-align: middle;
}

.yform .type-check input {
    margin: 0 2px 0 0;
    vertical-align: middle;
    cursor: pointer;
}

/* Gestaltung von Buttons */
.yform .type-button input {
    overflow: visible;  /* Fixes IE7 auto-padding bug */
    width: auto;
    cursor: pointer;
}

/* Fehlermeldungen */
.yform div.error {
    border: 1px dashed #a00;
    padding: 0.5em;
    background: #faf4f4;
}

.yform div.error label { font-weight 700; color:#000; }
.yform div.error .message { color: #800; }

/* Vermeidung von springenden Checkboxen & Radiobuttons im IE8 */
.yform div.type-check input:hover,
.yform div.type-check input:active,
.yform div.type-check input:focus { border: 0 none; }

/* Checkboxen um den gleichen Wert einrücken, wie die Breite der Labels */
.full div.type-text input,
.full div.type-text textarea { width: 95.5%; margin-right: -3px; }
.full div.type-select select { width: 97.0%; margin-right: -3px; }

/* Breitenanpassung für Internet Explorer 5.x und 6.0 */
* html .full div.type-text input,
* html .full div.type-text textarea { width: 95.5%; }
* html .full div.type-select select { width: 97.0%; }


/**
 * ---------------------------------------------------------------------------------------------------- #
 *
 * Columnar forms display - technical base (optional)
 *
 * |-------------------------------------------|
 * | fieldset                                  |
 * |-------------------------------------------|
 * |                                           |
 * |   label   |   input / select / textarea   |
 * |                                           |
 * |-------------------------------------------|
 * | /fieldset                                 |
 * |-------------------------------------------|
 *
 * Formulargestaltung, bei der die label-Elemente nach links fließen
 *
 * WARNUNG: Dieser Teil enthält mehrere IE-Stabilitäts-Fixes.
 *          Ändere nur etwas, wenn du dir nicht sicher bist, was du tust!
 */

/* Spalten-Darstellung */
.columnar .type-text label,
.columnar .type-select label {
    float: left;
    width: 30%; /* Kann auch eine fixe Angabe sein */
}

/* Checkboxen um den gleichen Wert einrücken, wie die Breite der labels */
.columnar div.type-check input { margin-left: 30%; }
.columnar div.error .message { margin-left: 30%; }

.columnar fieldset div.type-button,
fieldset.columnar div.type-button { padding-left: 30%; }

.columnar div.type-text input,
.columnar div.type-text textarea { float: left; width: 67.8%; margin-right: -3px; }
.columnar div.type-select select { float: left; width: 69.4%; margin-right: -3px; }

/* Breitenanpassung für Internet Explorer 6.0 */
* html .columnar div.type-text input,
* html .columnar div.type-text textarea { width: 67.2%; }
* html .columnar div.type-select select { width: 68.8%; }

}