/* ===== preflight: DUWAsK3H (原站) ===== */
*,
:before,
:after {
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
  border-color: var(--un-default-border-color, #e5e7eb)
}

:before,
:after {
  --un-content: ""
}

html,
:host {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", Segoe UI Symbol, "Noto Color Emoji";
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent
}

body {
  margin: 0;
  line-height: inherit
}

hr {
  height: 0;
  color: inherit;
  border-top-width: 1px
}

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit
}

a {
  color: inherit;
  text-decoration: inherit
}

b,
strong {
  font-weight: bolder
}

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
  font-feature-settings: normal;
  font-variation-settings: normal;
  font-size: 1em
}

small {
  font-size: 80%
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -.25em
}

sup {
  top: -.5em
}

table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin: 0;
  padding: 0
}

button,
select {
  text-transform: none
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none
}

:-moz-focusring {
  outline: auto
}

:-moz-ui-invalid {
  box-shadow: none
}

progress {
  vertical-align: baseline
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

summary {
  display: list-item
}

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0
}

fieldset {
  margin: 0;
  padding: 0
}

legend {
  padding: 0
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0
}

dialog {
  padding: 0
}

textarea {
  resize: vertical
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  opacity: 1;
  color: #9ca3af
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: #9ca3af
}

button,
[role=button] {
  cursor: pointer
}

:disabled {
  cursor: default
}

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  vertical-align: middle
}

img,
video {
  max-width: 100%;
  height: auto
}

[hidden]:where(:not([hidden=until-found])) {
  display: none
}

/* ===== utility: BP-FvODx (原站) ===== */
.pointer-events-none {
  pointer-events: none
}

.visible {
  visibility: visible
}

.absolute {
  position: absolute
}

.fixed {
  position: fixed
}

.relative {
  position: relative
}

.static {
  position: static
}

.inset-0 {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0
}

.-right-1 {
  right: -.01rem
}

.-top-3 {
  top: -.03rem
}

.bottom-52 {
  bottom: .52rem
}

.left-0 {
  left: 0
}

.left-20 {
  left: .2rem
}

.left-28 {
  left: .28rem
}

.right-0 {
  right: 0
}

.top-28 {
  top: .28rem
}

.top-302 {
  top: 3.02rem
}

.top-36 {
  top: .36rem
}

.z-1 {
  z-index: 1
}

.grid {
  display: grid
}

.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr))
}

.mx-auto {
  margin-left: auto;
  margin-right: auto
}

.ms {
  margin-inline-start: .04rem
}

.mt-20 {
  margin-top: .2rem
}

.mt-8 {
  margin-top: .08rem
}

.block {
  display: block
}

.hidden {
  display: none
}

.size-16 {
  width: .16rem;
  height: .16rem
}

.size-36 {
  width: .36rem;
  height: .36rem
}

.size-42 {
  width: .42rem;
  height: .42rem
}

.size-44 {
  width: .44rem;
  height: .44rem
}

.size-82 {
  width: .82rem;
  height: .82rem
}

.h-16 {
  height: .16rem
}

.h-20 {
  height: .2rem
}

.h-24 {
  height: .24rem
}

.h-28 {
  height: .28rem
}

.h-40 {
  height: .4rem
}

.h-448 {
  height: 4.48rem
}

.h-56 {
  height: .56rem
}

.h-58 {
  height: .58rem
}

.h-62 {
  height: .62rem
}

.h-72 {
  height: .72rem
}

.h-78 {
  height: .78rem
}

.h-86 {
  height: .86rem
}

.h-full {
  height: 100%
}

.min-h-screen {
  min-height: 100vh
}

.w-16 {
  width: .16rem
}

.w-24 {
  width: .24rem
}

.w-256 {
  width: 2.56rem
}

.w-271 {
  width: 2.71rem
}

.w-287 {
  width: 2.87rem
}

.w-3 {
  width: .03rem
}

.w-336 {
  width: 3.36rem
}

.w-343 {
  width: 3.43rem
}

.w-351 {
  width: 3.51rem
}

.w-375 {
  width: 3.75rem
}

.w-4 {
  width: .04rem
}

.w-4\/5 {
  width: 80%
}

.w-48 {
  width: .48rem
}

.w-58 {
  width: .58rem
}

.w-78 {
  width: .78rem
}

.w-87 {
  width: .87rem
}

.w-88 {
  width: .88rem
}

.w-full {
  width: 100%
}

.flex {
  display: flex
}

.flex-1 {
  flex: 1 1 0%
}

.flex-col {
  flex-direction: column
}

.flex-wrap {
  flex-wrap: wrap
}

.flex-nowrap {
  flex-wrap: nowrap
}

.transform {
  transform: translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))
}

.cursor-pointer {
  cursor: pointer
}

.items-end {
  align-items: flex-end
}

.items-center {
  align-items: center
}

.justify-end {
  justify-content: flex-end
}

.justify-center {
  justify-content: center
}

.justify-between {
  justify-content: space-between
}

.gap-10 {
  gap: .1rem
}

.gap-12 {
  gap: .12rem
}

.gap-14 {
  gap: .14rem
}

.gap-18 {
  gap: .18rem
}

.gap-2 {
  gap: .02rem
}

.gap-4 {
  gap: .04rem
}

.gap-5 {
  gap: .05rem
}

.gap-6 {
  gap: .06rem
}

.gap-8 {
  gap: .08rem
}

.gap-9 {
  gap: .09rem
}

.overflow-hidden {
  overflow: hidden
}

.overflow-x-hidden {
  overflow-x: hidden
}

.whitespace-nowrap {
  white-space: nowrap
}

.border {
  border-width: 1px
}

.border-\[\#21364e\] {
  --un-border-opacity: 1;
  border-color: rgb(33 54 78 / var(--un-border-opacity))
}

.border-\[rgba\(100\,225\,210\,0\.30\)\] {
  --un-border-opacity: .3;
  border-color: rgba(100, 225, 210, var(--un-border-opacity))
}

.border-\[rgba\(221\,251\,255\,0\.22\)\] {
  --un-border-opacity: .22;
  border-color: rgba(221, 251, 255, var(--un-border-opacity))
}

.border-\[rgba\(255\,255\,255\,0\.45\)\] {
  --un-border-opacity: .45;
  border-color: rgba(255, 255, 255, var(--un-border-opacity))
}

.border-\[rgba\(255\,255\,255\,0\.55\)\] {
  --un-border-opacity: .55;
  border-color: rgba(255, 255, 255, var(--un-border-opacity))
}

.border-\[rgba\(255\,255\,255\,0\.82\)\] {
  --un-border-opacity: .82;
  border-color: rgba(255, 255, 255, var(--un-border-opacity))
}

.rounded-10 {
  border-radius: .1rem
}

.rounded-11 {
  border-radius: .11rem
}

.rounded-12 {
  border-radius: .12rem
}

.rounded-14 {
  border-radius: .14rem
}

.rounded-16 {
  border-radius: .16rem
}

.rounded-19 {
  border-radius: .19rem
}

.rounded-2 {
  border-radius: .02rem
}

.rounded-20 {
  border-radius: .2rem
}

.rounded-26 {
  border-radius: .26rem
}

.rounded-28 {
  border-radius: .28rem
}

.rounded-8 {
  border-radius: .08rem
}

.rounded-full {
  border-radius: 9999px
}

.bg-\[rgba\(255\,255\,255\,0\.06\)\] {
  --un-bg-opacity: .06;
  background-color: rgba(255, 255, 255, var(--un-bg-opacity))
}

.bg-\[rgba\(255\,255\,255\,0\.96\)\] {
  --un-bg-opacity: .96;
  background-color: rgba(255, 255, 255, var(--un-bg-opacity))
}

.object-cover {
  -o-object-fit: cover;
  object-fit: cover
}

.p-20 {
  padding: .2rem
}

.px-11 {
  padding-left: .11rem;
  padding-right: .11rem
}

.px-12 {
  padding-left: .12rem;
  padding-right: .12rem
}

.px-16 {
  padding-left: .16rem;
  padding-right: .16rem
}

.pb-11 {
  padding-bottom: .11rem
}

.pb-13 {
  padding-bottom: .13rem
}

.pb-28 {
  padding-bottom: .28rem
}

.pb-8 {
  padding-bottom: .08rem
}

.pl-11 {
  padding-left: .11rem
}

.pr-13 {
  padding-right: .13rem
}

.pt-11 {
  padding-top: .11rem
}

.pt-12 {
  padding-top: .12rem
}

.text-center {
  text-align: center
}

.text-12 {
  font-size: .12rem
}

.text-13 {
  font-size: .13rem
}

.text-14 {
  font-size: .14rem
}

.text-15 {
  font-size: .15rem
}

.text-16 {
  font-size: .16rem
}

.text-23 {
  font-size: .23rem
}

.text-\[\#92a8ff\] {
  --un-text-opacity: 1;
  color: rgb(146 168 255 / var(--un-text-opacity))
}

.text-\[\#93a6be\] {
  --un-text-opacity: 1;
  color: rgb(147 166 190 / var(--un-text-opacity))
}

.text-\[\#9aa9be\] {
  --un-text-opacity: 1;
  color: rgb(154 169 190 / var(--un-text-opacity))
}

.text-\[\#bfeee6\] {
  --un-text-opacity: 1;
  color: rgb(191 238 230 / var(--un-text-opacity))
}

.text-\[\#c7d5e6\] {
  --un-text-opacity: 1;
  color: rgb(199 213 230 / var(--un-text-opacity))
}

.text-\[\#dce7f5\] {
  --un-text-opacity: 1;
  color: rgb(220 231 245 / var(--un-text-opacity))
}

.text-\[\#e6eefc\] {
  --un-text-opacity: 1;
  color: rgb(230 238 252 / var(--un-text-opacity))
}

.text-\[\#eaf1ff\] {
  --un-text-opacity: 1;
  color: rgb(234 241 255 / var(--un-text-opacity))
}

.text-\[\#eef5ff\] {
  --un-text-opacity: 1;
  color: rgb(238 245 255 / var(--un-text-opacity))
}

.text-\[\#f0f6ff\] {
  --un-text-opacity: 1;
  color: rgb(240 246 255 / var(--un-text-opacity))
}

.text-\[\#f4f8ff\] {
  --un-text-opacity: 1;
  color: rgb(244 248 255 / var(--un-text-opacity))
}

.text-\[\#f7fbff\] {
  --un-text-opacity: 1;
  color: rgb(247 251 255 / var(--un-text-opacity))
}

.text-white {
  --un-text-opacity: 1;
  color: rgb(255 255 255 / var(--un-text-opacity))
}

.font-bold {
  font-weight: 700
}

.font-medium {
  font-weight: 500
}

.font-semibold {
  font-weight: 600
}

.leading-none {
  line-height: 1
}

.leading-normal {
  line-height: 1.5
}

.no-underline {
  text-decoration: none
}

.opacity-40 {
  opacity: .4
}

.opacity-50 {
  opacity: .5
}

.filter {
  filter: var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia)
}

.backdrop-filter {
  -webkit-backdrop-filter: var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);
  backdrop-filter: var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia)
}

.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.ease-in-out {
  transition-timing-function: cubic-bezier(.4, 0, .2, 1)
}

html {
  font-size: calc(100vw / 375 * 100);
  background: #091522
}

@media (min-width: 750px) {
  html {
    font-size: 100px
  }

  html body {
    width: 375px;
    margin: 0 auto
  }
}

body {
  font-size: 12px
}

:root {
  --t26-ease: cubic-bezier(.4, 0, .2, 1);
  --t26-rise-duration: .38s
}

@keyframes t26-rise {
  0% {
    opacity: 0;
    transform: translateY(.1rem)
  }

  to {
    opacity: 1;
    transform: translateY(0)
  }
}

.t26-rise {
  animation: t26-rise var(--t26-rise-duration) var(--t26-ease) both
}

@keyframes t26-fade-in {
  0% {
    opacity: 0
  }

  to {
    opacity: 1
  }
}

.t26-fade-in {
  animation: t26-fade-in var(--t26-rise-duration) var(--t26-ease) both
}

.t26-stagger>* {
  animation: t26-rise var(--t26-rise-duration) var(--t26-ease) both
}

.t26-stagger>*:nth-child(1) {
  animation-delay: 60ms
}

.t26-stagger>*:nth-child(2) {
  animation-delay: .13s
}

.t26-stagger>*:nth-child(3) {
  animation-delay: .2s
}

.t26-stagger>*:nth-child(n+4) {
  animation-delay: .27s
}

.t26-dot {
  display: block;
  width: .07rem;
  height: .07rem;
  border-radius: 50%;
  animation: t26-dot-pulse 1.2s ease-in-out infinite
}

.t26-dot:nth-child(1) {
  background: #2bd6c2
}

.t26-dot:nth-child(2) {
  background: #5a92e8;
  animation-delay: .16s
}

.t26-dot:nth-child(3) {
  background: #786ff0;
  animation-delay: .32s
}

@keyframes t26-dot-pulse {

  0%,
  80%,
  to {
    opacity: .28;
    transform: scale(.78)
  }

  40% {
    opacity: 1;
    transform: scale(1)
  }
}

@media (prefers-reduced-motion: reduce) {

  .t26-rise,
  .t26-stagger>* {
    animation-name: t26-fade;
    animation-duration: .12s;
    animation-delay: 0ms
  }

  .t26-dot {
    animation: none;
    opacity: .6
  }

  @keyframes t26-fade {
    0% {
      opacity: 0
    }

    to {
      opacity: 1
    }
  }
}

/* ===== 页面补充样式 ===== */
/* 页面补充样式：原站 CSS 未覆盖、但布局必需 / 模拟 loading 的少量规则 */
body {
  background: #091522;
}

.grid-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* 进入页面 loading 遮罩（静态页无接口，模拟原站 t26-dot 加载效果） */
#page-loading {
  background: rgba(9, 21, 34, 0.62);
  transition: opacity 0.35s ease;
  z-index: 99;
}
/* ===== 加密图片解密前后显隐 ===== */
img[data-encrypted-src]{opacity:0;vertical-align:middle}
img[data-encrypted-src].img-loaded{opacity:1;transition:opacity .35s ease}
img[data-encrypted-src].img-error{opacity:0 !important}
