/* Portable Traditional Chinese snapshot: retain original desktop design. */
html { color-scheme: light; }
body { font-family: Arial, "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", sans-serif; }
button, input, select { font-family: inherit; }
a:focus-visible, button:focus-visible, [tabindex]:focus-visible { outline: 3px solid #fe3355; outline-offset: 4px; }
.pc-wrap .swiper-wrap { position: relative; height: 400px; overflow: hidden; }
.gs-slides, .gs-slide { width: 100%; height: 100%; }
.gs-slide { display: none; align-items: center; justify-content: center; }
.gs-slide.is-active { display: flex; }
.gs-slide img { display: block; width: min(1080px, 100%); height: 100%; object-fit: contain; }
.swiper-wrap .swiper-button-prev, .swiper-wrap .swiper-button-next {
  position: absolute; top: 50%; margin: -24px 0 0; width: 48px; height: 48px;
  z-index: 5; padding: 0; border: 0; border-radius: 50%; background: rgba(0,0,0,.25);
  background-image: none; color: #fff; cursor: pointer; line-height: 48px; transform: none;
}
.swiper-wrap .swiper-button-prev { left: max(20px, calc((100% - 1240px) / 2)); }
.swiper-wrap .swiper-button-next { right: max(20px, calc((100% - 1240px) / 2)); }
.swiper-wrap .swiper-button-prev::after { content: "‹"; font-family: Arial, sans-serif; font-size: 36px; }
.swiper-wrap .swiper-button-next::after { content: "›"; font-family: Arial, sans-serif; font-size: 36px; }
.swiper-wrap .swiper-button-prev:hover, .swiper-wrap .swiper-button-next:hover { background: rgba(0,0,0,.55); }
.gs-slide-dots { position: absolute; bottom: 16px; left: 50%; transform: translateX(-50%); display: flex; gap: 7px; z-index: 5; }
.gs-slide-dot { width: 10px; height: 10px; padding: 0; border: 1px solid rgba(255,255,255,.8); border-radius: 50%; background: rgba(255,255,255,.5); cursor: pointer; }
.gs-slide-dot.is-active { width: 24px; border-radius: 10px; background: #fe3355; border-color: #fe3355; }
.qr-code > img { width: 100%; height: 100%; display: block; }
.books .book .cover { opacity: 1; }
.head-center-right .switch-language:focus-within .drop-box,
.head-center-right .switch-language.gs-open .drop-box,
.head-center-left .bar:focus-within .drop-box,
.head-center-left .bar.gs-open .drop-box { display: block; }
.gs-snapshot-note { font-size: 12px; line-height: 1.8; color: rgba(255,255,255,.65); text-align: center; margin: 14px 20px 0; }
@media (max-width: 1179px) {
  .head-box .head-center, .threetwo .threetwo-content, .footer .footer-content,
  .pc-container .pb, .pc-container .db-banner, .welcome .welcome-content {
    width: calc(100% - 48px) !important; max-width: 1080px; box-sizing: border-box;
  }
  .head-box .head-center { margin: 0 auto; }
  .head-box .head-center-left .bar { margin-right: 18px; }
  .head-box .head-center-right .head-center-search { width: 150px; }
  .head-box .head-center-right .flowing { margin-right: 16px; }
  .head-box .head-center-right .switch-language { margin-right: 16px; }
  .pc-container .welcome { min-width: 0; }
  .pc-wrap .footer { min-width: 0 !important; }
  .threetwo .books { gap: 20px; }
  .threetwo .books .book { width: calc((100% - 40px) / 3); margin: 0 0 10px !important; }
  .threetwo .books .book .info { width: auto; flex: 1; min-width: 0; }
  .pc-container .down-banner-home .down-banner-img { margin-left: 0; width: 220px; background-size: cover; }
  .pc-container .down-banner-home .down-banner-con { flex: 1; min-width: 0; }
  .pc-container .down-banner-home .down-banner-code { margin: 0 24px; }
}
@media (max-width: 950px) {
  .head-box .head-center { flex-wrap: wrap; height: auto; min-height: 64px; }
  .head-box .head-center-left { width: 100%; justify-content: space-between; }
  .head-box .head-center-right { width: 100%; height: 52px; justify-content: flex-end; }
  .head-box .head-center-right .head-center-search { flex: 1; width: auto; }
  .head-box .head-vis { height: 116px; }
  .head-box .head-center-left .bars { margin-left: 16px; }
  .threetwo .books .book { width: calc((100% - 20px) / 2); }
  .pc-container .down-banner-home .down-banner-img { display: none; }
  .pc-container .down-banner-home .down-banner-con { padding-left: 24px; }
  .download { display: none; }
}
@media (max-width: 600px) {
  .head-box .head-center, .threetwo .threetwo-content, .footer .footer-content,
  .pc-container .pb, .pc-container .db-banner, .welcome .welcome-content { width: calc(100% - 32px) !important; }
  .head-box .head-center-left .logo, .head-box .head-center-left .logo img { width: 110px; }
  .head-box .head-center-left .bars { margin-left: 10px !important; gap: 12px; }
  .head-box .head-center-left .bar { margin: 0 !important; padding: 0 !important; }
  .head-box .head-center-left .bar-item { font-size: 13px !important; white-space: nowrap; }
  .head-box .head-center-left .bar:last-child { display: none !important; }
  .head-box .head-center-right .flowing { margin-right: 12px; font-size: 13px; }
  .head-box .head-center-right .switch-language { margin-right: 12px; }
  .head-box .head-center-right .switch-language > span { font-size: 12px; }
  .head-box .head-center-right .login { min-width: 44px; padding: 6px 10px; font-size: 12px; }
  .head-box .head-center-right .head-center-search { margin-right: 12px; min-width: 68px; }
  .head-box .head-center-left .drop-box { left: auto; right: 0; }
  .pc-wrap .swiper-wrap { height: auto; aspect-ratio: 1080 / 400; }
  .swiper-wrap .swiper-button-prev, .swiper-wrap .swiper-button-next { width: 30px; height: 30px; margin-top: -15px; line-height: 30px; }
  .swiper-wrap .swiper-button-prev { left: 8px; }
  .swiper-wrap .swiper-button-next { right: 8px; }
  .swiper-wrap .swiper-button-prev::after, .swiper-wrap .swiper-button-next::after { font-size: 24px; }
  .gs-slide-dots { bottom: 8px; gap: 6px; }
  .gs-slide-dot { width: 7px; height: 7px; }
  .gs-slide-dot.is-active { width: 17px; }
  .pc-container .pb { min-height: 72px; padding: 12px !important; margin: 16px auto 24px; }
  .pc-container .pb .pb-img { display: none; }
  .pc-container .pb .pb-title { font-size: 13px; flex-wrap: wrap; height: auto; justify-content: flex-start; line-height: 1.6; padding-right: 8px; }
  .pc-container .pb .pb-title span { font-size: 19px; }
  .pc-container .pb .pb-btn { font-size: 12px; padding: 0 10px; height: 36px; flex-shrink: 0; }
  .threetwo .title h2 { font-size: 19px; }
  .threetwo .books { gap: 0; }
  .threetwo .books .book { width: 100%; margin-bottom: 20px !important; }
  .threetwo .books .book .cover-wrap { width: 102px; }
  .threetwo .books .book .info .book-name { font-size: 15px; max-height: 44px; }
  .threetwo .books .book .info p { height: 54px; }
  .pc-container .down-banner-home { height: auto; min-height: 168px; padding: 20px 0; }
  .pc-container .down-banner-home .down-banner-con { padding-left: 0; }
  .pc-container .down-banner-home .down-banner-title { font-size: 20px; line-height: 1.4; }
  .pc-container .down-banner-home .down-banner-desc { font-size: 12px; line-height: 1.8; }
  .pc-container .down-banner-home .down-banner-code { margin: 0 0 0 16px; width: 100px; flex-shrink: 0; }
  .pc-container .down-banner-home .qr-code-wrap { width: 96px !important; height: 96px !important; }
  .pc-container .down-banner-home .down-banner-code-text { width: 100px; font-size: 11px; line-height: 1.5; }
  .footer .footer-content { flex-wrap: wrap; gap: 30px 10px; }
  .footer .footer-content ul { width: calc(50% - 10px); }
  .footer .footer-content ul.wi { width: 100%; }
  .footer .footer-content ul.wi li:not(.title) { display: inline-block; margin-right: 12px; }
  .footer .footer-content ul li.title { font-size: 15px; margin-bottom: 14px; }
  .footer .footer-company { font-size: 11px; padding: 0 16px; line-height: 1.7; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
