/* @import "sass-sandal/function"; */
.im-btn.btn-disabled,
.im-btn .btn-disabled:hover,
.im-btn .btn-disabled:active {
  background-color: #f8f8f8 !important;
  color: #999 !important;
  cursor: default !important;
  pointer-events: none !important;
}

.im-btn.btn-default, .im-btn.btn-primary, .im-btn.btn-weak, .im-btn.btn-outline {
  border: 0 none;
  border-radius: 2px;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  text-align: center;
  user-select: none;
  vertical-align: middle;
  box-sizing: border-box;
}

.im-btn.btn-default {
  background-color: #188eee;
  color: #fff;
}

.im-btn.btn-default:hover {
  background-color: #147de2;
}

.im-btn.btn-default:active {
  background-color: #1774c9;
}

.disabled.im-btn.btn-default, .dis-btn.im-btn.btn-default {
  opacity: 0.5;
  filter: alpha(opacity=50);
  cursor: default;
}

.disabled.im-btn.btn-default:hover {
  background-color: #188eee;
}

.disabled.im-btn.btn-default:active {
  background-color: #188eee;
}

.im-btn.btn-primary {
  background-color: #fe9455;
  color: #fff;
}

.im-btn.btn-primary:hover {
  background-color: #f3803b;
}

.im-btn.btn-primary:active {
  background-color: #ee7946;
}

.disabled.im-btn.btn-primary, .dis-btn.im-btn.btn-primary {
  opacity: 0.5;
  filter: alpha(opacity=50);
  cursor: default;
}

.disabled.im-btn.btn-primary:hover {
  background-color: #fe9455;
}

.disabled.im-btn.btn-primary:active {
  background-color: #fe9455;
}

.im-btn.btn-weak {
  background-color: #fff;
  color: #333;
}

.im-btn.btn-weak:hover {
  background-color: #eee;
}

.im-btn.btn-weak:active {
  background-color: #ddd;
}

.disabled.im-btn.btn-weak, .dis-btn.im-btn.btn-weak {
  opacity: 0.5;
  filter: alpha(opacity=50);
  cursor: default;
}

.disabled.im-btn.btn-weak:hover {
  background-color: #fff;
}

.disabled.im-btn.btn-weak:active {
  background-color: #fff;
}

.im-btn.btn-outline {
  background-color: #fff;
  color: #188eee;
}

.im-btn.btn-outline:hover {
  background-color: rgba(24, 142, 238, 0.1);
}

.im-btn.btn-outline:active {
  background-color: rgba(24, 142, 238, 0.2);
}

.disabled.im-btn.btn-outline, .dis-btn.im-btn.btn-outline {
  opacity: 0.5;
  filter: alpha(opacity=50);
  cursor: default;
}

.disabled.im-btn.btn-outline:hover {
  background-color: #fff;
}

.disabled.im-btn.btn-outline:active {
  background-color: #fff;
}

.im-btn.btn-s {
  min-width: 80px;
  line-height: 30px;
  padding: 0 1em;
}

.im-btn.btn-m {
  font-size: 16px;
  line-height: 40px;
  min-width: 120px;
  width: auto;
  padding: 0 1em;
}

.im-btn.btn-l {
  font-size: 18px;
  line-height: 50px;
  min-width: 150px;
  padding: 0 1em;
}

.im-btn.btn-weak {
  border: 1px solid #ddd;
}

.im-btn.btn-weak:hover {
  border-color: #ccc;
}

.im-btn.btn-weak:active {
  color: rgba(51, 51, 51, 0.5);
}

.im-btn.btn-weak.disabled, .im-btn.btn-weak.dis-btn {
  opacity: 0.5;
  filter: alpha(opacity=50);
  cursor: default;
}

.im-btn.btn-weak.disabled:hover {
  border: 1px solid #ddd;
}

.im-btn.btn-weak.disabled:active {
  background-color: #fff;
  color: #333;
}

.im-btn.btn-outline {
  border: 1px solid #188eee;
}

.im-btn.btn-outline:hover {
  border-color: #147de2;
}

.im-btn.btn-outline:active {
  color: rgba(24, 142, 238, 0.5);
}

.im-btn.btn-outline.disabled, .im-btn.btn-outline.dis-btn {
  opacity: 0.5;
  filter: alpha(opacity=50);
  cursor: default;
}

.im-btn.btn-outline.disabled:hover {
  border: 1px solid #188eee;
}

.im-btn.btn-outline.disabled:active {
  background-color: #fff;
  color: #188eee;
}

.im-btn.btn-s.btn-weak, .im-btn.btn-s.btn-outline {
  line-height: 28px;
}

.im-btn.btn-m.btn-weak, .im-btn.btn-m.btn-outline {
  line-height: 38px;
}

.im-btn.btn-l.btn-weak, .im-btn.btn-l.btn-outline {
  line-height: 48px;
}

.im-btn.btn-primary ~ .btn-weak,
.im-btn.btn-primary ~ .btn-primary,
.im-btn.btn-primary ~ .btn-default,
.im-btn.btn-primary ~ .btn-outline,
.im-btn.btn-default ~ .btn-weak,
.im-btn.btn-default ~ .btn-default,
.im-btn.btn-default ~ .btn-outline,
.im-btn.btn-default ~ .btn-primary,
.im-btn.btn-outline ~ .btn-outline,
.im-btn.btn-outline ~ .btn-default,
.im-btn.btn-outline ~ .btn-primary,
.im-btn.btn-outline ~ .btn-weak,
.im-btn.btn-weak ~ .btn-outline,
.im-btn.btn-weak ~ .btn-default,
.im-btn.btn-weak ~ .btn-primary,
.im-btn.btn-weak ~ .btn-weak {
  margin-left: 10px;
}

.im-btn.btn-disabled,
.im-btn .btn-disabled:hover,
.im-btn .btn-disabled:active {
  outline: none;
}
