@font-face {
  font-family: 'Vazir';
  src: url('/static/core/vazir/Vazir-Bold.woff2') format('woff2'),
       url('/static/core/vazir/Vazir-Bold.woff') format('woff'),
       url('/static/core/vazir/Vazir-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'Vazir';
  src: url('/static/core/vazir/Vazir-Medium.woff2') format('woff2'),
       url('/static/core/vazir/Vazir-Medium.woff') format('woff'),
       url('/static/core/vazir/Vazir-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: 'Vazir';
  src: url('/static/core/vazir/Vazir.woff2') format('woff2'),
       url('/static/core/vazir/Vazir.woff') format('woff'),
       url('/static/core/vazir/Vazir.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

#gss-isolated-root,
#gss-isolated-root *,
#gss-nav,
#gss-nav *,
.gss-cb,
.gss-cb *,
#gss-sb,
#gss-sb *,
.gss-modal-overlay,
.gss-modal-overlay *,
#gss-pb,
#gss-pb * {
  box-sizing: border-box !important;
  font-family: 'Vazir', sans-serif !important;
  direction: rtl !important;
  text-align: right !important;
  line-height: 1.5 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  text-shadow: none !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

#gss-nav {
  position: fixed !important;
  top: auto !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  margin: 0 !important;
  padding: 0 4px !important;
  background: #0f0f16 !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  box-shadow: 0 -4px 20px rgba(0,0,0,0.6) !important;
  z-index: 999999 !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  justify-content: space-around !important;
  transform: translateY(0) !important;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  overflow: hidden !important;
  float: none !important;
  clear: both !important;
}

#gss-nav.gss-hide {
  transform: translateY(110%) !important;
}

#gss-nav .gss-ni {
  all: unset !important;
  flex: 1 1 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  color: #cbd5e1 !important;
  text-decoration: none !important;
  padding: 4px 2px !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
  text-align: center !important;
  font-family: 'Vazir', sans-serif !important;
  transition: all 0.25s ease !important;
  -webkit-tap-highlight-color: transparent !important;
}

#gss-nav .gss-ni:hover,
#gss-nav .gss-ni:active,
#gss-nav .gss-ni.gss-active {
  color: #a78bfa !important;
  text-decoration: none !important;
}

#gss-nav .gss-ni svg {
  width: 22px !important;
  height: 22px !important;
  max-width: 22px !important;
  max-height: 22px !important;
  fill: currentColor !important;
  margin: 0 0 3px 0 !important;
  padding: 0 !important;
  display: block !important;
  flex-shrink: 0 !important;
  transition: transform 0.2s ease, filter 0.2s ease !important;
}

#gss-nav .gss-ni:hover svg,
#gss-nav .gss-ni.gss-active svg {
  transform: translateY(-2px) scale(1.06) !important;
  filter: drop-shadow(0 0 8px rgba(139,92,246,0.6)) !important;
}

#gss-nav .gss-ni span {
  font-family: 'Vazir', sans-serif !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
  text-align: center !important;
  font-weight: 500 !important;
  color: inherit !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

@keyframes gss-pulse {
  0% { box-shadow: 0 0 15px rgba(77,17,155,0.4), 0 0 0 0 rgba(77,17,155,0.4); }
  50% { box-shadow: 0 0 25px rgba(77,17,155,0.4), 0 0 0 12px rgba(77,17,155,0); }
  100% { box-shadow: 0 0 15px rgba(77,17,155,0.4), 0 0 0 0 rgba(77,17,155,0); }
}

@keyframes gss-ring {
  0%, 10%, 20%, 30%, 100% { transform: rotate(0deg); }
  5%, 15%, 25% { transform: rotate(-10deg); }
  10%, 20% { transform: rotate(10deg); }
}

@keyframes gss-rotate {
  100% { transform: rotate(1turn); }
}

.gss-cb {
  position: fixed !important;
  top: auto !important;
  bottom: 78px !important;
  left: 20px !important;
  right: auto !important;
  width: 66px !important;
  height: 66px !important;
  background: #4d119b !important;
  border-radius: 50% !important;
  border: 2px solid #fb923c !important;
  cursor: pointer !important;
  box-shadow: 0 0 20px rgba(77,17,155,0.4) !important;
  z-index: 999998 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
  padding: 6px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  animation: gss-pulse 2.2s ease-in-out infinite !important;
  -webkit-tap-highlight-color: transparent !important;
}

.gss-cb:hover {
  transform: scale(1.08) translateY(-3px) !important;
  box-shadow: 0 0 25px rgba(77,17,155,0.6) !important;
  animation: none !important;
}

.gss-cb .gss-cb-icon {
  width: 24px !important;
  height: 24px !important;
  fill: #ffffff !important;
  margin: 0 0 2px 0 !important;
  display: block !important;
  flex-shrink: 0 !important;
  animation: gss-ring 4s ease-in-out infinite !important;
}

.gss-cb:hover .gss-cb-icon {
  animation: gss-ring 1s ease-in-out infinite !important;
}

.gss-cb .gss-cb-text {
  font-size: 11px !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  text-align: center !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  font-family: 'Vazir', sans-serif !important;
  margin: 0 !important;
  padding: 0 !important;
}

#gss-sb {
  position: fixed !important;
  top: auto !important;
  bottom: 156px !important;
  left: 20px !important;
  right: auto !important;
  width: 48px !important;
  height: 48px !important;
  background: #8b5cf6 !important;
  border: 1px solid #a78bfa !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 0 15px rgba(139,92,246,0.4) !important;
  cursor: pointer !important;
  z-index: 999998 !important;
  color: #ffffff !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
  -webkit-tap-highlight-color: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
}

#gss-sb:hover {
  transform: scale(1.08) translateY(-2px) !important;
  box-shadow: 0 0 25px rgba(139,92,246,0.6) !important;
}

.gss-modal-overlay {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  background: rgba(5,5,8,0.85) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  z-index: 9999999 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.3s ease, visibility 0.3s ease !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 16px !important;
  margin: 0 !important;
}

.gss-modal-overlay.gss-on {
  opacity: 1 !important;
  visibility: visible !important;
}

.gss-modal-card {
  position: relative !important;
  border-radius: 18px !important;
  padding: 2px !important;
  background: rgba(255,255,255,0.08) !important;
  overflow: hidden !important;
  width: 100% !important;
  max-width: 420px !important;
  box-shadow: 0 10px 40px rgba(0,0,0,0.8), 0 0 30px rgba(139,92,246,0.2) !important;
  transform: scale(0.9) !important;
  transition: transform 0.3s ease !important;
  margin: auto !important;
}

.gss-modal-overlay.gss-on .gss-modal-card {
  transform: scale(1) !important;
}

.gss-modal-card::before {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  left: -50% !important;
  width: 200% !important;
  height: 200% !important;
  background: conic-gradient(transparent, transparent, transparent, #8b5cf6, transparent 25%) !important;
  animation: gss-rotate 4s linear infinite !important;
  z-index: 0 !important;
}

.gss-modal-box {
  position: relative !important;
  z-index: 1 !important;
  background: #0f0f16 !important;
  padding: 24px !important;
  border-radius: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
  font-family: 'Vazir', sans-serif !important;
}

.gss-mcl {
  position: absolute !important;
  top: 14px !important;
  left: 14px !important;
  width: 32px !important;
  height: 32px !important;
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  cursor: pointer !important;
  font-size: 16px !important;
  color: #cbd5e1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  transition: all 0.25s ease !important;
  -webkit-tap-highlight-color: transparent !important;
  padding: 0 !important;
  line-height: 1 !important;
}

.gss-mcl:hover {
  color: #ffffff !important;
  background: rgba(255,255,255,0.12) !important;
  border-color: #8b5cf6 !important;
}

.gss-mtitle {
  text-align: center !important;
  margin: 0 0 20px !important;
  color: #f8fafc !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: 'Vazir', sans-serif !important;
  text-shadow: 0 0 12px rgba(167,139,250,0.3) !important;
}

.gss-mtitle svg {
  width: 22px !important;
  height: 22px !important;
  fill: #fb923c !important;
  margin-left: 10px !important;
  flex-shrink: 0 !important;
}

.gss-clist {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.gss-citem {
  margin-bottom: 10px !important;
  list-style: none !important;
}

.gss-citem:last-child {
  margin-bottom: 0 !important;
}

.gss-clink {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 12px 16px !important;
  background: rgba(255,255,255,0.02) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  color: #f8fafc !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  transition: all 0.25s ease !important;
  font-family: 'Vazir', sans-serif !important;
  box-sizing: border-box !important;
}

.gss-clink:hover {
  border-color: #8b5cf6 !important;
  color: #ffffff !important;
  box-shadow: 0 0 15px rgba(139,92,246,0.35) !important;
  transform: translateY(-2px) !important;
  background: rgba(139,92,246,0.08) !important;
}

.gss-cico {
  width: 40px !important;
  height: 40px !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 12px !important;
  flex-shrink: 0 !important;
  overflow: hidden !important;
}

.gss-cico svg {
  width: 20px !important;
  height: 20px !important;
  fill: #ffffff !important;
  display: block !important;
}

.gss-cico img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 10px !important;
}

.gss-sform {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

.gss-sform textarea,
.gss-sform input[type=tel] {
  width: 100% !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 10px !important;
  font-size: 13px !important;
  font-family: 'Vazir', sans-serif !important;
  transition: border-color 0.2s !important;
  resize: none !important;
  background: #050508 !important;
  color: #f8fafc !important;
  box-sizing: border-box !important;
}

.gss-sform textarea:focus,
.gss-sform input[type=tel]:focus {
  outline: none !important;
  border-color: #8b5cf6 !important;
  box-shadow: 0 0 12px rgba(139,92,246,0.3) !important;
}

.gss-sbtn {
  width: 100% !important;
  padding: 12px !important;
  background: #8b5cf6 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  font-family: 'Vazir', sans-serif !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 0 15px rgba(139,92,246,0.4) !important;
}

.gss-sbtn:hover {
  background: #7c3aed !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 0 25px rgba(139,92,246,0.6) !important;
}

#gss-pb {
  position: fixed !important;
  top: auto !important;
  bottom: 60px !important;
  left: 0 !important;
  right: 0 !important;
  background: #0f0f16 !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  padding: 10px 14px !important;
  box-shadow: 0 -4px 20px rgba(0,0,0,0.6) !important;
  z-index: 999997 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  transition: transform 0.35s cubic-bezier(0.4,0,0.2,1) !important;
  box-sizing: border-box !important;
}

#gss-pb.gss-hide {
  transform: translateY(110%) !important;
}

.gss-pimg {
  width: 48px !important;
  height: 48px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
  flex-shrink: 0 !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}

.gss-pinfo {
  flex: 1 !important;
  min-width: 0 !important;
}

.gss-ptitle {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #f8fafc !important;
  margin: 0 0 2px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-family: 'Vazir', sans-serif !important;
}

.gss-pprice {
  font-size: 13px !important;
  color: #a78bfa !important;
  font-weight: 700 !important;
  font-family: 'Vazir', sans-serif !important;
}

.gss-pact {
  display: flex !important;
  gap: 6px !important;
  flex-shrink: 0 !important;
}

.gss-pbtn {
  padding: 8px 14px !important;
  border-radius: 8px !important;
  border: none !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  font-family: 'Vazir', sans-serif !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
}

.gss-pbc {
  background: #8b5cf6 !important;
  color: #ffffff !important;
  box-shadow: 0 0 15px rgba(139,92,246,0.4) !important;
}

.gss-pbc:hover {
  background: #7c3aed !important;
  transform: translateY(-2px) !important;
}

.gss-pbb {
  background: #f97316 !important;
  color: #ffffff !important;
  box-shadow: 0 0 15px rgba(249,115,22,0.4) !important;
}

.gss-pbb:hover {
  background: #ea580c !important;
  transform: translateY(-2px) !important;
}

@media (max-width: 767px) {
  #gss-nav { display: flex !important; }
  body { padding-bottom: 64px !important; }  .gss-cb { display: flex !important; bottom: 78px !important; }
  #gss-sb { display: flex !important; }  }

@media (max-width: 480px) {
  .gss-cb { left: 14px !important; width: 60px !important; height: 60px !important; }
  .gss-cb .gss-cb-icon { width: 22px !important; height: 22px !important; }
  .gss-cb .gss-cb-text { font-size: 10px !important; }
  .gss-modal-card { width: 95% !important; }
  .gss-modal-box { padding: 18px !important; }
  .gss-mtitle { font-size: 16px !important; margin-bottom: 16px !important; }
  .gss-clink { padding: 10px 12px !important; font-size: 13px !important; }
  .gss-cico { width: 36px !important; height: 36px !important; margin-left: 10px !important; }
}

@media (min-width: 768px) {
  #gss-nav { display: none !important; }
    .gss-cb { display: flex !important; width: 72px !important; height: 72px !important; }
  .gss-cb .gss-cb-icon { width: 26px !important; height: 26px !important; }
  .gss-cb .gss-cb-text { font-size: 12px !important; }
  #gss-sb { display: flex !important; }  #gss-pb { display: none !important; }
}
