JSFiddle - React, Tailwind, and code Playground

by mrnobody

HTML

<div class="step_2_option">
    <div class="option_top">
        <div class="title">
            <input type="radio" id="russia-post">
            <label for="russia-post">ShopLogistics - пункты выдача товаров</label>
            <div class="post_type">
                <select name="" id="">
                    <option value="">Наземный транспорт (1 250 р.)</option>
                    <option value="">Наземный транспорт (1 250 р.)</option>
                </select>
            </div>
        </div>
        <div class="price">0 р.</div>	<span>Срок доставки 1-2 дня</span>

    </div>
    <div class="option_bot">
        <div class="del_address">
            <label for="city">Город <i>*</i>
            </label>
            <input type="text" id="city">
            <label for="city">Улица, дом, квартира <i>*</i>
            </label>
            <input type="text" id="city">
        </div>Расчет стоимости доставки по алгоритму, опубликованному на сайте Почты России для отправления посылок.</div>
</div>

CSS

.step_2_option {
    width: 290px;
    background-color: #FFF;
    border: 5px solid #F0F2F6;
    border-radius: 3px;
    float: left;
    margin-right: 25px;
    margin-bottom: 25px;
}
.step_2_option:nth-child(3n) {
    margin-right: 0;
}
.step_2_option .option_top {
    padding-top: 10px;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #f0f2f6;
}
.step_2_option .option_top label {
    /* position: relative; */
    /* top: 6px; */
    /* left: 10px; */
    font-size: 16px;
    font-weight: bold;
}
.step_2_option .option_top .title {
    margin-bottom: 20px;
    white-space: nowrap;
}
    .step_2_option .option_top .title > input,
    .step_2_option .option_top .title > label{
        display: inline-block;
        vertical-align: top;
    }
    .step_2_option .option_top .title > label {
        white-space: normal;
    }
.step_2_option .option_top .post_type {
    margin-left: 30px;
    margin-top: 10px;
}
.step_2_option .option_top .price {
    display: table;
    margin: auto;
    height: 40px;
    line-height: 40px;
    vertical-align: middle;
    background-color: #FFF;
    border: 3px solid #FFA200;
    border-radius: 2px;
    padding-left: 23px;
    padding-right: 22px;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
}
.step_2_option .option_top span {
    display: table;
    font-style: italic;
    margin: auto;
}
.step_2_option .option_bot {
    padding: 10px;
}
.step_2_option .option_bot .schema {
    position: relative;
}
.step_2_option .option_bot .schema:after {
    content:'';
    position: absolute;
    background: url("../img/sprites/main_sprite.png") 0 0 no-repeat;
    background-position: 0 -551px;
    width: 11px;
    height: 11px;
    top: 2px;
    right: -14px;
}
.step_2_option .del_address {
    border-bottom: 1px solid #f0f2f6;
    font-size: 14px;
    margin-bottom: 10px;
}
.step_2_option .del_address input[type="text"] {
    display: block;
    font-size: 14px;
...