/*
Theme Name: PaperPass
Author: ALF
Description: 推派 AI，一站式 AI 创作平台
Version: 1.0.0
License: GPL-2.0-or-later
Text Domain: paperpass
*/

/* wp-theme-extractor neutralizer CSS */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,.pace-active,.pace-inactive,[data-preloader],[data-loader],.intro-loader,
.first-load,.cursor-loader,.js-preloader,.site-preloader,.main-preloader,
.preloader-active,.preloader-screen,.loading-wrapper,.loading-wrap,.loading-mask,
.loading-curtain,.loading-bg,.load-screen,.barba-leave-active,.transition-overlay,
.page-transition-overlay,.transition-screen,.ajax-loader,.spinner-loader,.spinner-wrap,
.wpte-force-remove{
  display:none !important; opacity:0 !important; visibility:hidden !important;
  pointer-events:none !important; animation:none !important; transition:none !important;
}
html, body { overflow: auto !important; height: auto !important; }
html.is-loading,html.loading,html.page-loading,html.preload,html.preloading,html.no-scroll,html.overflow-hidden,
body.is-loading,body.loading,body.page-loading,body.preload,body.preloading,body.no-scroll,body.overflow-hidden{
  overflow:auto !important; height:auto !important;
}


  #speed-toast {
    position: fixed;
    left: 50%;
    bottom: 25vh;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 12px 24px;
    border-radius: 20px;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 18px;
    font-weight: 500;
    z-index: 9999999999;
    transition: opacity 0.15s ease-in-out;
    opacity: 0;
    pointer-events: none;
  }



/* wp-theme-extractor: neutralize preloaders only — reveal/entrance-animation
   classes are intentionally NOT forced visible here anymore, so the site's
   own animation library can replay them for real on the exported theme. */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,[data-preloader],[data-loader],.intro-loader,.first-load,.cursor-loader,
.js-preloader,.site-preloader,.main-preloader,.preloader-active,.preloader-screen,
.loading-wrapper,.loading-wrap,.loading-mask,.loading-curtain,.loading-bg,.load-screen,
.barba-leave-active,.transition-overlay,.page-transition-overlay,.transition-screen,
.ajax-loader,.spinner-loader,.spinner-wrap,.wpte-force-remove {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html, body { overflow: auto !important; height: auto !important; }
body.is-loading, body.loading, body.page-loading, body.preload,
body.preloading, body.no-scroll, body.overflow-hidden,
html.is-loading, html.loading, html.page-loading, html.preload,
html.preloading, html.no-scroll, html.overflow-hidden { overflow: auto !important; height: auto !important; }



/* wp-theme-extractor: neutralize preloaders only — reveal/entrance-animation
   classes are intentionally NOT forced visible here anymore, so the site's
   own animation library can replay them for real on the exported theme. */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,[data-preloader],[data-loader],.intro-loader,.first-load,.cursor-loader,
.js-preloader,.site-preloader,.main-preloader,.preloader-active,.preloader-screen,
.loading-wrapper,.loading-wrap,.loading-mask,.loading-curtain,.loading-bg,.load-screen,
.barba-leave-active,.transition-overlay,.page-transition-overlay,.transition-screen,
.ajax-loader,.spinner-loader,.spinner-wrap,.wpte-force-remove {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html, body { overflow: auto !important; height: auto !important; }
body.is-loading, body.loading, body.page-loading, body.preload,
body.preloading, body.no-scroll, body.overflow-hidden,
html.is-loading, html.loading, html.page-loading, html.preload,
html.preloading, html.no-scroll, html.overflow-hidden { overflow: auto !important; height: auto !important; }



  #speed-toast {
    position: fixed;
    left: 50%;
    bottom: 25vh;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 12px 24px;
    border-radius: 20px;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 18px;
    font-weight: 500;
    z-index: 9999999999;
    transition: opacity 0.15s ease-in-out;
    opacity: 0;
    pointer-events: none;
  }



/* wp-theme-extractor: neutralize preloaders only — reveal/entrance-animation
   classes are intentionally NOT forced visible here anymore, so the site's
   own animation library can replay them for real on the exported theme. */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,[data-preloader],[data-loader],.intro-loader,.first-load,.cursor-loader,
.js-preloader,.site-preloader,.main-preloader,.preloader-active,.preloader-screen,
.loading-wrapper,.loading-wrap,.loading-mask,.loading-curtain,.loading-bg,.load-screen,
.barba-leave-active,.transition-overlay,.page-transition-overlay,.transition-screen,
.ajax-loader,.spinner-loader,.spinner-wrap,.wpte-force-remove {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html, body { overflow: auto !important; height: auto !important; }
body.is-loading, body.loading, body.page-loading, body.preload,
body.preloading, body.no-scroll, body.overflow-hidden,
html.is-loading, html.loading, html.page-loading, html.preload,
html.preloading, html.no-scroll, html.overflow-hidden { overflow: auto !important; height: auto !important; }



/* wp-theme-extractor: neutralize preloaders only — reveal/entrance-animation
   classes are intentionally NOT forced visible here anymore, so the site's
   own animation library can replay them for real on the exported theme. */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,[data-preloader],[data-loader],.intro-loader,.first-load,.cursor-loader,
.js-preloader,.site-preloader,.main-preloader,.preloader-active,.preloader-screen,
.loading-wrapper,.loading-wrap,.loading-mask,.loading-curtain,.loading-bg,.load-screen,
.barba-leave-active,.transition-overlay,.page-transition-overlay,.transition-screen,
.ajax-loader,.spinner-loader,.spinner-wrap,.wpte-force-remove {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html, body { overflow: auto !important; height: auto !important; }
body.is-loading, body.loading, body.page-loading, body.preload,
body.preloading, body.no-scroll, body.overflow-hidden,
html.is-loading, html.loading, html.page-loading, html.preload,
html.preloading, html.no-scroll, html.overflow-hidden { overflow: auto !important; height: auto !important; }



  #speed-toast {
    position: fixed;
    left: 50%;
    bottom: 25vh;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 12px 24px;
    border-radius: 20px;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 18px;
    font-weight: 500;
    z-index: 9999999999;
    transition: opacity 0.15s ease-in-out;
    opacity: 0;
    pointer-events: none;
  }



/* wp-theme-extractor: neutralize preloaders only — reveal/entrance-animation
   classes are intentionally NOT forced visible here anymore, so the site's
   own animation library can replay them for real on the exported theme. */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,[data-preloader],[data-loader],.intro-loader,.first-load,.cursor-loader,
.js-preloader,.site-preloader,.main-preloader,.preloader-active,.preloader-screen,
.loading-wrapper,.loading-wrap,.loading-mask,.loading-curtain,.loading-bg,.load-screen,
.barba-leave-active,.transition-overlay,.page-transition-overlay,.transition-screen,
.ajax-loader,.spinner-loader,.spinner-wrap,.wpte-force-remove {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html, body { overflow: auto !important; height: auto !important; }
body.is-loading, body.loading, body.page-loading, body.preload,
body.preloading, body.no-scroll, body.overflow-hidden,
html.is-loading, html.loading, html.page-loading, html.preload,
html.preloading, html.no-scroll, html.overflow-hidden { overflow: auto !important; height: auto !important; }



/* wp-theme-extractor: neutralize preloaders only — reveal/entrance-animation
   classes are intentionally NOT forced visible here anymore, so the site's
   own animation library can replay them for real on the exported theme. */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,[data-preloader],[data-loader],.intro-loader,.first-load,.cursor-loader,
.js-preloader,.site-preloader,.main-preloader,.preloader-active,.preloader-screen,
.loading-wrapper,.loading-wrap,.loading-mask,.loading-curtain,.loading-bg,.load-screen,
.barba-leave-active,.transition-overlay,.page-transition-overlay,.transition-screen,
.ajax-loader,.spinner-loader,.spinner-wrap,.wpte-force-remove {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html, body { overflow: auto !important; height: auto !important; }
body.is-loading, body.loading, body.page-loading, body.preload,
body.preloading, body.no-scroll, body.overflow-hidden,
html.is-loading, html.loading, html.page-loading, html.preload,
html.preloading, html.no-scroll, html.overflow-hidden { overflow: auto !important; height: auto !important; }



  #speed-toast {
    position: fixed;
    left: 50%;
    bottom: 25vh;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 12px 24px;
    border-radius: 20px;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 18px;
    font-weight: 500;
    z-index: 9999999999;
    transition: opacity 0.15s ease-in-out;
    opacity: 0;
    pointer-events: none;
  }



/* wp-theme-extractor: neutralize preloaders only — reveal/entrance-animation
   classes are intentionally NOT forced visible here anymore, so the site's
   own animation library can replay them for real on the exported theme. */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,[data-preloader],[data-loader],.intro-loader,.first-load,.cursor-loader,
.js-preloader,.site-preloader,.main-preloader,.preloader-active,.preloader-screen,
.loading-wrapper,.loading-wrap,.loading-mask,.loading-curtain,.loading-bg,.load-screen,
.barba-leave-active,.transition-overlay,.page-transition-overlay,.transition-screen,
.ajax-loader,.spinner-loader,.spinner-wrap,.wpte-force-remove {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html, body { overflow: auto !important; height: auto !important; }
body.is-loading, body.loading, body.page-loading, body.preload,
body.preloading, body.no-scroll, body.overflow-hidden,
html.is-loading, html.loading, html.page-loading, html.preload,
html.preloading, html.no-scroll, html.overflow-hidden { overflow: auto !important; height: auto !important; }



/* wp-theme-extractor: neutralize preloaders only — reveal/entrance-animation
   classes are intentionally NOT forced visible here anymore, so the site's
   own animation library can replay them for real on the exported theme. */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,[data-preloader],[data-loader],.intro-loader,.first-load,.cursor-loader,
.js-preloader,.site-preloader,.main-preloader,.preloader-active,.preloader-screen,
.loading-wrapper,.loading-wrap,.loading-mask,.loading-curtain,.loading-bg,.load-screen,
.barba-leave-active,.transition-overlay,.page-transition-overlay,.transition-screen,
.ajax-loader,.spinner-loader,.spinner-wrap,.wpte-force-remove {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html, body { overflow: auto !important; height: auto !important; }
body.is-loading, body.loading, body.page-loading, body.preload,
body.preloading, body.no-scroll, body.overflow-hidden,
html.is-loading, html.loading, html.page-loading, html.preload,
html.preloading, html.no-scroll, html.overflow-hidden { overflow: auto !important; height: auto !important; }



  #speed-toast {
    position: fixed;
    left: 50%;
    bottom: 25vh;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 12px 24px;
    border-radius: 20px;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 18px;
    font-weight: 500;
    z-index: 9999999999;
    transition: opacity 0.15s ease-in-out;
    opacity: 0;
    pointer-events: none;
  }



/* wp-theme-extractor: neutralize preloaders only — reveal/entrance-animation
   classes are intentionally NOT forced visible here anymore, so the site's
   own animation library can replay them for real on the exported theme. */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,[data-preloader],[data-loader],.intro-loader,.first-load,.cursor-loader,
.js-preloader,.site-preloader,.main-preloader,.preloader-active,.preloader-screen,
.loading-wrapper,.loading-wrap,.loading-mask,.loading-curtain,.loading-bg,.load-screen,
.barba-leave-active,.transition-overlay,.page-transition-overlay,.transition-screen,
.ajax-loader,.spinner-loader,.spinner-wrap,.wpte-force-remove {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html, body { overflow: auto !important; height: auto !important; }
body.is-loading, body.loading, body.page-loading, body.preload,
body.preloading, body.no-scroll, body.overflow-hidden,
html.is-loading, html.loading, html.page-loading, html.preload,
html.preloading, html.no-scroll, html.overflow-hidden { overflow: auto !important; height: auto !important; }



/* wp-theme-extractor: neutralize preloaders only — reveal/entrance-animation
   classes are intentionally NOT forced visible here anymore, so the site's
   own animation library can replay them for real on the exported theme. */
#preloader,#page-loader,#loader,#loading,.preloader,.page-loader,.site-loader,
.loader-wrap,.loader-wrapper,.loading-overlay,.loading-screen,.page-transition,
.pace,[data-preloader],[data-loader],.intro-loader,.first-load,.cursor-loader,
.js-preloader,.site-preloader,.main-preloader,.preloader-active,.preloader-screen,
.loading-wrapper,.loading-wrap,.loading-mask,.loading-curtain,.loading-bg,.load-screen,
.barba-leave-active,.transition-overlay,.page-transition-overlay,.transition-screen,
.ajax-loader,.spinner-loader,.spinner-wrap,.wpte-force-remove {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
html, body { overflow: auto !important; height: auto !important; }
body.is-loading, body.loading, body.page-loading, body.preload,
body.preloading, body.no-scroll, body.overflow-hidden,
html.is-loading, html.loading, html.page-loading, html.preload,
html.preloading, html.no-scroll, html.overflow-hidden { overflow: auto !important; height: auto !important; }
