@import '/fonts/iransans/css/fontiran.css';
@import '/fonts/faw/css/all.min.css';
.hide {
  display: none;
  transition: none;
}

.flex {
  display: flex;
}
.flex.gap {
  gap: 10px;
}
.flex.rows, .flex.row {
  flex-direction: column;
}
.flex.cols, .flex.col, .flex.column, .flex.columns {
  flex-direction: row;
}
@media screen and (min-width: 300px) and (max-width: 640px) {
  .flex.mb-rows, .flex.mb-row {
    flex-direction: column;
  }
  .flex.mb-cols, .flex.mb-col, .flex.mb-column, .flex.mb-columns {
    flex-direction: row;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .flex.tb-rows, .flex.tb-row {
    flex-direction: column;
  }
  .flex.tb-cols, .flex.tb-col, .flex.tb-column, .flex.tb-columns {
    flex-direction: row;
  }
}
@media screen and (min-width: 1001px) {
  .flex.ds-rows, .flex.ds-row {
    flex-direction: column;
  }
  .flex.ds-cols, .flex.ds-col, .flex.ds-column, .flex.ds-columns {
    flex-direction: row;
  }
}
.flex.inline {
  display: inline-flex;
}
.flex > *:is(.start, .mb-start, .tb-start, .ds-start) {
  justify-self: flex-start;
}
.flex > *:is(.center, .mb-center, .tb-center, .ds-center) {
  flex: 1;
}
.flex > *:is(.end, .mb-end, .tb-end, .ds-end) {
  justify-self: flex-start;
}
.flex.cc, .flex > .cc {
  justify-content: center;
  align-items: center;
}
.flex > *:is(.te, .mb-te, .tb-te, .ds-te) {
  text-align: end;
}
.flex > *:is(.tc, .mb-tc, .tb-tc, .ds-tc) {
  text-align: center;
}
.flex > *:is(.ts, .mb-ts, .tb-ts, .ds-ts) {
  text-align: start;
}

.of {
  overflow: auto;
}

.rel {
  position: relative;
}

.abs {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
}

.fix {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
}

.btn {
  display: inline-flex;
  flex-direction: row;
  gap: 10px;
  border: 0px;
  border-radius: 5px;
  opacity: 0.7;
  cursor: pointer;
  background-image: linear-gradient(45deg, rgba(100, 100, 100, 0.05), rgba(100, 100, 100, 0.2));
  color: #333;
  padding: 10px 15px;
}
.btn:disabled {
  opacity: 0.3;
}
.btn:not(:disabled):hover {
  opacity: 1;
}
.btn i {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
}
.btn span {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: irs;
}
.btn.default {
  background-image: linear-gradient(20deg, #006cc5, #001d35);
  color: #FFF;
}

.bc {
  margin: 0px;
  padding: 0px;
  display: block;
  list-style: none;
  font-size: 0px;
}
.bc.vat {
  vertical-align: top;
}
.bc.padd-10 {
  margin: 10px 10px 0px 0px;
}
.bc.padd-10 > * {
  padding: 0px 0px 10px 10px;
}
.bc > * {
  display: inline-flex;
  flex-direction: column;
  font-size: small;
  vertical-align: top;
  margin: 0px;
  padding: 0px;
  clear: both;
}
@media screen and (min-width: 300px) and (max-width: 640px) {
  .bc .mb12 {
    width: 100%;
  }
  .bc .mb11 {
    width: 91.666666663%;
  }
  .bc .mb10 {
    width: 83.33333333%;
  }
  .bc .mb9 {
    width: 74.999999997%;
  }
  .bc .mb8 {
    width: 66.666666664%;
  }
  .bc .mb7 {
    width: 58.333333331%;
  }
  .bc .mb6 {
    width: 49.999999998%;
  }
  .bc .mb5 {
    width: 41.666666665%;
  }
  .bc .mb4 {
    width: 33.333333332%;
  }
  .bc .mb3 {
    width: 24.999999999%;
  }
  .bc .mb2 {
    width: 16.666666666%;
  }
  .bc .mb1 {
    width: 8.333333333%;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .bc .tb12 {
    width: 100%;
  }
  .bc .tb11 {
    width: 91.666666663%;
  }
  .bc .tb10 {
    width: 83.33333333%;
  }
  .bc .tb9 {
    width: 74.999999997%;
  }
  .bc .tb8 {
    width: 66.666666664%;
  }
  .bc .tb7 {
    width: 58.333333331%;
  }
  .bc .tb6 {
    width: 49.999999998%;
  }
  .bc .tb5 {
    width: 41.666666665%;
  }
  .bc .tb4 {
    width: 33.333333332%;
  }
  .bc .tb3 {
    width: 24.999999999%;
  }
  .bc .tb2 {
    width: 16.666666666%;
  }
  .bc .tb1 {
    width: 8.333333333%;
  }
}
@media screen and (min-width: 1001px) {
  .bc .ds12 {
    width: 100%;
  }
  .bc .ds11 {
    width: 91.666666663%;
  }
  .bc .ds10 {
    width: 83.33333333%;
  }
  .bc .ds9 {
    width: 74.999999997%;
  }
  .bc .ds8 {
    width: 66.666666664%;
  }
  .bc .ds7 {
    width: 58.333333331%;
  }
  .bc .ds6 {
    width: 49.999999998%;
  }
  .bc .ds5 {
    width: 41.666666665%;
  }
  .bc .ds4 {
    width: 33.333333332%;
  }
  .bc .ds3 {
    width: 24.999999999%;
  }
  .bc .ds2 {
    width: 16.666666666%;
  }
  .bc .ds1 {
    width: 8.333333333%;
  }
}

.control:not(:last-of-type), .btns:not(:last-of-type) {
  margin-bottom: 10px;
}

.control {
  padding: 10px 0px;
}
.control .title {
  color: #666;
  padding: 5px 15px;
  border-inline-start: 1px solid red;
  margin-bottom: 5px;
}
.control input, .control textarea, .control select {
  resize: none;
  font-size: small;
  border: 1px solid rgba(0, 0, 0, 0.1);
  padding: 10px;
  border-radius: 5px;
  width: 100%;
  font-family: irs;
  text-align: center;
}
.control input:focus, .control textarea:focus, .control select:focus {
  border: 1px solid red;
}
.control input.just, .control textarea.just, .control select.just {
  text-align: justify;
}

.btns {
  text-align: end;
}

html {
  height: 100%;
}

* {
  box-sizing: border-box;
}

*:not(.fa-spin, .rs-animation, .rs-animation *) {
  transition: all ease 0.15s;
}

*:not(:is(input, textarea, select)) {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

*:not(:is(i)) {
  font-family: irs;
}

body {
  direction: rtl;
  margin: 0px;
  padding: 0px;
  height: 100%;
  font-size: medium;
}
body .loading {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background-color: rgb(255, 255, 255);
  z-index: 99999;
  display: flex;
  justify-content: center;
  align-items: center;
}
body .loading i {
  font-size: 64px;
  color: rgb(110, 0, 222);
}

.toast-container {
  pointer-events: none;
}

#app {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#app > .masterpage:not(.logined) > #header {
  opacity: 0;
}
#app > .masterpage:not(.logined) > #menu {
  opacity: 0;
}
#app #body {
  margin: 25px;
}
#app #header {
  gap: 25px;
  margin: 25px;
  margin-bottom: 0px;
}
#app #header .logo {
  max-height: 32px;
}
#app #header .caption {
  line-height: 20px;
}
#app #header .caption b {
  display: block;
}
#app #header .caption span {
  display: block;
  font-size: x-small;
  opacity: 0.6;
}
#app #menu {
  background-image: linear-gradient(45deg, rgb(0, 192, 255), rgb(110, 0, 222));
  position: relative;
  padding-inline: 12.5px;
}
#app #menu .menu-item.active {
  opacity: 0.99;
}
#app #menu .menu-item.active span {
  transform: translateY(0px);
  opacity: 1;
}
#app #menu .menu-item:not(.active) {
  opacity: 0.6;
}
#app #menu .menu-item:not(.active) i {
  transform: translateY(10px);
}
#app #menu .menu-item:not(.active) span {
  transform: translateY(-10px);
  opacity: 0;
}
#app #menu button {
  display: flex;
  flex-flow: column;
  width: 100%;
  height: 100%;
  background-color: transparent;
  gap: 10px;
  padding-block: 12.5px;
  border: 0px;
}
#app #menu button i {
  font-size: 24px;
  color: #FFF;
  padding-top: 16px;
}
#app #menu button span {
  color: #FFF;
}
#app #menu .menu-item-overal {
  position: absolute;
  top: -8px;
  height: 16px;
  background-color: #FFF;
  border-radius: 100px;
}
#app .page#index .logo {
  max-height: 128px;
  margin-bottom: 50px;
}
#app .page#main .slider {
  aspect-ratio: 16/9;
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  margin-bottom: 25px;
  background-color: rgba(100, 100, 100, 0.1);
}
#app .page#main .slider .slide {
  position: absolute;
  inset: 0;
  display: flex;
  justify-content: center;
  align-items: end;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  transition-duration: 1s;
}
#app .page#main .slider .slide:not(.active) {
  opacity: 0;
  pointer-events: none;
}
#app .page#main .slider .slide.active {
  opacity: 1;
}
#app .page#main .slider .slide label {
  font-size: small;
  margin-bottom: 10px;
  display: block;
  width: 100%;
  text-align: center;
}
#app .page#main .tools {
  display: flex;
  flex-flow: row wrap;
}
#app .page#main .tools .tool {
  display: inline-flex;
  width: 25%;
  aspect-ratio: 1/1;
  flex-direction: column;
  padding: 5px;
}
#app .page#main .tools .tool button {
  background-color: transparent;
  border: 0px;
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 5px;
  padding: 5px;
}
#app .page#main .tools .tool button i {
  font-size: 24px;
  background-image: var(--color);
  color: #FFF;
  display: flex;
  aspect-ratio: 1/1;
  width: 48px;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
#app .page#main .tools .tool button span {
  font-size: small;
}
#app .page#main .blogs, #app .page#main .news {
  margin-top: 25px;
  white-space: nowrap;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
}
#app .page#main .blogs .new, #app .page#main .blogs .blog, #app .page#main .news .new, #app .page#main .news .blog {
  width: 230px;
  display: inline-block;
  white-space: wrap;
  vertical-align: top;
  text-align: justify;
  scroll-snap-align: start;
}
#app .page#main .blogs .new:not(:last-of-type), #app .page#main .blogs .blog:not(:last-of-type), #app .page#main .news .new:not(:last-of-type), #app .page#main .news .blog:not(:last-of-type) {
  margin-inline-end: 25px;
}
#app .page#main .blogs .new .img, #app .page#main .blogs .blog .img, #app .page#main .news .new .img, #app .page#main .news .blog .img {
  width: 100%;
  aspect-ratio: 16/9;
  background-color: #EEE;
  border-radius: 10px;
  margin-bottom: 12.5px;
  background-size: cover;
  background-position: center center;
}
#app .page#main .blogs .new .title, #app .page#main .blogs .blog .title, #app .page#main .news .new .title, #app .page#main .news .blog .title {
  font-size: medium;
  font-weight: bold;
  color: #111;
  text-align: justify;
  margin-bottom: 12.5px;
}
#app .page#main .blogs .new .description, #app .page#main .blogs .blog .description, #app .page#main .news .new .description, #app .page#main .news .blog .description {
  font-size: small;
  color: rgba(0, 0, 0, 0.5);
  margin-top: 5px;
}
#app .page#post .header {
  gap: 10px;
}
#app .page#post .header .center {
  display: flex;
  justify-content: start;
  align-items: center;
  font-weight: bold;
  font-size: medium;
}
#app .page#post #btn-back {
  border: 0px;
  background-color: transparent;
  width: 48px;
  aspect-ratio: 1/1;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0px;
  padding: 0px;
}
#app .page#post #btn-back i {
  font-size: 24px;
}
#app .page#post .form {
  font-size: medium;
  opacity: 0.8;
  text-align: justify;
}
#app .page#post .form .img {
  width: 100%;
  aspect-ratio: 16/9;
  background-color: #EEE;
  border-radius: 10px;
  margin-bottom: 12.5px;
}
#app .page#notify input {
  display: none;
}
#app .page#notify .field:not(:last-of-type) {
  padding-bottom: 12.5px;
}
#app .page#notify .field .control {
  gap: 5px;
  padding-inline: 5px;
}
#app .page#notify .field label {
  padding: 5px;
  border-radius: 5px;
  gap: 5px;
  position: relative;
}
#app .page#notify .field label i {
  font-size: 24px;
  opacity: 0.7;
}
#app .page#notify .field label:has(input:checked) {
  background-image: linear-gradient(20deg, rgb(110, 0, 222), rgb(0, 192, 255));
  color: #FFF;
}
#app .page#notify .field label:has(input:checked) i {
  opacity: 1;
}
#app .page#notify .field label span {
  font-size: x-small;
}
#app .page#chart table {
  width: 100%;
  border-spacing: 0;
  cellpadding: 0px;
  font-size: small;
}
#app .page#chart table thead th {
  padding: 5px;
}
#app .page#chart table tbody th {
  white-space: nowrap;
  width: 10px;
  padding: 5px;
}
#app .page#chart table tbody td {
  text-align: center;
  border-top: 1px dashed rgba(0, 0, 0, 0.1);
}
#app .page#chart table tbody td.val-td {
  padding: 5px;
  position: relative;
  width: 11%;
}
#app .page#chart table tbody td.val-td span:before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--color);
  z-index: -1;
  opacity: 0.1;
}
#app .page#chart fieldset {
  padding: 0px;
  margin: 0px;
  border: 0px;
  border-top: 3px solid rgba(0, 0, 0, 0.1);
}
#app .page#chart fieldset legend {
  padding: 0px 10px;
  margin-inline-start: 10px;
}
#app .page#add .date {
  text-align: center;
}
#app .page#add .date b {
  display: block;
  font-size: xx-large;
  color: rgb(110, 0, 222);
  margin-bottom: -10px;
}
#app .page#add .date span {
  display: block;
  font-size: medium;
}
#app .page#add .days {
  padding-top: 10px;
}
#app .page#add .days .info {
  position: relative;
}
#app .page#add .days .info .captions .center:before {
  content: "";
  inset: 1;
  width: 6px;
  aspect-ratio: 1/1;
  background-color: var(--color);
  position: absolute;
  transform: translateY(18px) scale(2);
  border-radius: 100px;
  outline: 2px solid #FFF;
}
#app .page#add .days .info .captions span {
  font-size: small;
}
#app .page#add .value-msg {
  margin-top: 20px;
  font-size: small;
}
#app .page#add .types label {
  justify-content: start;
  padding: 5px;
  border-radius: 5px;
  gap: 5px;
  position: relative;
}
#app .page#add .types label[data-hour]:before {
  direction: ltr;
  content: attr(data-hour);
  white-space: nowrap;
  position: absolute;
  top: -10px;
  left: 15%;
  width: 70%;
  border-radius: 100px;
  text-align: center;
  background-image: linear-gradient(45deg, tomato, red);
  z-index: 1;
  color: #FFF;
  font-size: small;
  font-weight: normal;
}
#app .page#add .types label:has(input:checked) {
  background-image: linear-gradient(20deg, rgb(110, 0, 222), rgb(0, 192, 255));
  color: #FFF;
}
#app .page#add .types label i {
  font-size: 24px;
  margin-top: 5px;
}
#app .page#add .types label span {
  font-size: x-small;
  text-align: center;
}
#app .page#add .types label input {
  display: none;
}

.form {
  display: flex;
  flex-flow: column;
  width: 100%;
  gap: 10px;
}
.form .field {
  display: flex;
  width: 100%;
  width: 100%;
}
.form .field fieldset {
  display: flex;
  width: 100%;
  width: 100%;
  margin: 0px;
  padding: 0px;
  border-radius: 5px;
  border: 3px solid rgba(0, 0, 0, 0.1);
}
.form .field fieldset:has(*:focus) {
  border-color: rgb(255, 0, 0);
}
.form .field fieldset legend {
  font-size: medium;
  padding-inline: 10px;
  font-weight: bold;
  margin-bottom: -10px;
  z-index: 2;
  background-color: #FFF;
  margin-inline-start: 10px;
}
.form .field fieldset .control {
  display: flex;
  width: 100%;
  z-index: 1;
}
.form .field fieldset .control input, .form .field fieldset .control select, .form .field fieldset .control textarea {
  width: 100%;
  padding: 5px;
  border-radius: 0px;
  border: 0;
  background-color: transparent;
  outline: none;
}
.form .msg {
  margin: 10px 0px;
  opacity: 0.8;
  position: relative;
}
.form .msg.gold {
  padding: 12.5px;
  color: #b18305;
}
.form .msg.gold::before {
  border-radius: 10px;
  content: "";
  inset: 0;
  position: absolute;
  background-image: linear-gradient(45deg, gold, gold);
  z-index: -1;
  opacity: 0.3;
}
.form .btns {
  margin-top: 25px;
}

.svg-info {
  position: relative;
  width: 100%;
}
.svg-info svg text {
  font-size: small;
  opacity: 0.7;
}
.svg-info svg path {
  stroke: rgba(0, 0, 0, 0.2);
  stroke-width: 3px;
}
.svg-info svg circle {
  stroke: #FFF;
  stroke-width: 5px;
}/*# sourceMappingURL=base.css.map */