﻿* {
  align-items: center;
  line-height: 1.8;
}

body *:not(body)::-webkit-scrollbar {
  width: 7px;
  background-clip: padding-box;
  background-color: #fff;
}

body *:not(body)::-webkit-scrollbar-thumb {
  border-radius: 0.25rem;
  box-shadow: inset 0 0 0 7px #c1c1c1;
}

button:not(.btn) {
  background-color: transparent;
  border: none;
}

/* class */
::placeholder {
  font-family: 'IRANSans';
  font-size: 0.8rem;
  letter-spacing: 1.2px;
  color: #ddd !important;
}

.dis-none {
  display: none !important;
}

.pt-45 {
  padding-top: 0.45rem;
}

.pb-45 {
  padding-bottom: 0.45rem;
}

.px-45 {
  padding-right: 0.45rem;
  padding-left: 0.45rem;
}

.py-45 {
  padding-top: 0.45rem;
  padding-bottom: 0.45rem;
}

.pe-n {
  pointer-events: none;
}

.fn-is,
.fn-is * {
  font-family: 'IRANSans';
  font-size: 0.8339rem;
}

.fs-7 {
  font-size: 0.9rem !important;
}

.fs-8 {
  font-size: 0.9rem !important;
}

.fs-9 {
  font-size: 0.8rem !important;
}

.fs-10 {
  font-size: 0.75rem !important;
}

.fs-icon {
  font-size: 1.35rem !important;
}
/* */
.ls-2 {
  letter-spacing: 2px;
}

.ls-3 {
  letter-spacing: 3px;
}

.ls-4 {
  letter-spacing: 4px;
}

.ls-5 {
  letter-spacing: 5px;
}

/* border radius */
.border-r25 {
  border-radius: 0.25rem;
}

.border-r100 {
  border-radius: 100%;
}

/* */
.flex1 {
  flex: 1;
}

.overflowX {
  overflow-x: auto;
}

.overflowY {
  overflow-y: auto;
}

.c-pointer {
  cursor: pointer;
}

.clr-link {
  cursor: pointer;
  color: #35a5ca !important;
}

  .clr-link:hover {
    color: #54c1e5 !important;
  }

  .clr-link:active {
    color: #95d5e8 !important;
  }

.btn-black {
  background-color: #222;
  transform: scale(1);
}

  .btn-black:hover {
    background-color: #333;
  }

  .btn-black:active {
    transform: scale(0.99);
    background-color: #444;
  }

.b-link {
  color: #444;
  cursor: pointer;
}

  .b-link:hover {
    color: #3289a5;
  }

  .b-link:active {
    color: #3dadd2;
  }

.bgcolor-null {
  background-color: #f6f6f6;
}

.back-img:before {
  position: absolute;
  content: 'MPS';
  font-family: "BrandMPS";
  font-size: 1.4rem !important;
  left: 50%;
  transform: translateX(-50%);
  color: #ddd;
}

.b-zoom:active {
  transform: scale(0.98);
}

.fav-icon-heart,
.fav-icon-share {
  position: absolute;
  top: 15px;
}

.fav-icon-heart {
  right: 15px;
}

.fav-icon-share {
  left: 15px;
}

.input + label {
  font-size: 0.9rem;
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  padding: 5px 0.75rem;
  color: #ccc;
  text-shadow: 0 1px 0 rgba(19, 74, 70, 0);
  pointer-events: none;
  transition: all 0.2s ease-in-out;
  border-radius: 0.25rem;
}

  .input + label:after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    top: 100%;
    left: 50%;
    margin-left: -3px;
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 3px solid rgba(122, 184, 147, 0);
    transition: all 0.2s ease-in-out;
  }

.input:not(:disabled):focus + label,
.input:not(:disabled):active + label,
.input:not(:placeholder-shown) + label {
  transform: translateY(-57px);
}

.input:not(:disabled):focus + label,
.input:not(:disabled):active + label {
  color: #fff;
  background: #222;
}

.input:not(:disabled):not(:placeholder-shown) + label {
  color: green;
  background: transparent;
  opacity: 0.3;
}

.input:not(:disabled):focus + label:after,
.input:not(:disabled):active + label:after {
  border-top: 4px solid #222;
}

.skeleton {
  background: linear-gradient(0.25turn, transparent, #fff, transparent);
  background-color: #eee;
  background-size: 200% 100%;
  opacity: 0.5;
  cursor: wait;
  animation: 1.5s shine linear infinite;
}

/* component ****************************/
.loading {
  position: fixed;
  display: flex;
  justify-content: center;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.loading {
  cursor: progress;
  z-index: 1100;
}

  .loading:before,
  .loading:after {
    content: '';
    height: 80px;
    width: 80px;
    border-radius: 50%;
    position: absolute;
    background-color: #f49700;
    -webkit-animation: keyloading 1.5s infinite ease-in-out;
    -moz-animation: keyloading 1.5s infinite ease-in-out;
    animation: keyloading 1.5s infinite ease-in-out;
    opacity: 0.6;
  }

  .loading:after {
    animation-delay: -0.66s;
  }

@-webkit-keyframes keyloading {
  0% {
    transform: scale(0.0);
    opacity: 0.6;
  }

  100% {
    transform: scale(1.0);
    opacity: 0;
  }
}

@keyframes keyloading {
  0% {
    transform: scale(0.0);
    opacity: 0.6;
  }

  100% {
    transform: scale(1.0);
    opacity: 0;
  }
}

@keyframes shine {
  to {
    background-position-x: 200%;
  }
}
