/*------------*\
    #B-FORM
\*------------*/

.b-form {
    width          : 100%;
    display        : inline-block;
    vertical-align : top;
}

    .b-form__star   {    color : red;               }
    .b-form__center {    width: 100% !important;    }

    .b-form__column {
        display        : inline-block;
        vertical-align : top;
    }

    .b-form__column + .b-form__column {
        margin-left: 20px;
    }

    .b-form__column--322px {
        width : 322px;
    }

    .b-form__hint {
        font-family : 'PT Sans';
        font-weight : bold;
        font-size   : 14px;
        margin      : 10px 0;
    }

    .b-form__input,
    .b-form__textarea,
    .b-form__select {
        box-sizing            : border-box;
        width                 : 100%;
        display               : block;
        padding               : 2px 4px;
        font-size             : 14px;
        line-height           : 1.5;
        color                 : #505050;
        border                : 1px solid #cccccc;
        -webkit-border-radius : 3px;
        -moz-border-radius    : 3px;
        border-radius         : 3px;
        margin-bottom         : 10px;
        font-family           : 'PT Sans';
        background-color      : #ffffff;
    }

    .b-form__textarea {
        height : 160px;
        resize : none;
    }

    .b-form__input:focus,
    .b-form__textarea:focus,
    .b-form__select:focus {
        outline      : 0;
        border-color : rgba(82, 168, 236, 0.8);
    }

    .b-form__input:focus:required:invalid:focus,
    .b-form__textarea:focus:required:invalid:focus,
    .b-form__select:focus:required:invalid:focus {
        outline      : none;
        color        : #b94a48;
        border-color : #e9322d;
    }

    /*  Стили для плейсхолдера                           */
    /*  Не работает перечисление стилей через запстую    */
    .b-form__textarea::-webkit-input-placeholder,
    .b-form__input::-webkit-input-placeholder{
        /* Chrome/Opera/Safari */
        opacity    : 0.5;
        font-style : italic;
    }
    .b-form__textarea::-moz-placeholder,
    .b-form__input::-moz-placeholder{
        /* Firefox 19+ */
        opacity    : 0.5;
        font-style : italic;
    }
    .b-form__textarea:-ms-input-placeholder,
    .b-form__input:-ms-input-placeholder{
        /* IE 10+ */
        opacity    : 0.5;
        font-style : italic;
    }
    .b-form__textarea:-moz-placeholder,
    .b-form__input:-moz-placeholder{
        /* Firefox 18- */
        opacity    : 0.5;
        font-style : italic;
    }

    .b-form__title {
        font-size     : 20px;
        margin-bottom : 13px;
        line-height   : 1.2;
        font-family   : Arial, sans-serif;
        font-weight   : normal;
    }

    .b-form__button {
        outline               : none;
        display               : inline-block;
        width                 : 100%;
        padding               : 4px 12px;
        font-family           : 'PT Sans';
        font-size             : 27px;
        line-height           : 1.5;
        color                 : #333333;
        text-align            : center;
        text-shadow           : 0 1px 1px rgba(255, 255, 255, 0.75);
        vertical-align        : middle;
        cursor                : pointer;
        background-color      : #f5f5f5;
        background-image      : -moz-linear-gradient(top, #ffffff, #e6e6e6);
        background-image      : -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
        background-image      : -webkit-linear-gradient(top, #ffffff, #e6e6e6);
        background-image      : -o-linear-gradient(top, #ffffff, #e6e6e6);
        background-image      : linear-gradient(to bottom, #ffffff, #e6e6e6);
        background-repeat     : repeat-x;
        border                : 1px solid #bbbbbb;
        border-color          : #e6e6e6 #e6e6e6 #bfbfbf;
        border-color          : rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
        border-bottom-color   : #a2a2a2;
        -webkit-border-radius : 4px;
        -moz-border-radius    : 4px;
        border-radius         : 4px;
        filter                : progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);
        filter                : progid:DXImageTransform.Microsoft.gradient(enabled=false);
        -webkit-box-shadow    : inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
        -moz-box-shadow       : inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
        box-shadow            : inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
    }

    .b-form__button,
    .b-form__button:first-child {   margin: 20px 0 10px;   }

    .b-form__button--success {
        color             : #ffffff;
        text-shadow       : 0 -1px 0 rgba(0, 0, 0, 0.25);
        background-color  : #5bb75b;
        background-image  : -moz-linear-gradient(top, #62c462, #51a351);
        background-image  : -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));
        background-image  : -webkit-linear-gradient(top, #62c462, #51a351);
        background-image  : -o-linear-gradient(top, #62c462, #51a351);
        background-image  : linear-gradient(to bottom, #62c462, #51a351);
        background-repeat : repeat-x;
        border-color      : #51a351 #51a351 #387038;
        border-color      : rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    }

    .b-form__button--success:hover {
        outline             : none;
        color               : #ffffff;
        text-decoration     : none;
        background-color    : #51a351;
        background-position : 0 -15px;
        -webkit-transition  : background-position .1s linear;
        -moz-transition     : background-position .1s linear;
        -o-transition       : background-position .1s linear;
        transition          : background-position .1s linear;
        color               : #ffffff;
        background-color    : #51a351;
    }

    .b-form__button--success:active {
        background-color   : #51a351;
        background-image   : none;
        outline            : 0;
        -webkit-box-shadow : inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
        -moz-box-shadow    : inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
        box-shadow         : inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
    }

    .b-form__button[disabled] {
        cursor            : default;
        color             : #333;
        text-shadow       : 0 1px 1px rgba(255, 255, 255, 0.75);
        background-color  : #e6e6e6;
        background-image  : -moz-linear-gradient(top, #fff, #e6e6e6);
        background-image  : -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#e6e6e6));
        background-image  : -webkit-linear-gradient(top, #fff, #e6e6e6);
        background-image  : -o-linear-gradient(top, #fff, #e6e6e6);
        background-image  : linear-gradient(to bottom, #fff, #e6e6e6);
        background-repeat : repeat-x;
        filter            : progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);
        border-color      : #e6e6e6 #e6e6e6 #bfbfbf;
        border-color      : rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    }

    .b-form__law-table {
        margin : 5px 0 10px;
    }

    .b-form__law-checkbox {
        vertical-align : top;
    }

    .b-form__law-checkbox--mini {
        max-width: 5px;
    }

    .b-form__law-checkbox-description {
        font-family    : 'PT Sans';
        vertical-align : top;
        font-size      : 14px;
        line-height    : 1.3;
        color          : #666666;
    }


    .b-form__request-status-alert {
        padding               : 8px 35px 8px 14px;
        margin-top            : 10px;
        color                 : #c09853;
        text-shadow           : 0 1px 0 rgba(255, 255, 255, 0.5);
        background-color      : #fcf8e3;
        border                : 1px solid #fbeed5;
        -webkit-border-radius : 4px;
        -moz-border-radius    : 4px;
        border-radius         : 4px;
        font-family           : 'PT Sans';
    }

    .b-form__request-status-alert--good {
        color            : #468847;
        background-color : #dff0d8;
        border-color     : #d6e9c6;
    }

    .b-form__request-status-alert--bad {
        color            : #b94a48;
        background-color : #f2dede;
        border-color     : #eed3d7;
    }
