// 搜索图标
._icon-search(@color: #666, @size: 30px) {

    .getSize(@size) when (length(@size) = 1) {
        @pattern_size: @size;
        @pattern_thickness: round((@size * .1 / 2)) * 2;
        @diameter: round((@pattern_size * .9 / 2)) * 2 - @pattern_thickness * 2;
    }
    .getSize(@size) when (length(@size) = 2) {
        @pattern_size: extract(@size, 1);
        @pattern_thickness: extract(@size, 2);
        @diameter: round((@pattern_size * .9 / 2)) * 2 - @pattern_thickness * 2;
    }
    .getSize(@size) when (length(@size) = 3) {
        @pattern_size: extract(@size, 1);
        @pattern_thickness: extract(@size, 2);
        @diameter: extract(@size, 3) - @pattern_thickness * 2;
    }
    .getSize(@size);

    @radius: @diameter * .5;

    .inline-block();
    position: relative;
    vertical-align: middle;
    width: @pattern_size;
    height: @pattern_size;
    &:before {
        content: '';
        display: block;
        width: @diameter;
        height: @diameter;
        border: solid @pattern_thickness @color;
        .border-radius(100%);
    }
    &:after {
        content: '';
        display: block;
        position: absolute;
        top: sin(45deg) * (@radius + (@pattern_thickness / 2)) + @radius + @pattern_thickness;
        left: sin(45deg) * (@radius + (@pattern_thickness / 2)) + @radius + @pattern_thickness;
        width: ((@pattern_size - @radius - @pattern_thickness - sin(45deg) * (@radius + (@pattern_thickness / 2))) / sin(45deg));
        height: @pattern_thickness;
        margin-top: (-@pattern_thickness / 2);
        .background-color(@color);
        .transform-origin(left center);
        .rotate(45deg);
    }
}
.icon-search(@size: 30px) when (isnumber(extract(@size, 1))) {
    ._icon-search(#666, @size);
}
.icon-search(@color, @size: 30px) when (iscolor(@color)) {
    ._icon-search(@color, @size);
}
