/* Default background for light mode & initial load */
html, body {
  background-color: #1c1c1d !important;
}

* {
  box-sizing: border-box;
}

@font-face {
    font-family: 'SF Pro Text';
    src: url('../fonts/SFProText-Regular.eot');
    src: url('../fonts/SFProText-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/SFProText-Regular.woff2') format('woff2'),
        url('../fonts/SFProText-Regular.woff') format('woff'),
        url('../fonts/SFProText-Regular.ttf') format('truetype'),
        url('../fonts/SFProText-Regular.svg#SFProText-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap; /* Optimize font loading */
}

/* Tab Bar */
.ios .tabbar .tab-link:not(.tab-link-active) .icon-fill {
  display: none;
}

.ios .tabbar .tab-link.tab-link-active .icon:not(.icon-fill) {
  display: none;
}

/* CLS Fixes for App Detail Pages */
.app__meta--bottom ul li {
  height: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}


/* For apps with minimal descriptions, ensure consistent spacing */
.app__description:last-of-type {
  min-height: 150px;
}

/* 3. Reserve space for app meta bottom stats */
.app__meta .app__meta--bottom {
  min-height: 90px;
}

.app__meta .app__meta--bottom ul {
  min-height: 50px;
}

/* 6. App information section minimum height */
.app__information {
  min-height: 50px;
}

.app__itunes-info {
  min-height: 200px;
}

/* 9. Accordion items with consistent heights */
.app__itunes-info .accordion-item .item-content {
  min-height: 44px;
}

/* 16. Stabilize navigation bar */
.navbar {
  min-height: 44px;
}

.navbar-inner {
  min-height: 44px;
}

/* Swipers Demo - Keep .demo-swiper rules as they are used */
.demo-swiper {
  width: 100%;
  height: 100%;
}

/* Desktop Navigation Buttons for App List Swiper */
.desktop-nav-button {
  display: none;
  position: absolute;
  top: 54%;
  transform: translateY(-50%);
  width: 20px;
  height: 100px;
  background: rgba(0, 0, 0, 0.2);
  border: none;
  cursor: pointer;
  z-index: 999;
  transition: all 0.3s ease;
  color: rgba(255, 255, 255, 0.7);
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.desktop-nav-button:hover {
  background: rgba(0, 0, 0, 0.4);
}

.desktop-nav-button:active {
  transform: translateY(-50%) scale(0.98);
}

.desktop-nav-button.swiper-button-disabled {
  opacity: 0.15;
  cursor: not-allowed;
}

.desktop-nav-button.swiper-button-disabled:hover {
  background: rgba(0, 0, 0, 0.2);
}

.swiper-button-prev.desktop-nav-button {
  left: 0;
  border-radius: 0 40px 40px 0;
}

.swiper-button-next.desktop-nav-button {
  right: 0;
  border-radius: 40px 0 0 40px;
}

.swiper-button-prev.desktop-nav-button:after {
  content: '\f053';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.swiper-button-next.desktop-nav-button:after {
  content: '\f054';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: right;
  width: 100%;
  height: 100%;
}

/* Hide navigation buttons on mobile and tablet */
@media (max-width: 1023px) {
  .desktop-nav-button {
    display: none !important;
  }
}

/* Show navigation buttons only on desktop */
@media (min-width: 1024px) {
  .desktop-nav-button {
    display: flex !important;
  }
}

.demo-swiper .swiper-slide,
.demo-swiper-multiple .swiper-slide {
  font-size: 25px;
  font-weight: 300;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  background: #fff;
  color: #000;
}

.demo-swiper-multiple .swiper-slide {
  box-sizing: border-box;
  border: 1px solid #ccc;
  background: #fff;
}

.demo-swiper-multiple {
  margin: 0px 0 35px;
  font-size: 18px;
  height: 120px;
}

.demo-swiper-multiple.demo-swiper-multiple-auto .swiper-slide {
  width: 85%;
}

.demo-swiper-multiple.demo-swiper-multiple-auto .swiper-slide:nth-child(2n) {
  width: 70%;
}

.demo-swiper-multiple.demo-swiper-multiple-auto .swiper-slide:nth-child(3n) {
  width: 30%;
}

.demo-swiper-custom {
  height: 100%;
}

.demo-swiper-custom .swiper-container {
  background: #000;
  height: 100%;
}

.demo-swiper-custom .swiper-slide {
  background-size: cover;
  background-position: center;
}

.demo-swiper-custom .swiper-pagination .swiper-pagination-bullet {
  cursor: pointer;
  width: 10px;
  height: 10px;
  background: rgba(255, 255, 255, 0);
  opacity: 1;
  border-radius: 0;
  transition: 200ms;
  position: relative;
  transform: scale(0.9);
  box-sizing: border-box;
  border: 1px solid rgba(255, 255, 255, 0.8);
}

.demo-swiper-custom .swiper-pagination .swiper-pagination-bullet-active {
  z-index: 1;
  border: 1px solid #007aff;
  transform: scale(1.4);
}

.demo-swiper-cube {
  width: 80%;
  height: 70%;
  top: 15%;
}

.demo-swiper-coverflow {
  height: 60%;
  top: 20%;
}

.demo-swiper-coverflow .swiper-slide {
  width: 65%;
}

.demo-swiper-cube .swiper-slide,
.demo-swiper-coverflow .swiper-slide {
  background-size: cover;
  color: #fff;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.demo-swiper-fade .swiper-slide {
  background-size: cover;
  background-position: center;
}

.demo-swiper-gallery-top {
  height: 70%;
}

.demo-swiper-gallery-thumbs {
  margin-top: 10px;
  height: 20%;
  height: -webkit-calc(30% - 20px);
  height: -moz-calc(30% - 20px);
  height: -ms-calc(30% - 20px);
  height: calc(30% - 20px);
}

.demo-swiper-gallery-thumbs .swiper-slide {
  width: 25%;
}

.demo-swiper-gallery-thumbs .swiper-slide-pic {
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0.35;
  transition: 300ms;
}

.demo-swiper-gallery-thumbs .swiper-slide-active .swiper-slide-pic {
  opacity: 1;
}

.demo-swiper-gallery-top .swiper-slide,
.demo-swiper-gallery-thumbs .swiper-slide-pic {
  background-size: cover;
  background-position: center;
}

.demo-swiper-parallax {
  height: 100%;
}

.demo-swiper-parallax .swiper-parallax-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 130%;
  height: 100%;
  -webkit-background-size: cover;
  background-size: cover;
  background-position: center;
}

.demo-swiper-parallax .swiper-slide {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 60px;
  color: #fff;
}

.demo-swiper-parallax .swiper-slide-title {
  font-size: 41px;
  font-weight: 300;
}

.demo-swiper-parallax .swiper-slide-subtitle {
  font-size: 21px;
}

.demo-swiper-parallax .swiper-slide-text {
  font-size: 14px;
  max-width: 400px;
  line-height: 1.3;
}

.demo-swiper-lazy {
  height: 100%;
}

.demo-swiper-lazy .swiper-slide {
  position: relative;
}

.demo-swiper-lazy .swiper-slide img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

/* Icons Demo */
/*--------------Custom Style--------------*/
@font-face {
  font-family: 'SF Pro Text';
  src: url('../fonts/SFProText-Regular.eot');
  src: url('../fonts/SFProText-Regular.eot?#iefix') format('embedded-opentype'),
    url('../fonts/SFProText-Regular.woff2') format('woff2'),
    url('../fonts/SFProText-Regular.woff') format('woff'),
    url('../fonts/SFProText-Regular.ttf') format('truetype'),
    url('../fonts/SFProText-Regular.svg#SFProText-Regular') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: swap; /* Optimize font loading */
}

.ios .navbar a.link {
  font-size: 17px;
  font-weight: normal;
  letter-spacing: -0.4px;
  color: #41879f;
  font-family: 'SF Pro Text';
  padding-left: 17px;

}

.ios .icon-back,
.ios .icon-prev {
  background: url(../img/back-arrow.svg) left center no-repeat !important;
  height: 21px;
}

.ios .navbar~*:not(.no-navbar) .page-content,
.ios .navbar~.page-content {
  padding-top: 44px;
  padding-left: var(--f7-safe-area-left);
  padding-right: var(--f7-safe-area-right);
}

.ios .navbar + .page--trending-search .page-content {
  padding-top: 60px;
}

/* fix CLS issue on appdetails pages */
.page--app-detail .page-content {
  padding-top: 44px !important;
}

.ios .page {
  background: #ffffff;
}

.top-bar {
  padding: 30px 10px;
}

.ios .navbar {
  box-shadow: 0 1px 0px 0 rgba(120, 120, 120, 0.37);
  background-color: white;
}

.ios .navbar:after {
  display: none;
}

.top-bar a {
  font-size: 17px;
  font-weight: normal;
  letter-spacing: -0.4px;
  color: #41879f;
  font-family: 'SF Pro Text';
  padding-left: 17px;
  display: inline-block;
  line-height: 21px;
  background: url(../images/back-arrow.svg) left center no-repeat;
}

.app__meta {
  padding: 0 20px;
}

.app__meta .app--logo {
  font-size: 0;
  margin-right: 16px;
  min-width: 118px;
  width: 118px;
  border-radius: 15%;
  overflow: visible;
}

.app__meta .app--logo img {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  display: block;
  border-radius: 15%;
}

.app__meta .app__meta--top {
  margin: 30px 0 15px 0;
  min-height: 118px;
}

.app__meta .app--detail {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 118px;
}

.app__meta .app--detail .title {
  margin: 0;
  padding: 0;
  font-family: 'SF Pro Text';
  line-height: 1.2;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 0.3px;
  color: #000000;
  margin-bottom: 5px;
  border: 0;
  max-height: calc(1.2em * 2);
  overflow: hidden;
  word-wrap: break-word;
  hyphens: auto;
}

.app__meta .app--detail .title.title--medium {
  font-size: 20px;
}

.app__meta .app--detail .title.title--long {
  font-size: 18px;
}

.app__meta .app--detail .tag {
  font-size: 15px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: -0.2px;
  color: #8c8c8c;
  font-family: 'SF Pro Text';
  display: block;
}

/* App type badges */
.app-badge {
  display: inline-block;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.5px;
  vertical-align: middle;
  margin-left: 5px;
}

.app-badge-free {
  background-color: #4CAF50;
  color: white;
}

.app-badge-vip {
  background-color: #FF9800;
  color: white;
  position: relative;
  overflow: hidden;
}

@keyframes shineVIP {
    0% { transform: translateX(-100%) rotate(30deg); }
    20%, 100% { transform: translateX(100%) rotate(30deg); }
}

.app-badge-tiny {
  font-size: 8px;
  padding: 1px 4px;
  vertical-align: top;
  margin-left: 3px;
}

.app-badge-tiny .vip-bolt-icon {
  font-size: 7px;
}

.vip-bolt-icon {
  color: #FFD700;
  font-size: 10px;
}

/* ViP Welcome Toast Styling */
.toast.toast--vip-welcome {
  background: linear-gradient(45deg, #b0690a, #d4af37) !important;
  color: #ffffff !important;
  font-weight: bold;
}

.toast.toast--vip-welcome .toast-button {
  color: #ffffff !important;
}

.toast.toast--vip-welcome .toast-icon i {
  color: #ffffff !important;
}

.toast.toast--vip-welcome a.link {
    color: #fff !important;
    text-decoration: underline;
}

.app__meta .app--detail a.link {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: -0.3px;
  text-align: center;
  color: #ffffff;
  font-family: 'SF Pro Text';
  height: auto;
  line-height: 1;
  padding: 6px 0px;
  width: auto;
  background-color: #41879f;
  border-color: #41879f;
}

.app__meta .app--detail .app--detail__downloads {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.app__meta .app--detail .app--detail__downloads .btn-download,
.app__meta .app--detail .app--detail__downloads .btn-vip-required {
  flex: none;
  overflow: unset;
}

.app__meta .app--detail .app--detail__downloads .btn-more-option {
  width: 30px;
  text-align: center;
  padding: 0;
  line-height: 30px;
  height: 30px;
  font-size: 22px;
}

.app__meta .app__meta--bottom ul {
  margin: 0;
  padding: 20px;
  list-style: none;
  border-bottom: 1px solid #e5e5e5;
}

.app__meta .app__meta--bottom ul li {
  text-align: center;
}

.app__meta .app__meta--bottom ul li strong span {
  display: block;
  font-size: 22px;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 4px;
  letter-spacing: 0.3px;
  text-align: center;
  color: #858e98;
  font-family: 'SF Pro Text';
}

.app__meta .app__meta--bottom ul li sub {
  font-size: 12px;
  font-weight: 500;
  font-family: 'SF Pro Text';
  vertical-align: bottom;
}

.app__meta .app__meta--bottom ul li span {
  font-size: 12px;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  color: #c8c7cc;
}

.app__description {
  margin: 20px;
  border-bottom: 1px solid #e5e5e5;
  min-height: 150px;
}

.app__information {
  padding: 0 20px;
}

.app__description .title, .app__information .title {
  font-size: 22px;
  font-weight: bold;
  font-family: 'SF Pro Text';
  line-height: 1;
  letter-spacing: 0.3px;
  color: #000000;
  margin: 0 0 10px 0;
  padding: 0;
}

.app__description p {
  margin: 0;
  padding: 0;
  font-size: 15px;
  line-height: 1.33;
  letter-spacing: -0.2px;
  color: #000000;
  font-family: 'SF Pro Text';
  margin-bottom: 15px;
  word-break: break-word;
}

.app__description p:last-of-type {
  margin-bottom: 0;
}

.ios .app__itunes-info.list {
  margin: 0;
}

.ios .app__itunes-info.list .item-after {
  white-space: normal;
  max-width: 70%;
  word-break: break-word;
  font-size: 14px;
  line-height: 1.1;
}

.swiper--wrapper {
  background-color: #f6f6f6;
  border-top: solid 0.5px #dbdbdb;
  border-bottom: solid 0.5px #dbdbdb;
  padding: 20px 0;
}

.swiper--wrapper .swiper-slide {
  font-size: 0;
  height: 164px;
  border-radius: 7px;
  background-color: #ffffff;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.03);
  width: calc(100% - 40px) !important;
  overflow: hidden;
}

.swiper--wrapper .swiper-slide img {
  width: 100%;
  height: auto;
  display: block;
}

.swiper--wrapper .swiper-slide.swiper-slide--portrait {
  height: unset;
}

.swiper--wrapper .swiper-slide:first-child {
  margin-left: 20px;
}

.page-content .content {
  margin-bottom: 60px;
}

.app__more-apps {
  margin-bottom: 60px !important;
}

.toolbar {
  background-color: #ffffff;
  box-shadow: 0 1px 9px 0 rgba(0, 0, 0, 0.06);
  min-height: 56px;
  position: fixed;
}

.toolbar a,
.toolbar a.link {
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.2px;
  text-align: center;
  color: #41879f;
  font-family: 'SF Pro Text';

}

.custom-nav-link.active, .custom-bottom-nav a.link.active, .toolbar a.link.active {
  color: #007aff;
}

.custom-nav-link.active, .custom-bottom-nav a.link.active, .toolbar a.link.active svg path {
  fill: #007aff;
}

.toolbar-bottom-md:after {
  display: none;
}

.ios .toolbar:before {
  display: none;
}

/* Liquid Glass Bottom Navigation Bar */
.custom-bottom-nav, .toolbar.toolbar-bottom {
  /* Light mode liquid glass effect */
  background: linear-gradient(180deg, 
    rgba(255, 255, 255, 0.75) 0%, 
    rgba(255, 255, 255, 0.85) 100%);
  backdrop-filter: blur(40px) saturate(200%) brightness(1.15);
  -webkit-backdrop-filter: blur(40px) saturate(200%) brightness(1.15);
  box-shadow: 
    0 -0.5px 0 rgba(0, 0, 0, 0.15), 
    0 -4px 16px rgba(0, 0, 0, 0.1),
    0 -1px 2px rgba(0, 0, 0, 0.05),
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    inset 0 -1px 0 rgba(255, 255, 255, 0.5);  
  /* Floating appearance with asymmetric margins for web view visual balance */
  border-radius: 20px;
}

/* Dark mode - instant application to prevent flash */
@media (prefers-color-scheme: dark) {
  .custom-bottom-nav, .toolbar.toolbar-bottom {
    background: linear-gradient(180deg, 
      rgba(28, 28, 30, 0.75) 0%, 
      rgba(28, 28, 30, 0.85) 100%) !important;
    backdrop-filter: blur(40px) saturate(200%) brightness(0.85) !important;
    -webkit-backdrop-filter: blur(40px) saturate(200%) brightness(0.85) !important;
    box-shadow: 
      0 -0.5px 0 rgba(255, 255, 255, 0.15), 
      0 -4px 16px rgba(0, 0, 0, 0.3),
      0 -1px 2px rgba(0, 0, 0, 0.2),
      inset 0 1px 0 rgba(255, 255, 255, 0.1),
      inset 0 -1px 0 rgba(255, 255, 255, 0.05) !important;
  }
  
  /* Standalone mode margins within dark mode 
  @media (display-mode: standalone) {
    .custom-bottom-nav, .toolbar.toolbar-bottom {
      margin: 8px 12px 12px 12px !important;
    }
  }*/
}

/* Standalone mode - JavaScript-based detection fallback 
.standalone-mode .custom-bottom-nav,
.standalone-mode .toolbar.toolbar-bottom {
  margin: 8px 12px 12px 12px !important;
}*/

/* Interactive tab elements */
.custom-bottom-nav .custom-nav-link, 
.toolbar.toolbar-bottom .tab-link {
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  border-radius: 16px;
  margin: 6px 4px;
  position: relative;
  overflow: hidden;
}

.custom-bottom-nav .custom-nav-link:active, 
.toolbar.toolbar-bottom .tab-link:active {
  transform: scale(0.92);
  background: rgba(0, 122, 255, 0.15);
  backdrop-filter: blur(20px) saturate(150%) brightness(1.2);
  -webkit-backdrop-filter: blur(20px) saturate(150%) brightness(1.2);
  box-shadow: 
    0 2px 8px rgba(0, 122, 255, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

/* Ripple effect on tap */
.custom-bottom-nav .custom-nav-link::after, 
.toolbar.toolbar-bottom .tab-link::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 122, 255, 0.5) 0%, rgba(0, 122, 255, 0.2) 70%, transparent 100%);
  transform: translate(-50%, -50%);
  transition: width 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), height 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.6s ease;
  pointer-events: none;
  opacity: 0;
}

.custom-bottom-nav .custom-nav-link:active::after, 
.toolbar.toolbar-bottom .tab-link:active::after {
  width: 80px;
  height: 80px;
  opacity: 1;
}

.toolbar.toolbar-bottom .toolbar-inner {
  padding-top: 12px;
  height: auto;
  overflow: visible;
}

.toolbar-inner {
  position: sticky;
}

.search-list{
    margin-top: 0px !important;
}

.ios .navbar ~ .page-with-subnavbar:not(.no-navbar) .page-content,
.ios .page-with-subnavbar .navbar ~ .page-content,
.ios .navbar ~ *:not(.no-navbar) .subnavbar ~ .page-content,
.ios .navbar ~ *:not(.no-navbar) .subnavbar ~ * .page-content {
    padding-top: 44px;
}

.announcement {
    background-color: #C9805C;
    padding: 10px 50px;
    text-align: center;
    color: white;
    position: relative;
}

.announcement .close {
    position: absolute;
    top: 11px;
    right: 10px;
    text-align: center;
    line-height: 20px;
    vertical-align: middle;
    font-size: 20px;
    color: white;
}

.content h1 {
  margin: 0 20px 13px;
  padding: 24px 20px 10px 0;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.21;
  letter-spacing: 0.4px;
  color: #000000;
  font-family: 'SF Pro Text';
  border-bottom: 1px solid #e5e5e5;
}
.content h2 {
    margin: 0 0 6px 0;
    padding: 0 20px;
    font-size: 17px;
    font-weight: 600;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.29;
    letter-spacing: -0.1px;
    color: #000000;
}

/* New section heading class to maintain visual consistency */
.content h2.section-heading {
  margin: 0 20px 13px;
  padding: 24px 20px 10px 0;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.21;
  letter-spacing: 0.4px;
  color: #000000;
  font-family: 'SF Pro Text';
  border-bottom: 1px solid #e5e5e5;
}

/* Style h3 to match the previous h2 styles */
.content h3 {
    margin: 0 0 6px 0;
    padding: 0 20px;
    font-size: 17px;
    font-weight: 600;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.29;
    letter-spacing: -0.1px;
    color: #000000;
}
.content .app-list {
    margin: 0;
    padding: 0 20px;
    width: 100%;
}
.content .app-list li {
    display: flex;
    /* align-items: center;  */
    justify-content: space-between;
    width: 100%;
    width: 100%;
   /* Add fade-in animation for app list items */
   animation: fadeInAppItem 0.5s ease-in-out forwards;
   opacity: 0;
}

/* Fade in animation */
@keyframes fadeInAppItem {
   from {
       opacity: 0;
       transform: translateY(15px);
   }
   to {
       opacity: 1;
       transform: translateY(0);
   }
}

/* Stagger the animation for each item */
.content .app-list li:nth-child(1) { animation-delay: 0.05s; }
.content .app-list li:nth-child(2) { animation-delay: 0.1s; }
.content .app-list li:nth-child(3) { animation-delay: 0.15s; }
.content .app-list li:nth-child(4) { animation-delay: 0.2s; }
.content .app-list li:nth-child(5) { animation-delay: 0.25s; }
.content .app-list li:nth-child(6) { animation-delay: 0.3s; }
.content .app-list li:nth-child(7) { animation-delay: 0.35s; }
.content .app-list li:nth-child(8) { animation-delay: 0.4s; }

.content .app-list li:last-child{
    border-bottom: 0;
    margin-bottom: 14px;
}
.content .app-list li .app-meta{
  display: flex;
  align-items: center;
  flex: 1;
  justify-content: space-between;
  padding: 10px 0;
  border-bottom: 1px solid #e5e5e5;
}
.content .app-list li .app-icon {
    min-width: 60px;
    width: 60px;
    height: 80px;
    margin-right: 10px;
    border-radius: 15%;
    overflow: hidden;
    padding: 10px 0;
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.content .app-list li .app-icon:hover {
    transform: scale(1.08);
}

.content .app-list li .app-icon img {
    max-width: 100%;
    border-radius: 12px;
    height: auto; /* Prevent layout shift */
    aspect-ratio: 1 / 1; /* Assume square icon */
    display: block; /* Prevent extra space */
}
.content .app-list li .app-meta .app-title strong {
    display: block;
    font-size: 17px;
    line-height: 1.29;
    letter-spacing: -0.4px;
    color: #000000;
    font-family: 'SF Pro Text';
    font-weight: normal;
    margin-bottom: 3px;
    transition: color 0.2s ease, transform 0.2s ease;
}

.content .app-list li .app-meta .app-title:hover strong {
    color: #41879f;
    transform: translateX(2px);
}

.content .app-list li .app-meta .app-title span {
    display: block;
    font-size: 13px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    line-height: normal;
    letter-spacing: -0.2px;
    color: #8c8c8c;
    transition: color 0.2s ease, transform 0.2s ease;
}

.content .app-list li .app-meta .app-title:hover span {
    color: #666666;
    transform: translateX(2px);
}

.content .app-list li .app-meta .app-title span.app-updated-time {
    font-size: 11px;
    margin-top: 3px;
    color: #41879f;
}

.content .demo-swiper .swiper-slide {
    justify-content: flex-start;
}
.content .app-list li a.download-btn {
    font-size: 16px;
    font-weight: bold;
    letter-spacing: -0.3px;
    text-align: center;
    color: #ffffff;
    font-family: 'SF Pro Text';
    height: auto;
    line-height: 1;
    padding: 6px 14px;
    min-width: 60px;
    width: auto;
    background-color: #41879f;
    border-color: #41879f;
    white-space: nowrap;
    overflow: visible;
    /* Add transition for hover effect */
    transition: all 0.3s ease-out;
}

.content .app-list li a.download-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(65, 135, 159, 0.3);
    background-color: #4a95af;
}

.content .app-list li a.download-btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 5px rgba(65, 135, 159, 0.2);
}

/* Adjust app-meta layout for better spacing */
.content .app-list li .app-meta {
    display: flex;
    align-items: center;
    flex: 1;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: 1px solid #e5e5e5;
    overflow: hidden;
}

/* Ensure app title doesn't push button off screen */
.content .app-list li .app-meta .app-title {
    flex: 1;
    overflow: hidden;
    padding-right: 8px;
}

  .swiper-slide.swiper-slide-active{
    width: 98%;
  }

  .content .toolbar a , .content .toolbar a.link {
      flex-wrap: wrap;
      height: auto !important;
      line-height: 1 !important;
  }
  .content .toolbar a:last-child , .content .toolbar a.link:last-child {
      padding-right: 20px;
  }
  .content .toolbar a span, .content .toolbar a.link span {
      width: 100%;
      margin-top: 5px;
      display: block;
  }

.ios .navbar-hidden ~ .page > .page-content {
  padding-top: 0 !important;
}

.page--featured .shrinkable-title {
  margin-bottom: 0;
  border: 0;
}

.ios .searchbar, .ios .subnavbar {
  background-color: white;
}

.ios .subnavbar {
  box-shadow: 0 1px 1px 0 rgba(120, 120, 120, 0.37);
}

.ios .searchbar:after {
  display: none;
}

.hidden {
  display: none !important;
}

.ios .navbar:not(.navbar-hidden) ~ .page-current.page-with-subnavbar:not(.page--trending-search) .page-content {
  padding-top: 44px;
}

.ios .navbar:not(.navbar-hidden) ~ .page-current.page-with-subnavbar.page--trending-search.no-scroll .page-content {
  padding-top: 40px;
}

.ios .navbar:not(.navbar-hidden) ~ .page-current.page-with-subnavbar.page--trending-search.no-transition .page-content {
  transition: unset;
}

.ios .navbar:not(.navbar-hidden) ~ .page-current.page-with-subnavbar.page--search-focused .page-content .content {
  margin-top: -50px;
  transition: all .4s;
}

.ios .navbar.no-shadow {
  box-shadow: none;
}

.ios .page-current.page--trending-search .page-content .searchbar-hide-on-search > h2 {
  margin-top: 15px;
}

.ios .searchbar .searchbar-inner {
  margin-top: -5px;
  padding: 0 15px;
}

.ios .page-current .searchbar {
  z-index: 1;
}

.ios .navbar .navbar--search-focused.navbar-current {
  transform: translate3d(0, -35px, 0);
  transition: all .4s;
  background-color: white;
}

.ios .navbar.navbar-hidden {
  box-shadow: none;
}

.cloneable {
  display: none;
}

.page-current .page-content .search-list .item-list .item-title {
  cursor: pointer;
}

.popup-screenshot .swiper-container {
  height: calc(100% - 80px);
}

.popup-screenshot .swiper-container .swiper-slide {
  width: calc(100% - 40px) !important;
  overflow: hidden;
  border-radius: 10px;
}

.popup-screenshot .swiper-container .swiper-slide:first-child {
  margin-left: 20px;
}

.popup-screenshot .swiper-container .swiper-slide:not(.swiper-slide--portrait) img {
  transform: rotate(-90deg);
  min-width: calc(100vh - 80px);
  min-height: calc(100vw - 40px);
}

@media(min-width: 630px){
  .popup-login{
    max-width: 500px;
    max-height: 300px;
  }
}

.item-content.recaptcha {
  margin-top: 20px;
}

.login-screen-content .btn-login-submit {
  visibility: hidden;
  max-width: 0;
  max-height: 0;
  padding: 0;
  border: 0;
}

.login-screen-subtitle {
  text-align: center;
  font-size: 16px;
  margin: 0;
}

.social-buttons {
  float: right;
  margin-top: 30px;
  margin-right: 20px;
  position: relative;
}

.navbar .social-buttons {
  margin-top: 0;
  margin-right: 15px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.social-buttons .btn-share i, .social-buttons .btn-notification-bell i, .refresh-buttons .btn-refresh i, .btn-open-notifications i {
  color: grey;
  font-size: 20px;
}


.refresh-buttons {
  float: right;
  margin-top: 30px;
  margin-right: 10px;
  position: relative;
}

.popover-social .block {
  margin: 15px 0;
}

.popover-social .block > h3 {
  margin-bottom: 0;
}

.popover-social .block > hr {
  opacity: .4;
}

.popover-social .block > .page-link {
  margin-top: 15px;
}

.popover-social .block > .page-link label {
  font-weight: 600;
}

.popover-social .block > .page-link .page-link__display {
  margin-top: 5px;
  position: relative;
  cursor: pointer;
}

.popover-social .block > .page-link .page-link__display input {
  display: block;
  width: 100%;
  box-shadow: inset 0px 0px 5px 0px rgba(0,0,0,.2);
  padding: 4px 26px 4px 4px;
  font-size: 13px;
  border-radius: 4px;
  background-color: rgba(0,0,0,.02);
  border: 1px solid rgba(0,0,0,.3);
}

.popover-social .block > .page-link .page-link__display .page-link__display__btn-clipboard {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 26px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.popover-social .block > .page-link .page-link__display .page-link__display__btn-clipboard i {
  color: grey;
}

.popover-social .block > .share-target .share-target__title {
  font-weight: 600;
  margin-bottom: 5px;
}

.popover-social .block > .share-target .share-target__sites {
  display: flex;
  flex-wrap: wrap;
}

.popover-social .block > .share-target .share-target__sites a {
  min-width: 28px;
  max-width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  float: left;
  margin-right: 5px;
}

.popover-social .block > .share-target .share-target__sites a.btn-facebook {
  background-color: #3F51B5;
}

.popover-social .block > .share-target .share-target__sites a.btn-twitter {
  background-color: #03A9F4;
}

.popover-social .block > .share-target .share-target__sites a.btn-bluesky {
  background-color: #1DA1F2;
}

.popover-social .block > .share-target .share-target__sites a.btn-telegram {
  background-color: #0088cc;
}

.popover-social .block > .share-target .share-target__sites a.btn-whatsapp {
  background-color: #25D366;
}

.popover-social .block > .share-target .share-target__sites a.btn-email {
  background-color: grey;
}

.popover-social .block > .share-target .share-target__sites a i {
  color: white;
}

.fab.fa-bluesky {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 64 57' %3E%3Cpath fill='%23ffffff' d='M13.873 3.805C21.21 9.332 29.103 20.537 32 26.55v15.882c0-.338-.13.044-.41.867-1.512 4.456-7.418 21.847-20.923 7.944-7.111-7.32-3.819-14.64 9.125-16.85-7.405 1.264-15.73-.825-18.014-9.015C1.12 23.022 0 8.51 0 6.55 0-3.268 8.579-.182 13.873 3.805ZM50.127 3.805C42.79 9.332 34.897 20.537 32 26.55v15.882c0-.338.13.044.41.867 1.512 4.456 7.418 21.847 20.923 7.944 7.111-7.32 3.819-14.64-9.125-16.85 7.405 1.264 15.73-.825 18.014-9.015C62.88 23.022 64 8.51 64 6.55c0-9.818-8.578-6.732-13.873-2.745Z'%3E%3C/path%3E%3C/svg%3E");
  display: inline-block;
  width: 14px;
  height: 14px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.page--app-detail .page-content .app-content .social-buttons {
  margin-top: -25px;
}

.page--app-detail .page-content .social-buttons {
  margin-top: 10px;
}

.navbar .navbar-previous .subnavbar {
  display: none;
}

.page--user-info {
  padding-bottom: 5px;
}

.page--user-info .btn-login {
  padding: 10px 20px;
}

.page--user-info .btn-login button {
  height: 35px;
}

.page--user-info .profile-container .user-info {
  margin-top: 10px;
}

.page--user-info .profile-container .user-info .accordion-item .item-inner {
  padding-top: 15px;
  padding-bottom: 15px;
  justify-content: start;
}

.page--user-info .profile-container .user-info .accordion-item .item-inner .avatar {
  width: 80px;
  height: 80px;
  min-width: 80px;
  min-height: 80px;
  overflow: hidden;
  border-radius: 50%;
  margin-right: 20px;
}

.page--user-info .profile-container .user-info .accordion-item .item-inner .avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page--user-info .profile-container .user-info .accordion-item .item-inner .main-info .name {
  font-weight: bold;
  font-size: 24px;
}

.page--user-info .profile-container .user-info .accordion-item .item-inner .main-info .group {
  font-size: 14px;
  display: inline;
  align-items: center;
}

.vip-badge {
  background-color: #FF9800;
  color: white;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.5px;
  position: relative;
  overflow: hidden;
}

.vip-badge:after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
      to right,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.3) 50%,
      rgba(255, 255, 255, 0) 100%
  );
  transform: rotate(30deg);
  animation: shineVIP 3s infinite;
}

.vip-badge i {
  color: #FFD700; /* Gold color */
  margin-right: 2px;
  position: relative;
  z-index: 1;
}

.page--user-info .profile-container .user-info .accordion-item .item-inner .field-content {
  white-space: initial;
}

.page--user-info .profile-container .user-info .accordion-item .btn-logout-wrapper {
  padding: 15px;
}

.toast--vip {
  min-width: 90vw;
}

.toast--vip .toast-content {
  width: 90vw;
}

.toast--vip .toast-content a.link {
  margin-top: 10px;
}

.page-current .swiper-container .swiper-slide:first-child {
  margin-left: 20px;
}

.page-current .swiper-container .swiper-slide {
  width: -webkit-calc(100% - 40px) !important;
  width: calc(100% - 40px) !important;
}

.page-current .swiper-container .swiper-slide .app-list {
  padding: 0;
}

.navbar-inner .center.image {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 30px;
  height: 30px;
  border-radius: 5px;
  overflow: hidden;
}

.navbar-inner .center.image img {
  width: 100%;
}

.page--app-detail .big-size-tooltip {
  position: relative;
  color: #c8c7cc;
}

.searchbar-hide-on-search ul:not(:first-child):before {
  display: none;
}

.btn-see-all {
  margin-right: 20px;
  font-size: 15px;
}

.btn-see-all:after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: 5px;
}

.navbar-previous {
  opacity: 0;
}

.app__more-apps {
  padding: 20px 0;
  margin-top: 20px;
}

.app__more-apps h2 {
  font-size: 22px;
  font-weight: 700;
  font-family: 'SF Pro Text';
  line-height: 1;
  letter-spacing: .3px;
  color: #000;
  margin: 0 0 10px 20px;
  padding: 0;
}

.infinite-scroll-content .infinite-scroll-preloader {
  margin-bottom: 90px;
}

/* Center toasts horizontally on desktop (tablet and up) */
@media (min-width: 768px) {
  .toast.toast-top,
  .toast.toast-bottom {
    left: 50% !important;
    transform: translateX(-50%) !important;
    max-width: 600px !important;
    width: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* Fix flexbox centering issue for all toasts */
.toast .toast-content {
  display: block !important;
  text-align: center;
  align-items: baseline;

}

/* Toast close button styling - positioned in top-right corner */
.toast .toast-button,
.toast-button {
  position: absolute;
  top: 8px;
  right: 8px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1;
  padding: 4px;
  margin: 0;
  min-width: auto;
  width: auto;
  height: auto;
  opacity: 1;
  visibility: visible;
  display: block;
  background: none;
  border: none;
}

.toast .toast-button:active,
.toast-button:active {
  opacity: 0.3 !important;
}

.ios .navbar .right:first-child {
  right: -webkit-calc(14px + var(--f7-safe-area-right));
  right: calc(14px + var(--f7-safe-area-right));
}

a.author_name {
  color: #8c8c8c;
}

.w-full {
  width: 100% !important;
}

/* Search Page Redesign */
.search-section {
  margin-bottom: 20px;
  padding: 15px 0;
}

.section-header {
  margin-bottom: 16px;
  padding: 0 16px;
}

.section-title {
  font-size: 20px;
  font-weight: 600;
  margin: 0;
  color: #000;
}

.section-icon {
  margin-right: 8px;
  color: #007aff;
}

/* Trending Searches Grid */
.trending-searches-grid {
  display: flex;
  flex-wrap: wrap;
  padding: 0 8px;
}

.trending-search-item {
  width: calc(50% - 16px);
  margin: 0 8px 16px;
  background-color: #f7f7f7;
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275),
              box-shadow 0.2s ease,
              background-color 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  opacity: 1;
}

.trending-search-item:nth-child(2n) {
  animation-delay: 0.05s;
}

.trending-search-item:nth-child(3n) {
  animation-delay: 0.1s;
}

.trending-search-item:nth-child(4n) {
  animation-delay: 0.15s;
}

.trending-search-link {
  display: block;
  padding: 14px;
  color: #333;
  text-decoration: none;
  position: relative;
}

.trending-search-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(120deg, rgba(255,255,255,0) 30%, rgba(255,255,255,0.4) 50%, rgba(255,255,255,0) 70%);
  background-size: 200% 100%;
  background-position: -100% 0;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.trending-search-item.item-active .trending-search-link::before {
  opacity: 1;
  animation: shimmer 1.2s cubic-bezier(0.19, 1.0, 0.22, 1.0) forwards;
}

.trending-search-item .search-term {
  font-size: 15px;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 5px;
}

.trending-search-item.item-active {
  transform: scale(1.02);
  box-shadow: 0 4px 12px rgba(0, 122, 255, 0.15);
}

/* Categories Grid */
.categories-grid {
  display: flex;
  flex-wrap: wrap;
  padding: 0 8px;
}

.category-item,
.quick-link-item {
  width: calc(33.333% - 16px);
  margin: 0 8px 16px;
  transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275),
              box-shadow 0.2s ease;
  animation: fadeInUp 0.5s ease forwards;
  opacity: 0;
}

.category-item:nth-child(3n+1) {
  animation-delay: 0.1s;
}

.category-item:nth-child(3n+2) {
  animation-delay: 0.15s;
}

.category-item:nth-child(3n+3) {
  animation-delay: 0.2s;
}

.category-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 16px 8px;
  text-decoration: none;
  background-color: #f7f7f7;
  border-radius: 12px;
  height: 100%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  transition: background-color 0.3s ease;
}

.category-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 10px;
  background-color: #007aff;
  color: white;
  border-radius: 12px;
  font-size: 22px;
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275),
              background-color 0.3s ease;
}

.category-name {
  font-size: 14px;
  font-weight: 500;
  color: #333;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  transition: color 0.3s ease;
}

.category-item.item-active .category-link {
  transform: scale(1.05);
  box-shadow: 0 4px 12px rgba(0, 122, 255, 0.15);
}

.category-item.item-active .category-icon {
  transform: scale(1.1) translateY(-2px);
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(15px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Checkmark fade-in animation */
.version-checkmark-animated {
  animation: fadeIn 0.4s ease-in forwards;
}

/* App icon fade-in animation - faster for better perceived performance */
.app--logo img, .navbar-inner .center.image, .app-info-sideloadly__logo img  {
  animation: fadeIn 0.4s ease-out forwards;
}

@keyframes shimmer {
  0% {
    background-position: -100% 0;
  }
  100% {
    background-position: 200% 0;
  }
}

/* Tablet/Desktop Layout */
@media (min-width: 768px) {
  .trending-search-item {
    width: calc(33.333% - 16px);
  }

  .category-item {
    width: calc(25% - 16px);
  }
}

/* Always use grid layout for trending searches - 3x3 grid */
.trending-searches-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 10px;
  padding: 0 10px;
}

.trending-search-item {
  width: 100%;
  margin: 0;
}

/* Add reduced motion support */
@media (prefers-reduced-motion: reduce) {
  .trending-search-item,
  .category-item {
    animation: none;
    opacity: 1;
  }

  .trending-search-item.item-active .trending-search-link::before {
    animation: none;
    opacity: 0.5;
  }

  .category-item.item-active .category-icon,
  .trending-search-item.item-active,
  .category-item.item-active .category-link {
    transition: none;
    transform: none;
  }
}

.toggle-dark-mode i {
  font-size: 22px;
  margin-right: 10px;
}

/* Notification styling */
.notification {
  max-width: 90%;
  margin-left: auto !important;
  margin-right: auto !important;
  left: 0 !important;
  right: 0 !important;
  transform: none !important;
}

.notification .notification-header {
  padding: 10px 16px;
}

.notification .notification-content {
  padding-top: 0;
}

.notification .notification-icon {
  background-color: transparent !important;
}

.notification .notification-icon i {
  font-size: 20px;
  color: #41879f;
}

.notification-title {
  color: #000;
}

.notification-subtitle,
.notification-text {
  color: #000;
}

/* Notification styling */
@media (min-width: 768px) {
  .notification {
    max-width: 600px;
    width: auto !important;
  }
}

/* Install Instructions Sheet Modal */
/* App+ sheets toolbar styling - matches App+ Purchase Sheet */
.sheet-app-plus-install .toolbar,
.sheet-app-plus-status .toolbar {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  height: 44px;
}

.sheet-app-plus-install .toolbar .toolbar-inner,
.sheet-app-plus-status .toolbar .toolbar-inner {
  padding: 0 10px;
  color: white;
}

.sheet-app-plus-install .toolbar .toolbar-inner .title,
.sheet-app-plus-status .toolbar .toolbar-inner .title {
  color: white;
  font-weight: 600;
  font-size: 17px;
}

.sheet-app-plus-install .toolbar .toolbar-inner .title i,
.sheet-app-plus-status .toolbar .toolbar-inner .title i {
  margin-right: 5px;
  color: white;
}

.sheet-install-instructions .toolbar .toolbar-inner .right a,
.sheet-app-plus-install .toolbar .toolbar-inner .right a,
.sheet-app-plus-status .toolbar .toolbar-inner .right a {
  color: white;
  font-weight: 600;
  font-size: 20px;
  line-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: 0;
}

.sheet-install-instructions .toolbar .toolbar-inner .right a i,
.sheet-app-plus-install .toolbar .toolbar-inner .right a i,
.sheet-app-plus-status .toolbar .toolbar-inner .right a i {
  margin: 0;
}

/* Global sheet-modal-inner defaults */
.sheet-modal .sheet-modal-inner {
  /* Account for toolbar height */
  height: calc(100% - 44px) !important;
  overflow: hidden !important;
  position: relative;
}

/* Global page-content defaults for sheets */
.sheet-modal .page-content {
  height: 100% !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

/* Common install sheet styling (Enterprise Certificate & App+ Installation) */
.sheet-modal.sheet-install-instructions,
.sheet-modal.sheet-app-plus-install {
  height: 80%;
  --f7-sheet-bg-color: #fff;
}

/* App+ Subscription Status sheet - full height like App+ Purchase Sheet */
.sheet-modal.sheet-app-plus-status {
  height: 100%;
  --f7-sheet-bg-color: #fff;
}

/* Sheet modal inner styling */
.sheet-install-instructions .sheet-modal-inner,
.sheet-app-plus-install .sheet-modal-inner,
.sheet-app-plus-status .sheet-modal-inner {
  height: calc(100% - 44px);
  overflow: hidden;
  padding: 0;
}

/* Page content inside sheets should be scrollable */
.sheet-install-instructions .page-content,
.sheet-app-plus-install .page-content,
.sheet-app-plus-status .page-content {
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 15px 0;
}

/* Swipe step indicator */
.sheet-install-instructions .sheet-modal-swipe-step,
.sheet-app-plus-install .sheet-modal-swipe-step,
.sheet-app-plus-status .sheet-modal-swipe-step {
  width: 36px;
  height: 5px;
  background: #c8c8cd;
  border-radius: 8px;
  margin: 0 auto 15px;
  opacity: 0.6;
}

/* Install content styling */
.sheet-install-instructions .install-instructions-content,
.sheet-app-plus-install .install-instructions-content {
  font-size: 15px;
  line-height: 1.4;
  padding: 0 15px;
}

/* Install Header Styling */
.install-header {
  text-align: center;
  margin-bottom: 20px;
}

.install-header h3 {
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 10px;
  color: var(--f7-theme-color, #007aff);
}

.install-details {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
}

.install-details span {
  font-size: 14px;
  padding: 2px 10px;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.05);
}

.install-details .version {
  color: #8e8e93;
}

.install-details .size {
  color: #8e8e93;
}

.install-details .free-badge {
  background-color: rgba(0, 187, 51, 0.1);
  color: #00bb33;
  font-weight: 600;
}

.install-details .vip-badge {
  background-color: rgba(244, 155, 0, 0.1);
  color: #f49b00;
  font-weight: 600;
}

.install-details .vip-badge i {
  margin-right: 3px;
  color: #f49b00;
}

/* Install Steps Styling */
.install-steps {
  margin-bottom: 20px;
}

.step {
  display: flex;
  margin-bottom: 16px;
}

.step-number {
  width: 30px;
  height: 30px;
  background-color: var(--f7-theme-color, #007aff);
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  margin-right: 12px;
  flex-shrink: 0;
}

.step-content {
  flex: 1;
}

.step-content > strong {
  font-weight: 600;
  color: var(--f7-theme-color, #007aff);
  font-size: 16px;
  display: block;
  margin-bottom: 5px;
}

/* Style for inline strong tags within paragraphs */
.step-content p strong {
  font-weight: 600;
  display: inline;
  font-size: inherit;
  margin: 0;
}

.step-content p {
  margin: 0;
  color: #333;
}

/* Install Note Styling */
.install-note {
  background-color: rgba(0, 122, 255, 0.08);
  border-radius: 8px;
  padding: 15px;
  margin-bottom: 20px;
}

.install-note strong {
  font-weight: 600;
  color: var(--f7-theme-color, #007aff);
  display: block;
  margin-bottom: 5px;
}

.install-note p {
  margin: 0;
}

/* Install Alternatives Styling */
.install-alternatives {
  margin-bottom: 20px;
}

.install-alternatives h4,
.install-help h4 {
  font-size: 16px;
  font-weight: 600;
  margin: 0 0 10px;
  color: var(--f7-theme-color, #007aff);
}

.alt-method {
  display: flex;
  margin-bottom: 15px;
  align-items: flex-start;
}

.alt-method i {
  font-size: 20px;
  margin-right: 10px;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--f7-theme-color, #007aff);
}

.alt-method div {
  flex: 1;
}

.alt-method strong {
  display: block;
  margin-bottom: 3px;
  font-weight: 600;
}

.alt-method p {
  margin: 0;
  font-size: 14px;
}

/* Install Help Styling */
.install-help {
  background-color: rgba(0, 0, 0, 0.03);
  border-radius: 8px;
  padding: 15px;
}

.install-help p {
  margin: 0;
}

/* Link styling */
.install-instructions-content a.external {
  text-decoration: none;
  color: var(--f7-theme-color, #007aff);
}

/* Grid layout for tablet and desktop screens */
.content .app-list.app-list-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.content .app-list.app-list-grid .app-list-item-grid {
    width: 48%; /* Slightly less than 50% to allow for spacing */
    margin-bottom: 10px;
}

.content .app-list.app-list-grid .app-list-item-grid .app-meta {
    border-bottom: 1px solid #e5e5e5;
}

.content .app-list.app-list-grid .app-list-item-grid:nth-child(even) {
    margin-left: 2%;
}

.content .app-list.app-list-grid .app-list-item-grid:nth-child(odd) {
    margin-right: 2%;
}

/* Responsive grid layout */
@media (min-width: 768px) {
    .content .app-list.responsive-grid {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .content .app-list.responsive-grid .app-list-item {
        width: 48%; /* Slightly less than 50% to allow for spacing */
        margin-bottom: 10px;
    }

    .content .app-list.responsive-grid .app-list-item:nth-child(even) {
        margin-left: 1%;
    }

    .content .app-list.responsive-grid .app-list-item:nth-child(odd) {
        margin-right: 1%;
    }

    /* Adjust swiper to show 6 apps per slide instead of 3 */
    .swiper-container.demo-swiper-auto .swiper-slide[data-offset="40"] .app-list.responsive-grid {
        max-height: none;
    }

    /* Ensure the swiper slide is tall enough to accommodate 3 rows */
    .swiper-container.demo-swiper-auto .swiper-slide[data-offset="40"] {
        height: auto !important;
        min-height: 300px;
    }
}

/* Clickable elements styling */
.clickable {
    cursor: pointer;
    transition: opacity 0.2s ease;
}

.clickable:hover {
    opacity: 0.85;
}

.app-icon.clickable {
    position: relative;
}

.app-icon.clickable:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    transition: opacity 0.2s ease;
    border-radius: 12px;
}

.app-icon.clickable:hover:after {
    opacity: 1;
}

.app-title.clickable strong {
    transition: color 0.2s ease;
}

.app-title.clickable:hover strong {
    color: #007aff;
}

.vip-download-btn {
  background-color: #FF9800 !important;
  border-color: #FF9800 !important;
}

.vip-download-btn .vip-bolt-icon {
  font-size: 15px;
}

/* App Details Page Hover Animations */
.app--logo {
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.3s ease;
    position: relative;
    z-index: 1;
    border-radius: 22%;
    overflow: visible; /* Changed from hidden to visible for badge overlay */
}

.app--logo:hover {
    transform: scale(1.08);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    z-index: 2;
}

.app--logo img {
    width: 100%;
    height: auto;
    display: block;
    transition: filter 0.3s ease;
    border-radius: 22%;
}

.app--logo:hover img {
    filter: brightness(1.05);
}

.app--detail__downloads .button {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.app--detail__downloads .button:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.app--detail__downloads .button:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Screenshot Hover Animations */
.swiper--wrapper .swiper-slide {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

.swiper--wrapper .swiper-slide:hover {
    transform: scale(1.05);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
    z-index: 2;
}

.swiper--wrapper .swiper-slide img {
    transition: filter 0.3s ease;
}

.swiper--wrapper .swiper-slide:hover img {
    filter: brightness(1.05);
}

/* VIP Access Sheet Modal */
.sheet-vip-access .toolbar {
  background-color: var(--f7-bars-bg-color, #f7f7f8);
  height: 44px;
}

.sheet-vip-access .toolbar .toolbar-inner {
  padding: 0 10px;
  color: var(--f7-bars-text-color, #000);
}

.sheet-vip-access .toolbar .toolbar-inner .title {
  font-weight: 600;
  font-size: 17px;
}

.sheet-vip-access .toolbar .toolbar-inner .title i {
  margin-right: 5px;
  color: #f49b00;
}

.sheet-vip-access .toolbar .toolbar-inner .right a {
  color: var(--f7-bars-link-color, #007aff);
  font-weight: 600;
  font-size: 20px; /* Larger close icon */
  line-height: 44px; /* Vertically center the icon */
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px; /* Touch-friendly size */
  height: 44px;
  padding: 0;
}

.sheet-vip-access .toolbar .toolbar-inner .right a i {
  margin: 0; /* Remove default icon margin */
}

.sheet-modal.sheet-vip-access {
  height: 90%;
  --f7-sheet-bg-color: #fff;
  width: 100%;
  left: 0;
  margin-left: 0;
}

.sheet-vip-access .sheet-modal-inner {
  height: calc(100% - 44px);
  overflow: hidden;
  padding: 0;
}

/* Page content inside VIP Access sheet should be scrollable */
.sheet-vip-access .page-content {
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.sheet-vip-access .sheet-modal-swipe-step {
  width: 36px;
  height: 5px;
  background: #c8c8cd;
  border-radius: 8px;
  margin: 0 auto 15px;
  opacity: 0.6;
}

.sheet-vip-access .vip-access-content {
  font-size: 15px;
  line-height: 1.4;
  padding: 0 15px;
}

/* VIP App Header Styling */
.vip-app-header {
  text-align: center;
  margin-bottom: 25px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.vip-app-icon {
  width: 80px;
  height: 80px;
  margin: 0 auto 15px;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.vip-app-icon:hover {
  transform: scale(1.05);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

.vip-app-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: filter 0.3s ease;
}

.vip-app-icon:hover img {
  filter: brightness(1.05);
}

.vip-app-header h3 {
  font-size: 22px;
  font-weight: 600;
  margin: 0 0 10px;
  color: #333;
}

.vip-app-details {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
}

.vip-app-details span {
  font-size: 14px;
  padding: 2px 10px;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.05);
}

.vip-app-details .version {
  color: #8e8e93;
}

.vip-app-details .vip-badge {
  background-color: rgba(244, 155, 0, 0.1);
  color: #f49b00;
  font-weight: 600;
}

.vip-app-details .vip-badge i {
  margin-right: 3px;
  color: #f49b00;
}

/* VIP Benefits Styling */
.vip-benefits {
  margin-bottom: 30px;
}

.vip-benefits h4 {
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 15px;
  color: #333;
  text-align: center;
}

.benefits-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 15px;
}

.benefit-item {
  display: flex;
  margin-bottom: 16px;
  align-items: flex-start;
  width: 100%;
}

.benefit-item i {
  font-size: 20px;
  margin-right: 15px;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #f49b00;
}

.benefit-item div {
  flex: 1;
}

.benefit-item strong {
  display: block;
  margin-bottom: 3px;
  font-weight: 600;
  color: #333;
}

.benefit-item p {
  margin: 0;
  font-size: 14px;
  color: #666;
}

/* Quick Links Styling */
.quick-links-grid {
  display: flex;
  flex-wrap: wrap;
  padding: 0 8px;
}

.quick-link-item {
  width: calc(50% - 16px);
  margin: 0 8px 16px;
  background-color: #e9f0ff;
  border-radius: 12px;
  overflow: hidden;
  transition: transform .2s cubic-bezier(.175, .885, .32, 1.275), box-shadow .2s ease, background-color .3s ease;
  box-shadow: 0 2px 8px rgba(0,0,0,.08);
  opacity: 1;
  border: 1px solid rgba(0, 122, 255, 0.1);
}

.quick-link-item:nth-child(2n) {
  animation-delay: 50ms;
}

.quick-link-item:nth-child(3n) {
  animation-delay: .1s;
}

.quick-link-item:nth-child(4n) {
  animation-delay: .15s;
}

.quick-link {
  display: flex;
  align-items: center;
  padding: 14px;
  color: #333;
  text-decoration: none;
  position: relative;
}

.quick-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(120deg, rgba(255,255,255,0) 30%, rgba(255,255,255,.4) 50%, rgba(255,255,255,0) 70%);
  background-size: 200% 100%;
  background-position: -100% 0;
  opacity: 0;
  transition: opacity .2s ease;
}

.quick-link-item.item-active .quick-link::before {
  opacity: 1;
  animation: shimmer 1.2s cubic-bezier(.19,1,.22,1) forwards;
}

.quick-link-icon {
  margin-right: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  background-color: rgba(0, 122, 255, 0.15);
  border-radius: 8px;
  color: #007aff;
  box-shadow: 0 2px 4px rgba(0, 122, 255, 0.1);
}

.quick-link-icon i {
  font-size: 18px;
}

.quick-link-item .item-title {
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 5px;
  flex: 1;
}

/* VIP Quick Link Styling */
.quick-link-item.vip-quick-link {
  background-color: #FFF3E0;
  border: 1px solid rgba(244, 155, 0, 0.2);
  width: calc(100% - 16px);
  margin-left: 8px;
  margin-right: 8px;
}

.quick-link-item.vip-quick-link .quick-link-icon {
  background-color: rgba(244, 155, 0, 0.2);
  color: #FF9800;
  box-shadow: 0 2px 4px rgba(244, 155, 0, 0.15);
}

.quick-link-item.vip-quick-link .vip-bolt-icon {
  color: #FFD700; /* Gold color for the bolt */
  transition: all 0.3s ease;
}

.quick-link-item.vip-quick-link.item-active {
  box-shadow: 0 4px 12px rgba(244, 155, 0, 0.2);
}

.quick-link-item:hover, .quick-link-item.item-active {
  transform: scale(1.02);
  box-shadow: 0 4px 12px rgba(0,122,255,.15);
}

@keyframes shimmer {
  0% {
    background-position: -100% 0;
  }
  100% {
    background-position: 200% 0;
  }
}

/* Categories grid styling updated to match quick links */
.categories-grid {
  display: flex;
  flex-wrap: wrap;
  padding: 0 8px;
  margin-bottom: 30px;
}

.category-item {
  width: calc(33.333% - 16px);
  margin: 0 8px 16px;
  background-color: #e9f0ff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: transform .2s cubic-bezier(.175, .885, .32, 1.275), box-shadow .2s ease;
  position: relative;
  border: 1px solid rgba(0, 122, 255, 0.1);
}

.category-item:hover, .category-item.item-active {
  transform: scale(1.05);
  box-shadow: 0 4px 12px rgba(0, 122, 255, 0.15);
}

.category-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 15px 5px;
  color: #333;
  text-decoration: none;
  height: 100%;
}

.category-icon {
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background-color: rgba(0, 122, 255, 0.15);
  box-shadow: 0 2px 4px rgba(0, 122, 255, 0.1);
}

.emoji-icon {
  font-size: 20px;
}

/* Country List Styling */
.country-list {
  margin-top: 0; /* Remove default list margin if needed */
  margin-bottom: 30px; /* Add some space below the list */
}

.country-list ul {
  background: none; /* Remove default F7 list background */
  padding-left: 0; /* Remove default ul padding */
  list-style: none; /* Remove default list bullets */
}

.country-list .country-list-item {
  padding: 0 16px; /* Add horizontal padding to match section padding */
}

/* Style the link container */
.country-list .country-list-link.item-link {
  padding: 10px; /* Padding inside the link */
  min-height: 48px; /* Ensure consistent height */
  background-color: #f7f7f7; /* Match trending search item background */
  border-radius: 12px; /* Match trending search item border-radius */
  margin-bottom: 10px; /* Space between list items */
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); /* Match trending search item shadow */
  display: flex !important;
  align-items: center !important;
  width: 100%; /* Ensure link takes full width */
}

/* Style the media part (flag) */
.country-list .item-media.country-list-flag {
  padding: 0; /* Remove default F7 media padding */
  margin-right: 10px; /* Space between flag and text */
  display: flex;
  align-items: center;
}

.country-list .country-list-flag .emoji-icon {
  font-size: 24px; /* Adjust flag size */
  line-height: 1;
}

/* Style the inner part (name) */
.country-list .item-inner {
  padding: 0; /* Remove default F7 inner padding */
  margin-left: 0; /* Override F7 margin */
  min-width: 0; /* Allow shrinking */
  flex-shrink: 1;
  align-self: center; /* Ensure vertical centering */
}

.country-list .item-inner:after {
  display: none; /* Remove default F7 list item border */
}

.country-list .country-list-name {
  font-size: 16px; /* Adjust name font size */
  font-weight: 500;
  color: #333;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Ensure country flags are centered like category icons */
.country-flag {
  display: flex;
  align-items: center;
  justify-content: center;
}

.category-name {
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  line-height: 1.3;
  width: 100%;
}

/* VIP CTA Styling */
.vip-cta-container {
  text-align: center;
  margin-top: 30px;
  position: relative;
}

.vip-cta-button {
  background: linear-gradient(135deg, #f49b00, #f47a00);
  color: white;
  font-weight: 600;
  font-size: 16px;
  padding: 12px 24px;
  margin-bottom: 15px;
  box-shadow: 0 4px 12px rgba(244, 155, 0, 0.3);
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275),
              box-shadow 0.3s ease,
              background 0.3s ease;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
}

.vip-cta-button:before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: rgba(255, 255, 255, 0.1);
  transform: rotate(45deg);
  animation: buttonShine 3s infinite cubic-bezier(0.19, 1.0, 0.22, 1.0);
  pointer-events: none;
}

.vip-cta-button:active {
  transform: scale(0.96);
  box-shadow: 0 2px 6px rgba(244, 155, 0, 0.2);
}

.vip-cta-button i {
  margin-right: 8px;
}

.vip-perks-link {
  margin-top: 15px;
  font-size: 14px;
}

.vip-perks-link a {
  color: #007aff;
  text-decoration: none;
}

.vip-perks-link .feature-info-link {
  color: #ff9500;
  margin-top: 12px;
  font-weight: 500;
  display: block;
}

/* Animations */
@keyframes pulse {
  0% {
    transform: scale(1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  }
  50% {
    transform: scale(1.05);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  }
}

@keyframes shine {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}

@keyframes slideIn {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes scale {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1);
  }
}

.pulse-animation {
  animation: pulse 2s infinite cubic-bezier(0.25, 0.1, 0.25, 1.0);
}

.shine-animation {
  animation: shine 1.5s infinite cubic-bezier(0.19, 1.0, 0.22, 1.0);
}

.slide-in-animation {
  animation: slideIn 0.5s forwards cubic-bezier(0.19, 1.0, 0.22, 1.0);
  opacity: 0;
}

.scale-animation {
  animation: scale 3s infinite cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

/* Responsive adjustments for tablet/desktop */
@media (min-width: 768px) {
  .sheet-modal.sheet-vip-access {
    height: 90%;
    max-width: 100%;
    left: 0;
    margin-left: 0;
  }

  .vip-app-icon {
    width: 100px;
    height: 100px;
    border-radius: 22px;
  }

  .vip-benefits {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
  }

  .vip-cta-container {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }

  .benefits-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  .benefit-item {
    margin-bottom: 0;
  }
}

@media (min-width: 992px) {
  .benefits-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .vip-benefits {
    max-width: 900px;
  }
}

@keyframes buttonShine {
  0% {
    left: -100%;
    opacity: 0;
  }
  20% {
    left: 100%;
    opacity: 0.6;
  }
  100% {
    left: 100%;
    opacity: 0;
  }
}

/* Enhanced fa-bolt icon hover animations */
@keyframes boltFlicker {
  0%, 50%, 100% { opacity: 1; }
  25%, 75% { opacity: 0.7; }
}

@keyframes boltGlow {
  0% {
    text-shadow: 0 0 5px rgba(255, 215, 0, 0.5);
  }
  50% {
    text-shadow: 0 0 10px rgba(255, 215, 0, 0.8), 0 0 15px rgba(255, 215, 0, 0.6);
  }
  100% {
    text-shadow: 0 0 5px rgba(255, 215, 0, 0.5);
  }
}

/* Hover animation styles for fa-bolt icons */
.fa-bolt {
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

/* Main hover effect for fa-bolt icons in badges and buttons - grow, glow, tilt, and color shift */
.vip-badge:hover .fa-bolt,
.vip-download-btn:hover .vip-bolt-icon,
.download-btn:hover .fa-bolt,
.quick-link-item.vip-quick-link:hover .vip-bolt-icon {
  transform: scale(1.15) rotate(-8deg);
  color: #FFF8DC;
  text-shadow: 0 0 10px rgba(255, 248, 220, 0.9), 0 0 10px rgba(255, 215, 0, 0.7), 0 0 20px rgba(255, 215, 0, 0.4);
  filter: brightness(1.3) drop-shadow(0 0 6px rgba(255, 215, 0, 0.8));
}

/* Active state - intense flash effect on click */
.vip-badge:active .fa-bolt,
.vip-download-btn:active .vip-bolt-icon,
.download-btn:active .fa-bolt,
.custom-nav-link:active .fa-bolt,
.btn:active .fa-bolt,
button:active .fa-bolt {
  transform: scale(1.25) rotate(-12deg);
  color: #FFFFFF;
  text-shadow: 0 0 15px rgba(255, 255, 255, 1), 0 0 25px rgba(255, 248, 220, 0.8), 0 0 35px rgba(255, 215, 0, 0.6);
  filter: brightness(1.6) drop-shadow(0 0 8px rgba(255, 215, 0, 1));
  transition: all 0.1s ease-out;
}

/* Enhanced hover for specific contexts - grow, glow, tilt, and color shift */
.custom-nav-link:hover .fa-bolt,
.btn:hover .fa-bolt,
button:hover .fa-bolt {
  transform: scale(1.1) rotate(-5deg);
  color: #FFF8DC;
  text-shadow: 0 0 8px rgba(255, 248, 220, 0.8), 0 0 12px rgba(255, 215, 0, 0.6), 0 0 16px rgba(255, 215, 0, 0.3);
  filter: brightness(1.2) drop-shadow(0 0 4px rgba(255, 215, 0, 0.6));
}

/* Subtle flicker effect for exclusive content indicators */
.shine-animation .fa-bolt {
  animation: boltFlicker 1.5s ease-in-out infinite, boltGlow 2s ease-in-out infinite;
}

/* Special treatment for download buttons - grow, glow, tilt, and color shift */
.download-btn:hover .vip-bolt-icon {
  transform: scale(1.15) rotate(-8deg);
  color: #FFF8DC;
  text-shadow: 0 0 12px rgba(255, 248, 220, 1), 0 0 18px rgba(255, 215, 0, 0.8), 0 0 24px rgba(255, 215, 0, 0.5);
  filter: brightness(1.4) drop-shadow(0 0 6px rgba(255, 215, 0, 0.8));
  transform-origin: center;
}

/* Active state for download buttons - intense flash effect on click */
.download-btn:active .vip-bolt-icon {
  transform: scale(1.25) rotate(-12deg);
  color: #FFFFFF;
  text-shadow: 0 0 15px rgba(255, 255, 255, 1), 0 0 25px rgba(255, 248, 220, 0.8), 0 0 35px rgba(255, 215, 0, 0.6);
  filter: brightness(1.6) drop-shadow(0 0 8px rgba(255, 215, 0, 1));
  transition: all 0.1s ease-out;
  transform-origin: center;
}

/* Responsive hover - disable on touch devices */

.search-results-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  z-index: 1000;
  overflow-y: auto;
  display: none;
}

.search-results-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 35px 10px 15px;
  border-bottom: 1px solid #e0e0e0;
}

.search-results-title {
  margin: 0;
  font-size: 17px;
  font-weight: 600;
}

.search-results-close {
  color: #007aff;
  font-size: 22px;
}

.no-results-message {
  text-align: center;
  padding: 30px 20px;
}

.no-results-icon {
  font-size: 50px;
  margin-bottom: 15px;
  color: #8e8e93;
}

.no-results-message h3 {
  font-size: 18px;
  margin: 0 0 10px 0;
  font-weight: 600;
}

.no-results-message p {
  margin: 0 0 20px 0;
  color: #8e8e93;
}

.no-results-links {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 20px;
}

.no-results-links .button {
  margin: 0;
}

.no-results-links {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
}

.no-results-links a {
  color: #007aff;
  text-decoration: none;
  font-weight: 500;
  padding: 8px 15px;
  border-radius: 15px;
  font-size: 15px;
}

.no-results-links .hack-request-link {
  color: #ff9500;
}

.no-results-links .separator {
  margin: 0 10px;
  color: #8e8e93;
}

.no-results-message p {
  margin: 0 0 20px 0;
  color: #8e8e93;
  line-height: 1.5;
}

.no-results-message p a {
  color: #007aff;
  text-decoration: none;
  font-weight: 500;
}

.no-results-message p a.hack-request-link {
  color: #ff9500;
}

/* Countries grid styling to match categories */
.countries-grid {
  display: flex;
  flex-wrap: wrap;
  padding: 0 8px;
  margin-bottom: 30px;
}

.country-name {
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  line-height: 1.3;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (min-width: 768px) {
  .trending-search-item {
    width: calc(20% - 16px);
  }
  .category-item {
    width: calc(20% - 16px);
  }
  .country-item {
    width: calc(20% - 16px);
  }
}

/* Category accordion styling */
.categories-section .accordion-item {
  margin: 0;
  border-radius: 12px;
  overflow: hidden;
}

.categories-section .accordion-item-toggle {
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.categories-section .accordion-item-toggle:active {
  background-color: rgba(0, 0, 0, 0.05);
}

.categories-section .accordion-arrow {
  float: right;
  margin-right: 10px;
  transition: transform 0.3s ease;
}

.categories-section .accordion-item-opened .accordion-arrow i {
  transform: rotate(180deg);
}

.categories-section .section-header {
  position: relative;
  padding: 15px 16px;
  margin-bottom: 0;
}


/* Desktop styling - ensure laptop icon is visible */
.sideLoadlyBtn i.fa-laptop {
  display: inline-block;
}

/* Mobile Styling */
@media (max-width: 767px) {

  .sideLoadlyBtn {
    width: auto;
    min-width: 44px;
    padding-left: 12px;
    padding-right: 12px;
  }

}

/* Sideloadly app info styles */
.app-info-sideloadly {
  margin-bottom: 20px;
  padding: 15px;
  background: rgba(248, 249, 250, 0.6);
  border-radius: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.03);
  border: 1px solid rgba(0,0,0,0.03);
  backdrop-filter: blur(5px);
}

.app-info-sideloadly__container {
  display: flex;
  align-items: center;
}

.app-info-sideloadly .app--logo.app-info-sideloadly__logo {
  width: 118px;
  height: 118px;
  min-width: 118px;
  max-width: 118px;
  overflow: visible;
}

.app-info-sideloadly .app--logo.app-info-sideloadly__logo img {
  border-radius: 24px;
  box-shadow: 0 6px 12px rgba(0,0,0,0.15);
  width: 118px !important;
  height: 118px !important;
  object-fit: cover;
  max-width: none;
}

.app-info-sideloadly__details {
  flex: 1;
}

.app-info-sideloadly__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}

.app-info-sideloadly__title {
  margin: 0;
  font-size: 22px;
  font-weight: 600;
  color: #333;
}

.app-badge-overlay {
  position: absolute;
  top: -6px;
  right: -6px;
  padding: 4px 8px;
  font-size: 10px;
  font-weight: bold;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  z-index: 10;
  box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.app-badge-overlay i {
  margin-right: 3px;
  font-size: 10px;
}

.app-info-sideloadly__version {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
  background-color: rgba(0,122,255,0.05);
  padding: 6px 10px;
  border-radius: 8px;
}

.app-info-sideloadly__icon {
  color: #007aff;
  width: 18px;
  margin-right: 8px;
}

.app-info-sideloadly__version-text {
  font-size: 14px;
  font-weight: 500;
}

.app-info-sideloadly__latest-badge {
  margin-left: 6px;
  background-color: rgba(40,167,69,0.1);
  padding: 2px 8px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
}

.app-info-sideloadly__latest-icon {
  color: #28a745;
  margin-right: 4px;
  margin-left: -4px;
}

.app-info-sideloadly__latest-text {
  font-size: 12px;
  color: #28a745;
  font-weight: 500;
}

.app-info-sideloadly__meta-container {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.app-info-sideloadly__meta-item {
  display: flex;
  align-items: center;
  background-color: rgba(0,0,0,0.02);
  padding: 6px 10px;
  border-radius: 8px;
  flex-grow: 1;
  border: 1px solid rgba(0,0,0,0.01);
}

.app-info-sideloadly__meta-text {
  font-size: 14px;
}

.app-info-sideloadly__bundle {
  display: flex;
  align-items: center;
  margin-top: 8px;
}

.app-info-sideloadly__bundle-text {
  font-size: 13px;
  color: #666;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Download Section Styles */
.download-section {
  margin: 25px 0;
  padding: 0;
}

.download-section__title {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 15px;
  color: #333;
  display: flex;
  align-items: center;
}

.download-section__title i {
  color: #007aff;
  margin-right: 10px;
  font-size: 22px;
}

.download-buttons {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 20px;
}

.download-button {
  display: flex;
  align-items: center;
  padding: 15px;
  border-radius: 12px;
  text-decoration: none;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.download-button--primary {
  background: linear-gradient(135deg, #007aff, #0063cc);
  color: white;
  border: none;
}

.download-button--primary:active {
  background: linear-gradient(135deg, #0063cc, #004c99);
  transform: translateY(1px);
}

.download-button--secondary {
  background: white;
  color: #333;
  border: 1px solid rgba(0,0,0,0.1);
}

.download-button--secondary:active {
  background: #f5f5f5;
  transform: translateY(1px);
}

.download-button i:first-child {
  font-size: 24px;
  margin-right: 15px;
  width: 24px;
  text-align: center;
}

.download-button__content {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.download-button__title {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 2px;
}

.download-button__subtitle {
  font-size: 12px;
  opacity: 0.8;
}

.download-button__arrow {
  font-size: 18px;
}

.link-generating {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
  border-radius: 12px;
  background-color: rgba(0,0,0,0.03);
  margin-bottom: 20px;
}

.link-generating .preloader {
  width: 20px;
  height: 20px;
  margin-right: 10px;
}

/* Styles for Sideloadly Popup Header */
.popup-download-sideloadly .app-info-sideloadly__title {
  text-align: center; /* Center the title */
  margin-bottom: 15px; /* Space below title */
  font-size: 20px; /* Adjust title size if needed */
  font-weight: 600;
}

/* Add padding to close button to move it away from edge - applied globally to all popups */
.popup .navbar-inner .right {
  padding-right: 8px;
}

.popup .navbar-inner .popup-close {
  padding: 8px;
}

.popup-download-sideloadly .app-info-sideloadly__container {
  display: flex; /* Use flexbox for icon and details */
  align-items: center; /* Vertically align items */
  gap: 15px; /* Space between icon and details */
}

.popup-download-sideloadly .app-info-sideloadly__logo {
  flex-shrink: 0; /* Prevent icon from shrinking */
  width: 80px; /* Adjust icon size */
  height: 80px;
  min-width: 80px;
}

.popup-download-sideloadly .app-info-sideloadly__details {
  flex-grow: 1; /* Allow details to take remaining space */
  /* Remove header margin if it exists */
}

.popup-download-sideloadly .app-info-sideloadly__header {
  display: none; /* Hide the original header div as title is moved */
}

/* Ensure stats stack nicely */
.popup-download-sideloadly .app-info-sideloadly__version,
.popup-download-sideloadly .app-info-sideloadly__meta-container {
  margin-bottom: 8px; /* Add consistent spacing */
}

.popup-download-sideloadly .app-info-sideloadly__meta-container {
  gap: 6px; /* Adjust gap between meta items if needed */
}

.popup-download-sideloadly .app-info-sideloadly__meta-item {
  padding: 5px 8px; /* Adjust padding for meta items */
}

/* Desktop-only display classes */
.medium-display-block {
  display: none !important;
}

@media (min-width: 768px) {
  .medium-display-block {
    display: block !important;
  }

  /* Ensure the bundle ID in Sideloadly popup fits nicely */
  .app-info-sideloadly__meta-item--bundle-id {
    width: 100%;
    margin-top: 8px;
    word-break: break-all;
  }
}

.aurora .toolbar-bottom-aurora:after, .ios .toolbar-bottom-ios:after, .md .toolbar-bottom-md:after, .toolbar-bottom:after {
  content: none !important;
}

/* Profile Card Styles */
.profile-card {
  margin: 0 16px 24px;
  border-radius: 16px;
  overflow: hidden;
  background-color: white;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
  position: relative;
}

.profile-header {
  display: flex;
  align-items: center;
  padding: 20px;
  background: linear-gradient(135deg, #3498db, #8e44ad);
}

.profile-avatar {
  position: relative;
  width: 70px;
  height: 70px;
  flex-shrink: 0;
  margin-right: 16px;
}

.profile-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  border: 3px solid rgba(255, 255, 255, 0.3);
}

.profile-info {
  flex: 1;
}

.profile-name {
  margin: 0px -20px 6px !important;
  font-size: 24px !important;
  color: white !important;
}

.profile-status {
  display: flex;
  align-items: center;
  gap: 8px;
}

.profile-stats-header {
  font-size: 16px;
  font-weight: 600;
  color: rgba(0, 0, 0, 0.7);
  padding: 16px 16px 0;
  margin-bottom: -4px;
  text-align: center;
}

.badge {
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
}

.badge i {
  margin-right: 4px;
}

/* Notification badge - small circular indicator on inbox icon */
.btn-open-notifications {
  position: relative;
  display: inline-block;
}

.notifications-badge {
  position: absolute;
  top: 2px;
  right: -5px;
  min-width: 14px;
  height: 14px;
  padding: 0;
  background-color: #B63F3F;
  color: #ffffff;
  border-radius: 9px;
  font-size: 11px;
  font-weight: 600;
  line-height: 18px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

/* Login button loading state */
.btn-proceed-login {
  min-height: 44px;
  position: relative;
}

.btn-proceed-login.button-loading .btn-login-text {
  visibility: hidden;
}

.btn-proceed-login .preloader-login {
  position: absolute;
  width: 20px;
  height: 20px;
  left: 50%;
  top: 50%;
  margin-left: -10px;
  margin-top: -10px;
}

.btn-proceed-login.button-loading .preloader-login {
  display: block !important;
}

.free-badge {
  background-color: #2ecc71;
  color: white;
}

.vip-badge {
  background: linear-gradient(45deg, #f39c12, #e74c3c);
  color: white;
}

.profile-stats {
  display: flex;
  padding: 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.stat-item {
  flex: 1;
  text-align: center;
  padding: 0 8px;
}

.stat-item:not(:last-child) {
  border-right: 1px solid rgba(0, 0, 0, 0.05);
}

.stat-value {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 4px;
  color: #333;
}

.stat-label {
  font-size: 12px;
  color: #777;
  display: flex;
  align-items: center;
  justify-content: center;
}

.stat-label i {
  margin-right: 4px;
  font-size: 11px;
}

.profile-details {
  padding: 0 16px;
}

.profile-detail-item {
  display: flex;
  align-items: center;
  padding: 16px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.detail-icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 16px;
}

.detail-content {
  flex: 1;
}

.detail-label {
  font-size: 12px;
  color: rgba(0, 0, 0, 0.5);
  margin-bottom: 4px;
}

.detail-value {
  font-size: 14px;
}

/* Accordion Styling */
.profile-accordion {
  margin: 0;
}

.profile-accordion .item-link .item-inner {
  padding-top: 12px;
  padding-bottom: 12px;
}

.profile-accordion .item-link {
  background-color: white;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.profile-accordion .item-title {
  font-size: 16px;
  font-weight: 500;
}

.profile-accordion .accordion-item-content {
  padding: 0;
}

.profile-accordion .accordion-item-content .profile-details {
  padding-top: 0;
}

.profile-accordion .accordion-item-content .profile-actions {
  padding-top: 0;
  padding-bottom: 16px;
}

.profile-accordion .list ul {
  background-color: transparent;
}

/* Account Settings Styling */
.account-settings-content {
  padding: 16px;
}

/* Account Info Box */
.account-info-box {
  background-color: white;
  border-radius: 12px;
  margin-bottom: 16px;
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.account-info-item {
  display: flex;
  align-items: center;
  padding: 14px;
}

.account-info-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: #f0f7ff;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 14px;
  color: #3498db;
  font-size: 15px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.account-info-details {
  flex: 1;
}

.account-info-label {
  font-size: 12px;
  color: rgba(0, 0, 0, 0.5);
  margin-bottom: 4px;
}

.account-info-value {
  font-size: 14px;
  font-weight: 500;
  color: #333;
}

/* Account Links Box */
.account-links-box {
  margin-bottom: 16px;
}

.account-links-header {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 12px;
  padding-left: 5px;
  color: rgba(0, 0, 0, 0.7);
}

.account-links-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.account-link-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 14px 8px;
  border-radius: 12px;
  background-color: white;
  text-align: center;
  color: inherit;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.account-link-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #f0f7ff;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
  color: #3498db;
  font-size: 16px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.account-link-text {
  font-size: 12px;
  font-weight: 500;
  color: #333;
}

/* Profile & Logout Buttons */
.profile-link-box {
  padding: 10px 0 5px;
}

.button-profile {
  width: 100%;
  font-weight: 500;
  margin: 0 auto;
}

/* Logout Button */
.logout-box {
  padding: 5px 0 10px;
}

.button-logout {
  width: 100%;
  height: 44px;
  font-weight: 500;
  margin: 0 auto;
  border-radius: 12px;
}

/* Email Update Link Styling */
.update-email-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 8px;
  color: #3498db;
  font-size: 14px;
  padding: 2px 6px;
  border-radius: 4px;
  transition: background-color 0.2s ease;
}

.update-email-link:active {
  background-color: rgba(52, 152, 219, 0.1);
}

/* Custom Bottom Navigation Bar Styles */
.custom-bottom-nav {
    position: fixed;
    bottom: 0; /* Default for web versions */
    left: 0;
    right: 0;
    z-index: 1000;
    box-sizing: border-box;
    margin: 12px 40px 12px 40px;
}

.standalone-mode .custom-bottom-nav {
    bottom: 8px;
}

.custom-bottom-nav-inner {
    display: flex;
    align-items: center;
    justify-content: space-around;
    height: 56px;
    width: 100%;
}

.custom-nav-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    height: 100%;
    padding-top: 6px;
    padding-bottom: 2px;
    text-decoration: none;
    color: #41879f;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
    transition: color 0.2s;
}

.nav-icon {
    margin-bottom: 8px;
    fill: currentColor;
}

.nav-text {
    display: block;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 500;
}

/* Status Icon Overlays for More Tab */
.custom-nav-link {
    position: relative;
}

.nav-status-overlay {
    position: absolute;
    top: 1px;
    font-size: 10px;
    background: rgba(0, 0, 0, 0.8);
    border-radius: 50%;
    width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    z-index: 10;
}

.nav-status-overlay.vip-overlay {
    left: calc(50% + 14px);
    background: #ff9500; /* Orange for ViP */
}

.nav-status-overlay.app-plus-overlay {
    right: calc(50% + 14px);
    background: #667eea; /* Blue-purple for App+ */
}

/* Responsive visibility classes */
@media (max-width: 768px) {
  .phone-hide {
    display: none !important;
  }
}

/* PLUS & other Button Styling */
.btn-plus-install {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white !important;
  border: none;
  position: relative;
  overflow: hidden;
  min-width: 120px !important; /* Fixed minimum width to prevent layout shifts */
  width: 120px !important; /* Fixed width */
  align-items: center;
  justify-content: center;
}

.btn-plus-install::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
  transition: left 0.6s;
}

.btn-plus-install:hover::before {
  left: 100%;
}

/* Enterprise Certificate Install Button - Same styling as Plus Install */
.btn-enterprise-install, .btn-download-ipa {
  padding: 6px 14px !important;
}

/* PLUS Sheet Modal Styling */
.sheet-app-plus .toolbar {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
}

.sheet-app-plus .toolbar .toolbar-inner .title {
  color: white;
  font-weight: 600;
}

.sheet-app-plus .toolbar .toolbar-inner .right a {
  color: white;
  font-weight: 600;
  font-size: 20px; /* Larger close icon */
  line-height: 44px; /* Vertically center the icon */
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px; /* Touch-friendly size */
  height: 44px;
  padding: 0;
}

.sheet-app-plus .toolbar .toolbar-inner .right a i {
  margin: 0; /* Remove default icon margin */
}

.sheet-modal.sheet-app-plus {
  height: 100%;
  --f7-sheet-bg-color: #fff;
}

.sheet-app-plus .sheet-modal-inner {
  height: calc(100% - 44px);
  overflow: hidden;
  padding: 0;
}

/* Page content inside App+ sheet should be scrollable */
.sheet-app-plus .page-content {
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

/* Rocket Icon Hover Animations */
.fa-rocket {
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transform-origin: center bottom;
}

/* All rocket animations use rocketSpin */
.appplus-badge:hover .fa-rocket, 
.nav-status-overlay:hover .fa-rocket,
.btn-plus-install:hover .fa-rocket,
.button:hover .fa-rocket,
a:hover .fa-rocket,
.icon-background:hover .fa-rocket {
  animation: rocketSpin 0.5s ease-out forwards;
}

/* Icon background hover animation for user info page */
.icon-background:hover {
  transform: scale(1.1);
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

/* Keyframe animations */
@keyframes rocketSpin {
  0% {
    transform: rotate(0deg) scale(1);
  }
  50% {
    transform: rotate(10deg) scale(1.25);
  }
  100% {
    transform: rotate(0deg) scale(1.1);
  }
}

/* Hover end transitions - smooth return to original state */
.nav-status-overlay .fa-rocket,
.btn-plus-install .fa-rocket,
.button .fa-rocket,
a .fa-rocket {
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Enhanced glow effect for rocket icons on hover */
.nav-status-overlay:hover,
.btn-plus-install:hover {
  box-shadow: 0 0 15px rgba(102, 126, 234, 0.4);
  transition: box-shadow 0.3s ease;
}

.plus-header {
  text-align: center;
  margin-bottom: 30px;
}

.plus-app-icon {
  margin-bottom: 15px;
}

.app-plus-icon {
  font-size: 50px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.05); }
  100% { transform: scale(1); }
}

.plus-header h2 {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-size: 26px;
  font-weight: 700;
  margin: 0 0 10px;
}

.plus-pricing {
  margin-top: 15px;
}

.price-badge {
  background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
  color: white;
  display: inline-block;
  padding: 12px 20px;
  border-radius: 25px;
  box-shadow: 0 4px 15px rgba(40, 167, 69, 0.3);
  margin-bottom: 8px;
  animation: priceGlow 2s ease-in-out infinite alternate;
  position: relative;
}

@keyframes priceGlow {
  0% { box-shadow: 0 4px 15px rgba(40, 167, 69, 0.3); }
  100% { box-shadow: 0 6px 20px rgba(40, 167, 69, 0.5); }
}

.price-amount {
  font-size: 24px;
  font-weight: 700;
  margin-right: 5px;
}

.price-period {
  font-size: 16px;
  font-weight: 500;
  opacity: 0.9;
}

.discount-badge {
  position: absolute;
  top: -8px;
  right: -8px;
  background: linear-gradient(135deg, #ff6b6b 0%, #ee5a24 100%);
  color: white;
  font-size: 11px;
  font-weight: 700;
  padding: 4px 8px;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(255, 107, 107, 0.4);
  animation: discountPulse 2s ease-in-out infinite;
  z-index: 10;
}

@keyframes discountPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

.price-container {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.price-original {
  font-size: 16px;
  font-weight: 500;
  text-decoration: line-through;
  opacity: 0.7;
  margin-right: 5px;
}

.price-value {
  color: #28a745;
  font-size: 14px;
  font-weight: 600;
  margin: 0;
  font-style: italic;
}

.plus-benefits {
  background: transparent;
  border-radius: 16px;
  padding: 25px 0 25px 0;
  margin-bottom: 30px;
  box-shadow: none;
}

.plus-benefits h3 {
  color: #333;
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 20px;
  text-align: center;
}

.benefits-grid {
  display: grid;
  gap: 15px;
}

.benefit-item {
  display: flex;
  align-items: flex-start;
  padding: 15px;
  background: white;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.benefit-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}

.benefit-item i {
  color: #667eea;
  margin-right: 15px;
  font-size: 20px;
  margin-top: 2px;
  min-width: 20px;
  transition: transform 0.3s ease;
}

.benefit-item:hover i {
  transform: scale(1.1) rotate(5deg);
}

.benefit-item div {
  flex: 1;
}

.benefit-item strong {
  color: #333;
  font-size: 15px;
  font-weight: 600;
  display: block;
  margin-bottom: 5px;
}

.benefit-item p {
  color: #666;
  font-size: 13px;
  margin: 0;
  line-height: 1.4;
}

.plus-form {
  background: white;
  border-radius: 12px;
  padding: 20px;
  border: 1px solid #e9ecef;
  margin-bottom: 20px;
}

.plus-form h3 {
  color: #333;
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 20px;
  text-align: center;
}

.form-group {
  margin-bottom: 20px;
}

.form-group label {
  display: block;
  font-weight: 600;
  margin-bottom: 8px;
  color: #333;
  font-size: 14px;
}

.udid-link-inline {
  color: #667eea;
  text-decoration: none;
  font-size: 12px;
  font-weight: 400;
  margin-left: 8px;
  transition: color 0.3s ease;
}

.udid-link-inline:hover {
  color: #764ba2;
  text-decoration: underline;
}

.udid-link-inline i {
  margin-right: 4px;
  font-size: 10px;
}

.form-group input {
  width: 100%;
  padding: 12px 16px;
  border: 2px solid #e9ecef;
  border-radius: 8px;
  font-size: 16px;
  transition: border-color 0.3s ease;
}

.form-group input:focus {
  outline: none;
  border-color: #667eea;
}

.plus-submit-btn {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  border: none;
  width: 100%;
  padding: 16px 20px;
  border-radius: 12px;
  font-size: 17px;
  font-weight: 600;
  cursor: pointer;
  transition: box-shadow 0.3s ease;
  box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
  position: relative;
  overflow: hidden;
}

.plus-submit-btn:hover {
  box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);
}

.plus-submit-btn:hover i {
  animation: rocketSpin 0.5s ease-out forwards;
}

.plus-submit-btn i {
  margin-right: 8px;
}

.plus-info-inline {
  margin-top: 12px;
  text-align: center;
}

.plus-info-inline p {
  margin: 0;
  font-size: 12px;
  color: #155724;
  font-style: italic;
}

.plus-info-inline i {
  color: #28a745;
  margin-right: 6px;
}

.plus-faq {
  background: transparent;
  border-radius: 16px;
  margin: 25px 0;
}

.plus-faq h4 {
  color: #333;
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 20px;
  text-align: center;
}

.plus-faq h4 i {
  color: #ff9800;
  margin-right: 8px;
}

.faq-item {
  margin-bottom: 20px;
}

.faq-item:last-child {
  margin-bottom: 0;
}

.faq-question {
  margin-bottom: 8px;
}

.faq-question strong {
  color: #333;
  font-size: 15px;
  font-weight: 600;
}

.faq-answer p {
  color: #666;
  font-size: 14px;
  margin: 0 0 8px 0;
  line-height: 1.5;
  padding-left: 15px;
  border-left: 2px solid #ff9800;
}

.faq-answer p:last-child {
  margin-bottom: 0;
}

.faq-answer ul {
  color: #666;
  font-size: 14px;
  margin: 8px 0 8px 25px;
  padding-left: 0;
  list-style-type: disc;
}

.faq-answer ul li {
  margin-bottom: 5px;
  line-height: 1.5;
}

.faq-answer ul li strong {
  color: #333;
}

.faq-more {
  margin-top: 20px;
  text-align: center;
  padding-top: 15px;
  border-top: 1px solid #e9ecef;
}

.faq-more-link {
  color: #ff9800;
  text-decoration: none;
  font-size: 15px;
  font-weight: 500;
  transition: color 0.3s ease;
  display: inline-flex;
  align-items: center;
}

.faq-more-link:hover {
  color: #f57c00;
  text-decoration: underline;
}

.faq-more-link i {
  margin-right: 6px;
}

/* UDID Auto-Retrieval Styles */
.udid-input-container {
  position: relative;
}

/* Automatic UDID Retrieval Section */
.udid-auto-retrieve {
  margin-bottom: 20px;
  padding: 16px;
  background: #f8f9fa;
  border-radius: 12px;
  border: 1px solid #e9ecef;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.udid-auto-header h4 {
  margin: 0 0 8px 0;
  font-size: 16px;
  font-weight: 600;
  color: #495057;
  display: flex;
  align-items: center;
  gap: 8px;
}

.udid-auto-header p {
  margin: 0 0 12px 0;
  font-size: 14px;
  color: #6c757d;
  line-height: 1.4;
}

/* OR Divider between UDID methods */
.udid-divider {
  display: flex;
  align-items: center;
  text-align: center;
  margin: 20px 0;
  position: relative;
}

.udid-divider::before,
.udid-divider::after {
  content: '';
  flex: 1;
  border-bottom: 2px solid #e0e0e0;
}

.udid-divider span {
  padding: 0 15px;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 1px;
}

/* Manual UDID Entry Section */
.udid-manual-entry {
  padding: 16px;
  background: #ffffff;
  border-radius: 12px;
  border: 1px solid #e9ecef;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.udid-manual-header h4 {
  margin: 0 0 8px 0;
  font-size: 16px;
  font-weight: 600;
  color: #495057;
  display: flex;
  align-items: center;
  gap: 8px;
}

.udid-manual-header p {
  margin: 0 0 12px 0;
  font-size: 14px;
  color: #6c757d;
  line-height: 1.4;
}

.udid-manual-entry input {
  width: 100%;
  margin-bottom: 10px;
}

.udid-manual-help {
  text-align: center;
}

.btn-auto-udid {
  background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
  color: white;
  border: none;
  padding: 10px 16px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(40, 167, 69, 0.2);
  width: 100%;
}

.btn-auto-udid:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(40, 167, 69, 0.3);
}

.btn-auto-udid:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

.btn-auto-udid i {
  margin-right: 6px;
}

.udid-auto-status {
  margin-top: 10px;
  padding: 8px 12px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
}

.udid-status-waiting {
  background: #fff3cd;
  border: 1px solid #ffeaa7;
  color: #856404;
  padding: 12px 16px;
  border-radius: 8px;
  margin-top: 10px;
}

.udid-status-waiting i {
  color: #f39c12;
  margin-right: 8px;
}

.udid-status-success {
  background: #d4edda;
  border: 1px solid #c3e6cb;
  color: #155724;
  padding: 12px 16px;
  border-radius: 8px;
  margin-top: 10px;
}

.udid-status-success i {
  color: #28a745;
  margin-right: 8px;
}

.udid-status-error {
  background: #f8d7da;
  border: 1px solid #f5c6cb;
  color: #721c24;
  padding: 12px 16px;
  border-radius: 8px;
  margin-top: 10px;
}

.udid-status-error i {
  color: #dc3545;
  margin-right: 8px;
}

.text-green {
  color: #28a745;
}

.text-red {
  color: #dc3545;
}

/* Responsive adjustments for benefit items on mobile */
@media (max-width: 768px) {
  .benefits-grid {
    gap: 8px !important;
  }
  
  .benefit-item {
    margin-bottom: 8px;
    padding: 12px;
    border-radius: 10px;
  }
  
  .benefit-item i {
    font-size: 18px;
    margin-right: 12px;
    min-width: 18px;
  }
  
  .benefit-item strong {
    font-size: 14px;
    margin-bottom: 3px;
  }
  
  .benefit-item p {
    font-size: 12px;
    line-height: 1.3;
  }
}

/* Responsive adjustments for UDID auto-retrieval */
@media (max-width: 768px) {
  .udid-auto-retrieve {
    margin-top: 8px;
    padding: 10px;
  }

  .btn-auto-udid {
    padding: 8px 12px;
    font-size: 13px;
  }

  .udid-auto-status {
    margin-top: 8px;
    padding: 6px 10px;
    font-size: 12px;
  }
}

.btn-notification-bell {
    padding: 6px 0px !important;
}

/* Sign Your Own Apps, Duplicate Install & Apple Dev Certificate sheets - fixed height for iOS scrolling */
.sheet-modal.sheet-sign-app,
.sheet-modal.sheet-duplicate-install,
.sheet-modal.sheet-appledev-install {
  height: 90%;
  --f7-sheet-bg-color: #fff;
}

/* Notification and iOS Install sheets - fixed height for iOS scrolling */
.sheet-modal.notification-settings-sheet,
.sheet-modal.notification-onboarding-sheet,
.sheet-modal.ios-install-instructions-sheet {
  height: 90%;
  --f7-sheet-bg-color: #fff;
}

/* Notification sheets inner styling for proper scrolling */
.notification-settings-sheet .sheet-modal-inner,
.notification-onboarding-sheet .sheet-modal-inner,
.ios-install-instructions-sheet .sheet-modal-inner {
  height: calc(100% - 44px);
  overflow: hidden;
}

/* Page content inside notification sheets should be scrollable */
.notification-settings-sheet .page-content,
.notification-onboarding-sheet .page-content,
.ios-install-instructions-sheet .page-content {
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

/* Make sheet-modal-inner a flex container for Sign Your Own Apps & Duplicate Install */
.sheet-sign-app .sheet-modal-inner,
.sheet-duplicate-install .sheet-modal-inner {
  display: flex;
  flex-direction: column;
  height: calc(100% - 44px);
  overflow: hidden;
}

/* Apple Developer sheet inner styling for proper scrolling */
.sheet-appledev-install .sheet-modal-inner {
  height: calc(100% - 44px);
  overflow: hidden;
}

/* Make page-content scrollable in Apple Developer sheet */
.sheet-appledev-install .page-content {
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

/* Ensure segmented buttons have enough width and don't truncate text */
.sheet-sign-app .segmented,
.sheet-duplicate-install .segmented {
  align-self: auto;
}

/* Tabs container should take remaining space */
.sheet-sign-app .tabs,
.sheet-duplicate-install .tabs {
  flex: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

/* Individual tabs should be scrollable */
.sheet-sign-app .tab.page-content,
.sheet-duplicate-install .tab.page-content {
  flex: 1;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  min-height: 0;
}

/* Close icon styling for Sign Your Own Apps, Duplicate Install & Apple Dev Certificate */
.sheet-sign-app .toolbar .toolbar-inner .right a,
.sheet-duplicate-install .toolbar .toolbar-inner .right a,
.sheet-appledev-install .toolbar .toolbar-inner .right a, 
.notification-settings-sheet .toolbar .toolbar-inner .right a,
.notification-onboarding-sheet .toolbar .toolbar-inner .right a,
.ios-install-instructions-sheet .toolbar .toolbar-inner .right a {
  color: var(--f7-bars-link-color, #007aff);
  font-weight: 600;
  font-size: 20px; /* Larger close icon */
  line-height: 44px; /* Vertically center the icon */
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px; /* Touch-friendly size */
  height: 44px;
  padding: 0;
}

.sheet-sign-app .toolbar .toolbar-inner .right a i,
.sheet-duplicate-install .toolbar .toolbar-inner .right a i,
.sheet-appledev-install .toolbar .toolbar-inner .right a i {
  margin: 0; /* Remove default icon margin */
}

/* Two-column layout for form rows in Sign Your Own Apps, Duplicate Install & Apple Developer Install */
.sign-app-form .row-two-columns,
.duplicate-form .row-two-columns,
.appledev-form .row-two-columns,
.sheet-appledev-install .row-two-columns {
  display: flex;
  gap: 10px;
  padding: 0 15px;
}

.sign-app-form .row-two-columns .col-50,
.duplicate-form .row-two-columns .col-50,
.sheet-appledev-install .row-two-columns .col-50 {
  flex: 1;
  min-width: 0; /* Allow flex items to shrink below content size */
}

.sign-app-form .row-two-columns .item-content,
.duplicate-form .row-two-columns .item-content,
.sheet-appledev-install .row-two-columns .item-content {
  padding-left: 0;
  padding-right: 0;
}

.sign-app-form .row-two-columns .item-inner,
.duplicate-form .row-two-columns .item-inner,
.sheet-appledev-install .row-two-columns .item-inner {
  padding-left: 0;
  padding-right: 0;
}

/* Adjust label font size for two-column layout */
.sign-app-form .row-two-columns .item-title,
.duplicate-form .row-two-columns .item-title,
.sheet-appledev-install .row-two-columns .item-title {
  font-size: 13px;
}

/* Ensure inputs fill the available space */
.sign-app-form .row-two-columns input[type="text"],
.duplicate-form .row-two-columns input[type="text"],
.sheet-appledev-install .row-two-columns input[type="text"] {
  width: 100%;
}

/* Mobile-friendly: Stack columns on small devices (iPhone SE, iPhone 8, etc.) */
@media (max-width: 375px) {
  .sign-app-form .row-two-columns,
  .duplicate-form .row-two-columns,
  .sheet-appledev-install .row-two-columns {
    flex-direction: column;
    gap: 0;
  }

  .sign-app-form .row-two-columns .col-50,
  .duplicate-form .row-two-columns .col-50,
  .sheet-appledev-install .row-two-columns .col-50 {
    width: 100%;
  }

  /* Restore normal font size when stacked */
  .sign-app-form .row-two-columns .item-title,
  .duplicate-form .row-two-columns .item-title,
  .sheet-appledev-install .row-two-columns .item-title {
    font-size: 14px;
  }
}

/* Custom styles for active tab in Sign Your Own Apps sheet */
.sheet-sign-app .segmented .button.button-active {
    color: #fff !important;
}

/* Custom styles for active tab in Duplicate Install sheet */
.sheet-duplicate-install .segmented .button.button-active {
    color: #fff !important;
}

.fab {
  position: relative !important;
}

/* Toolbar centering - use CSS pseudo-elements instead of HTML placeholders */
/* Sheet modal toolbars - center title by adding invisible element on the left */
.sheet-modal .toolbar .toolbar-inner .left::before {
  content: '';
  display: inline-block;
  width: 44px;
  visibility: hidden;
}

/* Bottom tabs - ensure labels are centered within each tab */
.custom-bottom-nav .custom-nav-link,
.toolbar.toolbar-bottom .tab-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* Dark theme customizations */

.theme-dark {
  color-scheme: dark;
}

/* Framework7 Dialog Inputs - Dark Mode */
.theme-dark .dialog-input {
  background-color: #1c1c1e !important;
  color: #ffffff !important;
  border: 1px solid #38383a !important;
}

.theme-dark .dialog-input::placeholder {
  color: #8e8e93 !important;
}

.theme-dark .dialog-input:focus {
  border-color: #667eea !important;
  background-color: #2c2c2e !important;
}

/* Dark theme bottom navigation - handled by CSS-first approach in app.css */

/* Standalone mode for dark theme - JavaScript fallback 
.theme-dark.standalone-mode .custom-bottom-nav,
.theme-dark.standalone-mode .toolbar.toolbar-bottom {
  margin: 8px 12px 12px 12px !important;
}*/

/* Enhanced interactive elements for iOS 26 Dark Mode */
.theme-dark .custom-bottom-nav .custom-nav-link, 
.theme-dark .toolbar.toolbar-bottom .tab-link {
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  border-radius: 16px;
  margin: 6px 4px;
  position: relative;
  overflow: hidden;
  /* Inherit parent's dark liquid glass effect for seamless glassmorphism */
}

.theme-dark .custom-bottom-nav .custom-nav-link:active, 
.theme-dark .toolbar.toolbar-bottom .tab-link:active {
  transform: scale(0.92);
  background: rgba(0, 122, 255, 0.25);
  backdrop-filter: blur(20px) saturate(150%) brightness(1.2);
  -webkit-backdrop-filter: blur(20px) saturate(150%) brightness(1.2);
  box-shadow: 
    0 2px 8px rgba(0, 122, 255, 0.4),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

/* Enhanced dark mode ripple effect */
.theme-dark .custom-bottom-nav .custom-nav-link::after, 
.theme-dark .toolbar.toolbar-bottom .tab-link::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 122, 255, 0.6) 0%, rgba(0, 122, 255, 0.2) 70%, transparent 100%);
  transform: translate(-50%, -50%);
  transition: width 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), height 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.6s ease;
  pointer-events: none;
  opacity: 0;
}

.theme-dark .custom-bottom-nav .custom-nav-link:active::after, 
.theme-dark .toolbar.toolbar-bottom .tab-link:active::after {
  width: 80px;
  height: 80px;
  opacity: 1;
}

/* Dark theme for status overlay icons */
.theme-dark .nav-status-overlay {
  background: rgba(255, 255, 255, 0.15);
  color: white;
}

.theme-dark .nav-status-overlay.vip-overlay {
  background: #ff9500; /* Keep orange for ViP in dark mode */
}

.theme-dark .nav-status-overlay.app-plus-overlay {
  background: #667eea; /* Keep blue-purple for App+ in dark mode */
}


/* Dark Theme for Search Page Redesign */

.theme-dark .section-title {
  color: #fff;
}

.theme-dark .trending-search-item,
.theme-dark .category-link {
  background-color: #1c1c1d;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.theme-dark .trending-search-link {
  color: #fff;
}

.theme-dark .trending-search-link::before {
  background: linear-gradient(120deg, rgba(255,255,255,0) 30%, rgba(255,255,255,0.1) 50%, rgba(255,255,255,0) 70%);
}

.theme-dark .trending-search-item .search-term::before {
  color: #0a84ff;
}

/* Enhanced fa-bolt animations for dark theme */
.theme-dark .fa-bolt,
.theme-dark .vip-bolt-icon {
  color: #FFD700;
}

/* Enhanced glow effects in dark mode */
.theme-dark .vip-badge .fa-bolt,
.theme-dark .vip-bolt-icon {
  text-shadow: 0 0 8px rgba(255, 215, 0, 0.6);
}

/* Stronger glow on hover in dark mode - enhances the color shift and glow effect */
.theme-dark .vip-badge:hover .fa-bolt,
.theme-dark .vip-download-btn:hover .vip-bolt-icon,
.theme-dark .download-btn:hover .fa-bolt {
  color: #FFF8DC !important;
  text-shadow: 0 0 18px rgba(255, 248, 220, 1), 0 0 20px rgba(255, 215, 0, 0.8), 0 0 40px rgba(255, 215, 0, 0.5);
}

/* Enhanced glow for other hover contexts in dark mode */
.theme-dark .custom-nav-link:hover .fa-bolt,
.theme-dark .btn:hover .fa-bolt,
.theme-dark button:hover .fa-bolt {
  color: #FFF8DC !important;
  text-shadow: 0 0 15px rgba(255, 248, 220, 0.9), 0 0 10px rgba(255, 215, 0, 0.7), 0 0 35px rgba(255, 215, 0, 0.4);
}

/* Active state in dark mode - intense white flash */
.theme-dark .vip-badge:active .fa-bolt,
.theme-dark .vip-download-btn:active .vip-bolt-icon,
.theme-dark .download-btn:active .fa-bolt,
.theme-dark .custom-nav-link:active .fa-bolt,
.theme-dark .btn:active .fa-bolt,
.theme-dark button:active .fa-bolt {
  color: #FFFFFF !important;
  text-shadow: 0 0 20px rgba(255, 255, 255, 1), 0 0 30px rgba(255, 248, 220, 1), 0 0 50px rgba(255, 215, 0, 0.8);
}

/* Dark Theme Install Button Hover Effects */
.theme-dark .nav-status-overlay:hover,
.theme-dark .btn-plus-install:hover,
.theme-dark .btn-enterprise-install:hover,
.theme-dark .btn-download-ipa:hover {
  box-shadow: 0 0 20px rgba(102, 126, 234, 0.6);
}

.theme-dark .icon-background:hover {
  box-shadow: 0 0 15px rgba(102, 126, 234, 0.4);
}

/* All dark mode rocket animations use rocketSpin */
.theme-dark .nav-status-overlay:hover .fa-rocket,
.theme-dark .btn-plus-install:hover .fa-rocket,
.theme-dark .button:hover .fa-rocket,
.theme-dark a:hover .fa-rocket,
.theme-dark .icon-background:hover .fa-rocket {
  animation: rocketSpin 0.5s ease-out forwards;
}

.theme-dark .category-name {
  color: #fff;
}

.theme-dark .category-icon {
  background-color: #0a84ff;
}

.theme-dark .trending-search-item.item-active {
  box-shadow: 0 4px 12px rgba(10, 132, 255, 0.25);
}

.theme-dark .category-item.item-active .category-link {
  box-shadow: 0 4px 12px rgba(10, 132, 255, 0.25);
}

.theme-dark .ios .page {
  background-color: #1c1c1d;
  color: #fff;
}

.theme-dark .ios .navbar,
.theme-dark .ios .toolbar,
.theme-dark .ios .searchbar,
.theme-dark .ios .subnavbar {
  background-color: #1c1c1d;
  color: #fff;
}

.theme-dark .app__meta .app--detail .title,
.theme-dark .content h1,
.theme-dark .content h2,
.theme-dark .content h2.section-heading,
.theme-dark .content h3,
.theme-dark .content .app-list li .app-meta .app-title strong,
.theme-dark .app__description .title,
.theme-dark .app__information .title,
.theme-dark .app__description p {
  color: #fff;
}

.theme-dark .content .app-list li .app-meta {
  border-bottom: 1px solid #2c2c2d;
}

.theme-dark .app__meta .app__meta--bottom ul,
.theme-dark .app__description {
  border-bottom: 1px solid #2c2c2d;
}

.theme-dark .ios .navbar {
  box-shadow: 0 1px 0px 0 rgba(60, 60, 60, 0.37);
}

.theme-dark .swiper--wrapper {
  background-color: #2c2c2d;
  border-top: solid 0.5px #3c3c3d;
  border-bottom: solid 0.5px #3c3c3d;
}

.theme-dark .swiper--wrapper .swiper-slide {
  background-color: #1c1c1d;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);
}

.theme-dark .demo-swiper .swiper-slide,
.theme-dark .demo-swiper-multiple .swiper-slide {
  background: #1c1c1d;
  color: #fff;
}

.theme-dark .list ul:before,
.theme-dark .list ul:after {
  background-color: #2c2c2d;
}

.theme-dark .item-inner:after {
  background-color: #2c2c2d;
}

.theme-dark .list .item-link,
.theme-dark .list .item-content {
  color: #fff;
}

.theme-dark .list .item-link:active {
  background-color: #2c2c2d;
}

.theme-dark code {
  background-color: #2c2c2d;
}

.theme-dark .popover {
  background: #2c2c2d;
}

.theme-dark .popover .popover-angle:after {
  background: #2c2c2d;
}

.theme-dark .toast {
  background: rgba(44, 44, 45, 0.95);
}

.theme-dark .login-screen-content {
  background: #1c1c1d;
}

.theme-dark .popup {
  background-color: #1c1c1d;
}

.theme-dark .popup-screenshot .swiper-container .swiper-slide {
  background-color: #1c1c1d;
}

.theme-dark input,
.theme-dark select,
.theme-dark textarea {
  background-color: #1c1c1d;
  color: #fff;
  border-color: #2c2c2d;
}

.theme-dark ::placeholder {
  color: #8e8e93;
}

.theme-dark .searchbar-input {
  background-color: #2c2c2d;
  color: #fff;
}

.theme-dark .demo-facebook-card .card-footer {
  background-color: #1c1c1d;
}

.theme-dark .list .item-link.active-state {
  background-color: #2c2c2d;
}

.theme-dark .card {
  background-color: #1c1c1d;
  color: #fff;
}

.theme-dark .card-content-padding {
  color: #fff;
}

.theme-dark .block-title {
  color: #fff;
}

.theme-dark .ios .button {
  border-color: #3c3c3d;
  color: #fff;
}

.theme-dark .ios .button.button-fill {
  background-color: #41879f;
  color: #fff;
}

.theme-dark .ios .navbar a.link,
.theme-dark .ios .toolbar a.link,
.theme-dark .ios .navbar a,
.theme-dark .ios .toolbar a {
  color: #41879f;
}

.theme-dark .popup .navbar .navbar-inner:after {
  background-color: #3c3c3d;
}

.theme-dark .login-screen-title {
  color: #fff;
}

.theme-dark .ios .toggle input[type=checkbox]:checked+.toggle-icon {
  background: #41879f;
}

.theme-dark .ios .toggle .toggle-icon {
  background: #3c3c3d;
}

.theme-dark .ios .toggle .toggle-icon:after {
  background: #8e8e93;
}

.theme-dark .ios .toggle input[type=checkbox]:checked+.toggle-icon:after {
  background: #fff;
}

.theme-dark .item-input-wrap input,
.theme-dark .item-input-wrap select,
.theme-dark .item-input-wrap textarea {
  color: #fff;
}

.theme-dark .item-input .item-input-wrap:after {
  background-color: #3c3c3d;
}

.theme-dark .item-input:after {
  background-color: #3c3c3d;
}

.theme-dark .modal {
  background-color: #1c1c1d;
}

.theme-dark {
  --f7-dialog-bg-color: #1c1c1d;
}

.theme-dark .dialog-title,
.theme-dark .dialog-text {
  color: #fff;
}

.theme-dark .dialog-button {
  color: #41879f;
}

.theme-dark .dialog-button:after {
  background-color: #3c3c3d;
}

.theme-dark .ios .list .list-button:after {
  background-color: #3c3c3d;
}

/* Additional elements that need darkening */

.theme-dark .ios .searchbar input[type=search],
.theme-dark .ios .searchbar input[type=text] {
  background-color: #2c2c2d;
  color: #fff;
}

.theme-dark .page-content .content {
  background-color: #1c1c1d;
}

.theme-dark .ios .block {
  color: #fff;
}

.theme-dark .block-strong {
  background-color: #2c2c2d;
  color: #fff;
}

.theme-dark .block-header,
.theme-dark .block-footer {
  color: #8e8e93;
}

.theme-dark .ios .list .item-divider {
  background-color: #2c2c2d;
  color: #8e8e93;
}

.theme-dark .ios .list .item-divider:after {
  background-color: #3c3c3d;
}

.theme-dark .ios .list .item-inner {
  border-color: #3c3c3d;
}

.theme-dark .ios .list li:after {
  background-color: #3c3c3d;
}

.theme-dark .link,
.theme-dark .button {
  color: #41879f;
}

.theme-dark .ios .searchbar input::-webkit-input-placeholder {
  color: #8e8e93;
}

.theme-dark .ios .searchbar .input-clear-button:after {
  color: #8e8e93;
}

.theme-dark .ios .list .group-title {
  background-color: #1c1c1d;
  color: #8e8e93;
}

.theme-dark .swiper-pagination-bullet {
  background: #8e8e93;
}

/* Dark Mode Support for Desktop Navigation Buttons */
.theme-dark .desktop-nav-button {
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
}

.theme-dark .desktop-nav-button:hover {
  background: rgba(255, 255, 255, 0.2);
}

.theme-dark .desktop-nav-button.swiper-button-disabled {
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.3);
}

.theme-dark .desktop-nav-button.swiper-button-disabled:hover {
  background: rgba(255, 255, 255, 0.05);
}

.theme-dark .ios .tabbar .tab-link:not(.tab-link-active) {
  color: #8e8e93;
}

.theme-dark .ios .tabbar-labels .tab-link:not(.tab-link-active) {
  color: #8e8e93;
}

.theme-dark .ios .tabbar a.tab-link-active {
  color: #41879f;
}

.theme-dark .searchbar-backdrop {
  background: rgba(0, 0, 0, 0.8);
}

.theme-dark .ios .media-list .item-inner,
.theme-dark .ios li.media-item .item-inner {
  background-image: none;
}

.theme-dark .ios .media-list .item-link .item-inner,
.theme-dark .ios .media-list li.media-item .item-link .item-inner,
.theme-dark .ios li.media-item .item-link .item-inner {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D'8px'%20height%3D'13px'%20viewBox%3D'0%200%208%2013'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpolygon%20fill%3D'%238e8e93'%20transform%3D'translate(1.500000%2C%206.500000)%20rotate(-45.000000)%20translate(-1.500000%2C%20-6.500000)'%20points%3D'6%2011%206%202%204%202%204%209%20-3%209%20-3%2011%205%2011'%3E%3C%2Fpolygon%3E%3C%2Fsvg%3E");
  background-size: 8px 13px;
  background-repeat: no-repeat;
  background-position: calc(100% - 15px) center;
  padding-right: 35px;
}

.theme-dark .ios .message-received .message-bubble {
  background-color: #2c2c2d;
  color: #fff;
}

.theme-dark .ios .message-sent .message-bubble {
  background-color: #41879f;
}

.theme-dark .ios .messagebar {
  background-color: #1c1c1d;
}

.theme-dark .ios .messagebar:before {
  background-color: #3c3c3d;
}

.theme-dark .ios .messagebar textarea {
  background-color: #2c2c2d;
  color: #fff;
  border-color: #3c3c3d;
}

.theme-dark .app__meta .app--detail .tag,
.theme-dark .app__meta .app--detail .updated-time-ago {
  color: #8e8e93;
}

.theme-dark .app-badge-free {
  background-color: #388E3C;
  color: white;
}

.theme-dark .content .app-list li .app-meta .app-title span {
  color: #8e8e93;
}

.theme-dark .content .app-list li .app-meta .app-title span.app-updated-time {
  color: #5a9fbb;
}

.theme-dark .app__meta .app__meta--bottom ul li span {
  color: #8e8e93;
}

.theme-dark .ios .navbar .title {
  color: #fff;
}

.theme-dark .ios a {
  color: #41879f;
}

.theme-dark .data-table {
  background: #1c1c1d;
  color: #fff;
}

.theme-dark .ios .data-table thead th,
.theme-dark .ios .data-table thead td {
  background-color: #2c2c2d;
  color: #fff;
}

.theme-dark .ios .data-table tbody tr:not(.data-table-row-selected):nth-child(2n) {
  background-color: #2c2c2d;
}

.theme-dark .ios .data-table .data-table-footer {
  background-color: #1c1c1d;
  color: #8e8e93;
}

.theme-dark .ios .data-table tbody tr.data-table-row-selected {
  background-color: rgba(65, 135, 159, 0.2);
}

/* Fix for common elements */

.theme-dark .page,
.theme-dark .view,
.theme-dark .panel,
.theme-dark .popup,
.theme-dark .sheet-modal,
.theme-dark .page-content {
  background-color: #1c1c1d;
  color: #fff;
}

.theme-dark .list ul {
  background-color: #1c1c1d;
}

.theme-dark .actions-button-media {
  background-color: #2c2c2d;
}

.theme-dark .actions-button {
  border-color: #2c2c2d;
  background-color: #1c1c1d;
  color: #fff;
}

.theme-dark .actions-button:active,
.theme-dark .actions-button.active-state {
  background-color: #2c2c2d !important;
}

.theme-dark .actions-group {
  background-color: #1c1c1d;
  border-color: #2c2c2d;
}

.theme-dark .item-subtitle {
  color: #8e8e93;
}

.theme-dark .item-text {
  color: #8e8e93;
}

/* More specific app styles */

.theme-dark .swiper--wrapper .swiper-slide {
  background-color: #1c1c1d;
}

.theme-dark .announcement {
  background-color: #41879f;
  color: #fff;
}

.theme-dark .content h2.section-heading {
  border-bottom: 1px solid #3c3c3d;
}

.theme-dark .app__itunes-info.list .item-after {
  color: #fff;
}

.theme-dark .content .app-list li {
  border-color: #3c3c3d;
}

.theme-dark .ios .statusbar {
  background: #1c1c1d;
}

.theme-dark .msg-box {
  background-color: rgba(255, 0, 0, 0.2);
  color: #ff6b6b;
}

.theme-dark .shrinkable-title {
  color: #fff;
  border-color: #3c3c3d;
}

.theme-dark .tab-link i {
  color: #8e8e93;
}

.theme-dark .tab-link-active i {
  color: #41879f !important;
}

.theme-dark .ios input[type="email"],
.theme-dark .ios input[type="password"],
.theme-dark .ios input[type="search"],
.theme-dark .ios input[type="tel"],
.theme-dark .ios input[type="text"],
.theme-dark .ios input[type="url"] {
  background-color: #2c2c2d;
  color: #fff;
}

.theme-dark .ios input::placeholder {
  color: #8e8e93;
}

.theme-dark .ios textarea {
  background-color: #2c2c2d;
  color: #fff;
}

.theme-dark .list .searchbar-not-found {
  background-color: #1c1c1d;
  color: #8e8e93;
}

.theme-dark .searchbar-hide-on-search {
  background-color: #1c1c1d;
}

.theme-dark .item-content.recaptcha {
  background-color: #2c2c2d;
}

.theme-dark .toolbar.tabbar .toolbar-inner {
  background-color: #1c1c1d;
}

.theme-dark .ios .page-previous:after {
  opacity: 0.2;
}

.theme-dark .app__meta .app__meta--bottom ul {
  background-color: #1c1c1d;
}

.theme-dark .app__meta .app__meta--bottom ul li strong {
  color: #fff;
}

.theme-dark .item-after {
  color: #8e8e93;
}

.theme-dark .avatar {
  background-color: #2c2c2d;
}

/* Override any light-colored Framework7 theme-dark default styles */

.theme-dark .navbar,
.theme-dark .toolbar,
.theme-dark .subnavbar,
.theme-dark .calendar,
.theme-dark .calendar-month-selector,
.theme-dark .calendar-year-selector {
  background-color: #1c1c1de6 !important;
  color: #fff !important;
}

.theme-dark .navbar {
  background-color: #1c1c1d !important;
}

.theme-dark .calendar-day.calendar-day-selected span {
  background-color: #41879f !important;
}

.theme-dark .calendar-day.calendar-day-today span {
  color: #41879f !important;
}

.theme-dark .ios .list .item-link.active-state {
  background-color: #2c2c2d !important;
}

.theme-dark .button:not(.button-fill) {
  border-color: #3c3c3d !important;
}

.theme-dark .button:not(.button-fill).active-state {
  background-color: rgba(65, 135, 159, 0.15) !important;
}

.theme-dark .button.button-fill {
  background-color: #41879f !important;
  color: #fff !important;
}

.theme-dark .button.button-fill.active-state {
  background-color: #376d80 !important;
}

/* Fix common Framework7 components */

.theme-dark .stepper-button,
.theme-dark .stepper-button-minus,
.theme-dark .stepper-button-plus {
  border-color: #3c3c3d !important;
  color: #fff !important;
}

.theme-dark .stepper-button-plus:after,
.theme-dark .stepper-button-plus:before {
  background-color: #fff !important;
}

.theme-dark .stepper-button-minus:after {
  background-color: #fff !important;
}

.theme-dark .stepper-value {
  color: #fff !important;
}

.theme-dark .range-slider {
  background-color: #3c3c3d !important;
}

.theme-dark .range-knob {
  background-color: #fff !important;
}

.theme-dark .ios .swipeout-content {
  background-color: #1c1c1d;
}

.theme-dark .navbar:after {
  background-color: #3c3c3d !important;
}

/* Additional specific elements */

.theme-dark .searchbar {
  background-color: #1c1c1d !important;
  color: #fff !important;
}

.theme-dark .searchbar-input {
  color: #fff !important;
}

.theme-dark .searchbar-icon,
.theme-dark .searchbar-disable-button {
  color: #8e8e93 !important;
}

.theme-dark .shrinkable-title.no-shrink {
  color: #fff !important;
  border-color: #3c3c3d !important;
  background-color: #1c1c1d !important;
}

.theme-dark .navbar-inner.navbar-current.navbar--search-focused {
  background-color: #1c1c1d !important;
  color: #fff !important;
}

.theme-dark .navbar-inner.navbar-current.navbar--search-focused .title,
.theme-dark .navbar-inner.navbar-current.navbar--search-focused .left a,
.theme-dark .navbar-inner.navbar-current.navbar--search-focused .right a {
  color: #fff !important;
}

.theme-dark .navbar-inner.navbar-current.navbar--search-focused:after {
  background-color: #3c3c3d !important;
}

.theme-dark .toggle-dark-mode i {
  color: #fff;
}

/* Dark theme for notifications */

.theme-dark .notification {
  background-color: #2c2c2d;
}

.theme-dark .notification-title {
  color: #fff;
}

.theme-dark .notification-subtitle,
.theme-dark .notification-text {
  color: #fff;
}

.theme-dark .notification-icon i {
  color: #41879f;
}

.theme-dark .notification-title-right-text {
  color: #8e8e93;
}

/* Dark Mode Support for Sheet Modals */

/* App+ sheets keep gradient background for branding consistency */
.theme-dark .sheet-app-plus-install .toolbar,
.theme-dark .sheet-app-plus-status .toolbar {
  background: linear-gradient(135deg, #5a68c9 0%, #624088 100%);
}

.theme-dark .sheet-app-plus-install .toolbar .toolbar-inner,
.theme-dark .sheet-app-plus-status .toolbar .toolbar-inner {
  color: #fff;
}

.theme-dark .sheet-install-instructions .install-instructions-content,
.theme-dark .sheet-app-plus-install .install-instructions-content,
.theme-dark .sheet-app-plus-status .page-content {
  color: #fff;
}

.theme-dark .sheet-install-instructions .sheet-modal-swipe-step,
.theme-dark .sheet-app-plus-install .sheet-modal-swipe-step,
.theme-dark .sheet-app-plus-status .sheet-modal-swipe-step {
  background: #636366;
}

/* Dark mode support for custom instructions */

.theme-dark .step-content p,
.theme-dark .alt-method p,
.theme-dark .install-help p,
.theme-dark .install-note p {
  color: #ddd;
}

.theme-dark .install-details span {
  background: rgba(255, 255, 255, 0.1);
}

.theme-dark .install-details .version,
.theme-dark .install-details .size {
  color: #8e8e93;
}

.theme-dark .install-note {
  background-color: rgba(0, 122, 255, 0.15);
}

.theme-dark .install-help {
  background-color: rgba(255, 255, 255, 0.08);
}

/* Dark mode support for grid layout */

.theme-dark .content .app-list.app-list-grid .app-list-item-grid .app-meta {
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

/* Dark mode support for responsive grid */

.theme-dark .content .app-list.responsive-grid .app-list-item .app-meta {
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.theme-dark .app-title.clickable:hover strong {
  color: #0a84ff;
}

.theme-dark .dialog {
  background-color: #1c1c1d;
}

.theme-dark .dialog-title,
.theme-dark .dialog-text {
  color: #fff;
}

.theme-dark .dialog-button {
  color: #41879f;
}

.theme-dark .dialog-button:after {
  background-color: #3c3c3d;
}

/* Enhanced dialog styling for dialog-buttons-vertical */

.theme-dark .dialog.dialog-buttons-vertical {
  background-color: #1c1c1d;
  border: 1px solid #3c3c3d;
}

.theme-dark .dialog.dialog-buttons-vertical .dialog-inner {
  background-color: #1c1c1d;
  color: #fff;
}

.theme-dark .dialog.dialog-buttons-vertical .dialog-button {
  background-color: #1c1c1d;
  color: #41879f;
  border-top: 1px solid #3c3c3d;
}

.theme-dark .dialog.dialog-buttons-vertical .dialog-button:active {
  background-color: #2c2c2d;
}

.theme-dark .ios .list .list-button:after {
  background-color: #3c3c3d;
}

.theme-dark .app-badge-vip {
  background-color: #FF9800;
  color: white;
}

.theme-dark .vip-download-btn {
  background-color: #FF9800 !important;
  border-color: #FF9800 !important;
}

/* Add dark mode support for hover effects */

.theme-dark .content .app-list li .app-meta .app-title:hover strong {
  color: #5a9fbb;
}

.theme-dark .content .app-list li .app-meta .app-title:hover span {
  color: #a0a0a0;
}

/* Dark mode support */

.theme-dark .app--logo:hover {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.4);
}

.theme-dark .app--logo:hover img {
  filter: brightness(1.1);
}

.theme-dark .app--detail__downloads .button:hover {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}

/* Dark mode support for screenshots */

.theme-dark .swiper--wrapper .swiper-slide:hover {
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.4);
}

.theme-dark .swiper--wrapper .swiper-slide:hover img {
  filter: brightness(1.1);
}

/* Dark mode VIP styling */

.theme-dark .quick-link-item.vip-quick-link {
  background-color: #2D2614;
  border: 1px solid rgba(255, 152, 0, 0.25);
}

.theme-dark .quick-link-item.vip-quick-link .quick-link-icon {
  background-color: rgba(255, 152, 0, 0.25);
  color: #FF9F0A;
  box-shadow: 0 2px 4px rgba(255, 152, 0, 0.2);
}

.theme-dark .quick-link-item.vip-quick-link.item-active {
  box-shadow: 0 4px 12px rgba(255, 152, 0, 0.3);
}

/* Dark mode for country list */

.theme-dark .country-list .country-list-link.item-link {
  background-color: #1c1c1d;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.theme-dark .country-list .country-list-name {
  color: #fff;
}

.theme-dark .country-list .item-inner:after {
  display: none;
  /* Ensure border is hidden in dark mode too */
}

/* Dark mode support */

.theme-dark .category-item {
  background-color: #1a222e;
  border: 1px solid rgba(10, 132, 255, 0.2);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.theme-dark .category-icon {
  background-color: rgba(10, 132, 255, 0.25);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.theme-dark .category-link {
  color: #fff;
}

.theme-dark .category-item:hover,
.theme-dark .category-item.item-active {
  box-shadow: 0 4px 12px rgba(10, 132, 255, 0.3);
  transform: scale(1.05);
}

/* Dark mode for country items */

.theme-dark .country-item {
  background-color: #1a222e;
  border: 1px solid rgba(10, 132, 255, 0.2);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.theme-dark .country-icon {
  background-color: rgba(10, 132, 255, 0.25);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.theme-dark .country-link {
  color: #fff;
}

.theme-dark .country-name {
  color: #fff;
}

.theme-dark .country-item:hover,
.theme-dark .country-item.item-active {
  box-shadow: 0 4px 12px rgba(10, 132, 255, 0.3);
  transform: scale(1.05);
}

/* Dark Mode Support for VIP Sheet Modal */

.theme-dark .sheet-vip-access .toolbar {
  background-color: #1c1c1d;
}

.theme-dark .sheet-vip-access .toolbar .toolbar-inner {
  color: #fff;
}

.theme-dark .sheet-vip-access .vip-access-content {
  color: #fff;
}

.theme-dark .sheet-vip-access .sheet-modal-swipe-step {
  background: #636366;
}

.theme-dark .vip-app-header {
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

.theme-dark .vip-app-header h3 {
  color: #fff;
}

.theme-dark .vip-app-details span {
  background: rgba(255, 255, 255, 0.1);
}

.theme-dark .vip-benefits h4 {
  color: #fff;
}

.theme-dark .benefits-grid {
  border-color: rgba(255, 255, 255, 0.1);
}

.theme-dark .benefit-item {
  border-color: rgba(255, 255, 255, 0.1);
}

.theme-dark .benefit-item i {
  color: #f49b00;
}

.theme-dark .benefit-item strong {
  color: #fff;
}

.theme-dark .benefit-item p {
  color: #bbb;
}

.theme-dark .vip-perks-link a {
  color: #0a84ff;
}

.theme-dark .vip-perks-link .feature-info-link {
  color: #ff9f0a;
}

.theme-dark .vip-app-icon:hover {
  box-shadow: 0 8px 24px rgba(255, 255, 255, 0.1);
}

.theme-dark .vip-app-icon:hover img {
  filter: brightness(1.1);
}

.theme-dark .search-results-overlay {
  background-color: #1c1c1d;
}

.theme-dark .search-results-header {
  border-bottom-color: #333;
}

.theme-dark .no-results-icon {
  color: #8e8e93;
}

.theme-dark .no-results-links a {
  color: #0a84ff;
}

.theme-dark .no-results-links .hack-request-link {
  color: #ff9f0a;
}

.theme-dark .no-results-message p a {
  color: #0a84ff;
}

.theme-dark .no-results-message p a.hack-request-link {
  color: #ff9f0a;
}

/* Dark theme styles for Quick Links */

.theme-dark .quick-link-item {
  background-color: #1a222e;
  border: 1px solid rgba(10, 132, 255, 0.2);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.theme-dark .quick-link {
  color: #fff;
}

.theme-dark .quick-link::before {
  background: linear-gradient(120deg, rgba(255,255,255,0) 30%, rgba(255,255,255,.1) 50%, rgba(255,255,255,0) 70%);
}

.theme-dark .quick-link-icon {
  background-color: rgba(10, 132, 255, 0.25);
  color: #0a84ff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.theme-dark .quick-link-item:hover,
.theme-dark .quick-link-item.item-active {
  box-shadow: 0 4px 12px rgba(10, 132, 255, 0.3);
  transform: scale(1.03);
}

/* Dark mode support */

.theme-dark .category-item {
  background-color: #1a222e;
  border: 1px solid rgba(10, 132, 255, 0.2);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* Dark mode support for accordion */

.theme-dark .categories-section .accordion-item-toggle:active {
  background-color: rgba(255, 255, 255, 0.05);
}

/* Dark theme customizations for Sideloadly popup */

.theme-dark .app-info-sideloadly {
  background: rgba(30, 30, 32, 0.7);
  border-color: rgba(255,255,255,0.03);
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.theme-dark .app-info-sideloadly__title {
  color: #fff;
}

.theme-dark .app-info-sideloadly__version {
  background-color: rgba(0,122,255,0.1);
  border: 1px solid rgba(0,122,255,0.05);
}

.theme-dark .app-info-sideloadly__meta-item {
  background-color: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.01);
}

.theme-dark .app-info-sideloadly__icon {
  color: #0a84ff;
}

.theme-dark .app-info-sideloadly__bundle-text {
  color: #999;
}

.theme-dark .app-info-sideloadly__latest-badge {
  background-color: rgba(40,167,69,0.2);
}

/* Dark theme customizations for download section */

.theme-dark .download-section__title {
  color: #fff;
}

.theme-dark .download-button--secondary {
  background: rgba(255,255,255,0.05);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.1);
}

.theme-dark .download-button--secondary:active {
  background: rgba(255,255,255,0.08);
}

.theme-dark .link-generating {
  background-color: rgba(255,255,255,0.05);
  color: rgba(255,255,255,0.8);
}

.theme-dark .profile-card {
  background-color: #1e2631;
  box-shadow: none;
}

.theme-dark .profile-header {
  background: linear-gradient(135deg, #1a3c4d, #352441);
}

.theme-dark .profile-stats-header {
  color: rgba(255, 255, 255, 0.7);
}

.theme-dark .profile-stats {
  border-bottom-color: rgba(255, 255, 255, 0.05);
}

.theme-dark .stat-item:not(:last-child) {
  border-right-color: rgba(255, 255, 255, 0.05);
}

.theme-dark .stat-value {
  color: #fff;
}

.theme-dark .stat-label {
  color: rgba(255, 255, 255, 0.5);
}

.theme-dark .profile-detail-item {
  border-bottom-color: rgba(255, 255, 255, 0.05);
}

.theme-dark .detail-icon {
  background-color: rgba(255, 255, 255, 0.05);
}

.theme-dark .detail-label {
  color: rgba(255, 255, 255, 0.5);
}

.theme-dark .profile-accordion .item-link {
  background-color: #222;
  box-shadow: none;
}

.theme-dark .profile-accordion .item-title {
  color: #fff;
}

.theme-dark .account-info-box {
  background-color: #2a2a2a;
  box-shadow: none;
}

.theme-dark .account-info-icon {
  background-color: rgba(255, 255, 255, 0.1);
  box-shadow: none;
}

.theme-dark .account-info-label {
  color: rgba(255, 255, 255, 0.5);
}

.theme-dark .account-info-value {
  color: #fff;
}

.theme-dark .account-links-header {
  color: rgba(255, 255, 255, 0.7);
}

.theme-dark .account-link-item {
  background-color: #2a2a2a;
  box-shadow: none;
}

.theme-dark .account-link-icon {
  background-color: rgba(255, 255, 255, 0.1);
  box-shadow: none;
}

.theme-dark .account-link-text {
  color: #fff;
}

.theme-dark .update-email-link {
  color: #0a84ff;
}

.theme-dark .update-email-link:active {
  background-color: rgba(10, 132, 255, 0.2);
}

/* Dark mode support for PLUS elements */
.theme-dark .plus-benefits {
  background: transparent;
}

.theme-dark .plus-benefits h3,
.theme-dark .plus-form h3,
.theme-dark .form-group label {
  color: #fff;
}

.theme-dark .benefit-item {
  background: #333;
  box-shadow: 0 2px 10px rgba(0,0,0,0.3);
}

.theme-dark .benefit-item:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,0.4);
}

.theme-dark .benefit-item strong {
  color: #fff;
}

.theme-dark .benefit-item p {
  color: #ccc;
}

.theme-dark .plus-form {
  background: #2a2a2a;
  border-color: #444;
}

.theme-dark .form-group input {
  background: #333;
  border-color: #555;
  color: #fff;
}

.theme-dark .form-group input:focus {
  border-color: #667eea;
}

.theme-dark .udid-link-inline {
  color: #64b5f6;
}

.theme-dark .udid-link-inline:hover {
  color: #90caf9;
}

.theme-dark .price-value {
  color: #66bb6a;
}

.theme-dark .discount-badge {
  background: linear-gradient(135deg, #ff5722 0%, #d32f2f 100%);
  box-shadow: 0 2px 8px rgba(255, 87, 34, 0.5);
}

.theme-dark .price-original {
  opacity: 0.6;
}

.theme-dark .plus-info-inline p {
  color: #66bb6a;
}

.theme-dark .plus-faq {
  background: transparent;
  border-left-color: #ff9800;
}

.theme-dark .plus-faq h4 {
  color: #fff;
}

.theme-dark .faq-question strong {
  color: #fff;
}

.theme-dark .faq-answer p {
  color: #ccc;
  border-left-color: #ff9800;
}

.theme-dark .faq-more {
  border-top-color: #444;
}

.theme-dark .faq-more-link {
  color: #ffb74d;
}

.theme-dark .faq-more-link:hover {
  color: #ffc107;
}

/* Dark mode mobile responsive adjustments for benefit items */
@media (max-width: 768px) {
  .theme-dark .benefit-item {
    background: #333;
    border-color: #444;
  }
  
  .theme-dark .benefit-item:hover {
    background: #3a3a3a;
  }
}

/* Dark mode support for UDID auto-retrieve */
.theme-dark .udid-auto-retrieve {
  background: #2c2c2d;
  border-color: #3c3c3d;
}

.theme-dark .udid-manual-entry {
  background: #1c1c1d;
  border-color: #3c3c3d;
}

.theme-dark .udid-divider::before,
.theme-dark .udid-divider::after {
  border-bottom-color: #3c3c3d;
}

.theme-dark .udid-auto-header h4,
.theme-dark .udid-manual-header h4 {
  color: #fff;
}

.theme-dark .udid-auto-header p,
.theme-dark .udid-manual-header p {
  color: #8e8e93;
}

.theme-dark .udid-manual-entry input {
  background: #2c2c2d;
  border-color: #3c3c3d;
  color: #fff;
}

.theme-dark .btn-auto-udid {
  background: linear-gradient(135deg, #0a84ff, #007aff);
  border-color: #0a84ff;
  color: #fff;
  box-shadow: 0 2px 8px rgba(10, 132, 255, 0.25);
}

.theme-dark .btn-auto-udid:hover {
  background: linear-gradient(135deg, #0070f3, #0056b3);
  box-shadow: 0 4px 12px rgba(10, 132, 255, 0.35);
  transform: translateY(-1px);
}

.theme-dark .btn-auto-udid:active {
  background: linear-gradient(135deg, #0056b3, #004085);
  box-shadow: 0 2px 4px rgba(10, 132, 255, 0.2);
  transform: translateY(0);
}

.theme-dark .udid-status-waiting {
  background: rgba(255, 193, 7, 0.15);
  border-color: rgba(255, 193, 7, 0.3);
  color: #ffc107;
  padding: 12px 16px;
  border-radius: 8px;
  margin-top: 10px;
}

.theme-dark .udid-status-waiting .fa-spinner {
  color: #ffc107;
  margin-right: 8px;
}

.theme-dark .udid-status-success {
  background: rgba(40, 167, 69, 0.15);
  border-color: rgba(40, 167, 69, 0.3);
  color: #28a745;
  padding: 12px 16px;
  border-radius: 8px;
  margin-top: 10px;
}

.theme-dark .udid-status-success .fa-check-circle {
  color: #28a745;
  margin-right: 8px;
}

.theme-dark .udid-status-error {
  background: rgba(220, 53, 69, 0.15);
  border-color: rgba(220, 53, 69, 0.3);
  color: #dc3545;
  padding: 12px 16px;
  border-radius: 8px;
  margin-top: 10px;
}

.theme-dark .udid-status-error .fa-times-circle {
  color: #dc3545;
  margin-right: 8px;
}

