uni-image>img {
      opacity: 1 !important;
      object-fit: cover;
    }

    uni-image.category-icon>img,
    uni-image.section-icon>img,
    uni-image.series-play-count-icon>img,
    uni-image.invite-btn>img {
      object-fit: contain;
    }

    uni-image>div {
      display: none !important;
    }

    html,
    body,
    #app,
    uni-app,
    uni-page,
    uni-page-wrapper,
    uni-page-body,
    .app-container {
      height: 100%;
    }

    .app-container {
      height: 100vh;
      height: 100dvh;
    }

    .search-icon {
      position: relative;
      width: 18px;
      height: 18px;
      flex-shrink: 0;
    }

    .search-icon .u-icon__icon {
      font-size: 0 !important;
      color: transparent !important;
    }

    .search-icon::before {
      content: "";
      position: absolute;
      width: 11px;
      height: 11px;
      border: 2px solid #fff;
      border-radius: 50%;
      top: 0;
      left: 0;
      box-sizing: border-box;
    }

    .search-icon::after {
      content: "";
      position: absolute;
      width: 7px;
      height: 2px;
      background: #fff;
      border-radius: 1px;
      right: 0;
      bottom: 2px;
      transform: rotate(45deg);
    }

    .loading-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, .55);
      z-index: 99999;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .loading-box {
      background: #fff;
      border-radius: 16px;
      padding: 32px 28px;
      text-align: center;
      max-width: 350px;
      width: 80%;
      position: relative;
    }

    .loading-box .loading-close {
      position: absolute;
      top: 10px;
      right: 10px;
      width: 36px;
      height: 36px;
      border: none;
      border-radius: 50%;
      background: #f3f4f6;
      color: #666;
      font-size: 24px;
      line-height: 36px;
      cursor: pointer;
    }

    .loading-box .spinner {
      width: 36px;
      height: 36px;
      border: 3px solid #e5e7eb;
      border-top-color: #0500FF;
      border-radius: 50%;
      animation: spin .8s linear infinite;
      margin: 0 auto 16px;
    }

    @keyframes spin {
      to { transform: rotate(360deg); }
    }

    .loading-box .msg {
      font-size: 15px;
      color: #333;
      line-height: 1.5;
    }

    .loading-box .countdown {
      font-size: 13px;
      color: #999;
      margin-top: 8px;
    }

    .loading-box .safari-tip {
      font-size: 12px;
      color: #ff6600;
      margin-top: 10px;
      line-height: 1.5;
    }

    .loading-box .copy-link-btn {
      margin-top: 12px;
      padding: 8px 24px;
      background: #0500FF;
      color: #fff;
      border: none;
      border-radius: 20px;
      font-size: 14px;
      cursor: pointer;
      width: 100%;
    }
