/* 第一眼 v1.9.16 代码收敛版：styles-layout.css
 * 源文件按既有加载顺序合并；仅删除完全相同的重复规则，不改变冲突规则的级联顺序。
 */

/* ===== source: styles-v1320.css ===== */
/* 第一眼 v1.3.20 — brand identity refresh
   Website/mobile use the color master symbol; the dark rounded icon is reserved for a future app. */

:root {
  --fs20-brand-ink: #111113;
  --fs20-brand-orange: #ff4b24;
  --fs20-brand-blue: #1747ee;
  --fs20-brand-paper: #fbf5ea;
}

.fs20-brand-lockup,
.fs20-auth-lockup {
  display: inline-flex;
  align-items: center;
  color: var(--fs20-brand-ink);
}

.fs20-brand-lockup {
  justify-content: flex-start;
  gap: 9px;
}

.fs20-brand-mark {
  position: relative;
  display: inline-block;
  flex: 0 0 auto;
  overflow: hidden;
  background: var(--fs20-brand-paper);
  border-radius: 6px;
  isolation: isolate;
}

.fs20-brand-mark img {
  position: absolute;
  inset: 50% auto auto 50%;
  width: 132%;
  height: 132%;
  max-width: none;
  object-fit: cover;
  transform: translate(-50%, -50%);
  mix-blend-mode: multiply;
  user-select: none;
  pointer-events: none;
}

.fs20-brand-word {
  display: inline-block;
  color: var(--fs20-brand-ink);
  font-family: "Noto Sans SC", "Microsoft YaHei", sans-serif;
  font-weight: 900;
  letter-spacing: -.055em;
  white-space: nowrap;
}

/* Desktop official-site header */
.brand.fs20-brand-lockup {
  width: 142px;
  height: 48px;
  flex-basis: 142px;
  padding: 0;
  background: transparent;
}

.brand.fs20-brand-lockup .fs20-brand-mark {
  width: 45px;
  height: 31px;
}

.brand.fs20-brand-lockup .fs20-brand-word {
  font-size: 22px;
  line-height: 1;
}

/* Auth surfaces */
.auth-shell > aside .fs20-auth-lockup {
  position: relative;
  z-index: 3;
  gap: 12px;
  height: 54px;
}

.fs20-auth-lockup .fs20-brand-mark {
  width: 58px;
  height: 42px;
  border-radius: 8px;
}

.fs20-auth-lockup .fs20-brand-word {
  font-size: 29px;
}

.auth-shell > aside .fs20-auth-lockup + h1 {
  margin-top: 28px;
}

/* Mobile high-design headers */
@media (max-width: 1023px) {
  .fs19-brand.fs20-brand-lockup,
  .fs19-mine-brand.fs20-brand-lockup {
    gap: 7px;
  }

  .fs19-brand.fs20-brand-lockup .fs20-brand-mark,
  .fs19-mine-brand.fs20-brand-lockup .fs20-brand-mark {
    width: 35px;
    height: 25px;
    border-radius: 5px;
  }

  .fs19-brand.fs20-brand-lockup .fs20-brand-word,
  .fs19-mine-brand.fs20-brand-lockup .fs20-brand-word {
    font-size: 17px;
    line-height: 1;
    letter-spacing: -.05em;
  }
}

@media (max-width: 700px) {
  .brand.fs20-brand-lockup {
    width: 116px;
    height: 38px;
    flex-basis: 116px;
    gap: 7px;
  }

  .brand.fs20-brand-lockup .fs20-brand-mark {
    width: 36px;
    height: 25px;
  }

  .brand.fs20-brand-lockup .fs20-brand-word {
    font-size: 18px;
  }
}

/* Standalone mobile preview */
.preview-brand__mark.fs20-preview-mark {
  width: 44px;
  height: 31px;
  border-radius: 6px;
  background: var(--fs20-brand-paper);
  overflow: hidden;
}

.preview-brand__mark.fs20-preview-mark::after {
  content: none;
}

.preview-brand__mark.fs20-preview-mark img {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 132%;
  height: 132%;
  object-fit: cover;
  transform: translate(-50%, -50%);
  mix-blend-mode: multiply;
}

@media (prefers-reduced-motion: no-preference) {
  .fs20-brand-lockup .fs20-brand-mark {
    transition: transform .22s ease, filter .22s ease;
  }

  .fs20-brand-lockup:hover .fs20-brand-mark {
    transform: translateY(-1px);
    filter: saturate(1.08);
  }
}



/* ===== source: styles-v1321.css ===== */
/* 第一眼 v1.3.21 — fluid profile glass + mobile safety */

@media (max-width: 1023px) {
  /* Mobile headers keep only the transparent eye symbol. */
  .brand.fs20-brand-lockup,
  .fs19-brand.fs20-brand-lockup,
  .fs19-mine-brand.fs20-brand-lockup {
    width: 42px;
    height: 38px;
    flex: 0 0 42px;
    gap: 0;
    padding: 0;
    background: transparent !important;
  }

  .brand.fs20-brand-lockup .fs20-brand-word,
  .fs19-brand.fs20-brand-lockup .fs20-brand-word,
  .fs19-mine-brand.fs20-brand-lockup .fs20-brand-word {
    display: none;
  }

  .brand.fs20-brand-lockup .fs20-brand-mark,
  .fs19-brand.fs20-brand-lockup .fs20-brand-mark,
  .fs19-mine-brand.fs20-brand-lockup .fs20-brand-mark {
    width: 40px;
    height: 32px;
    overflow: visible;
    border-radius: 0;
    background: transparent;
  }

  .brand.fs20-brand-lockup .fs20-brand-mark img,
  .fs19-brand.fs20-brand-lockup .fs20-brand-mark img,
  .fs19-mine-brand.fs20-brand-lockup .fs20-brand-mark img {
    content: url("assets/brand/first-sight-symbol-transparent.png");
    position: static;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform: none;
    mix-blend-mode: normal;
  }

  /* Profile: replace the hard bright-blue oval with a restrained deep-sea glass droplet. */
  .fs19-profile-glass {
    width: min(56vw, 220px);
    min-height: 132px;
    padding: 18px 18px 16px 20px;
    left: -7px;
    bottom: 30px;
    border: 1px solid rgba(123, 188, 255, .52);
    border-radius: 55% 45% 58% 42% / 49% 58% 42% 51%;
    background:
      radial-gradient(ellipse at 27% 16%, rgba(156, 218, 255, .26) 0 12%, rgba(79, 158, 255, .09) 24%, transparent 41%),
      radial-gradient(ellipse at 81% 78%, rgba(20, 105, 245, .2), transparent 47%),
      linear-gradient(145deg, rgba(2, 20, 62, .84), rgba(4, 56, 132, .63) 52%, rgba(1, 13, 44, .83));
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, .42),
      inset -18px -24px 42px rgba(0, 13, 47, .3),
      0 0 0 1px rgba(32, 112, 255, .11),
      0 18px 42px rgba(0, 22, 71, .3),
      0 0 30px rgba(30, 108, 255, .15);
    backdrop-filter: blur(18px) saturate(1.2);
    -webkit-backdrop-filter: blur(18px) saturate(1.2);
  }

  .fs19-profile-glass::before {
    width: 128px;
    height: 54px;
    left: 23px;
    top: -27px;
    transform: rotate(-9deg);
    background: linear-gradient(180deg, rgba(255, 255, 255, .3), rgba(144, 211, 255, .08));
    filter: blur(.2px);
  }

  .fs19-profile-glass::after {
    content: "";
    position: absolute;
    inset: 7px;
    border: 1px solid rgba(156, 215, 255, .11);
    border-radius: inherit;
    pointer-events: none;
  }

  .fs19-profile-orbit {
    width: 158px;
    height: 158px;
    right: -74px;
    top: -17px;
    border-color: rgba(145, 207, 255, .19);
    box-shadow:
      0 0 0 13px rgba(88, 161, 255, .026),
      0 0 26px rgba(50, 127, 255, .08);
  }

  .fs19-profile-glass > div {
    width: min(100%, 184px);
  }

  .fs19-profile-glass > div > small {
    color: rgba(202, 229, 255, .64);
    font-size: 7px;
    letter-spacing: .16em;
  }

  .fs19-profile-glass h1 {
    margin-top: 6px;
    max-width: 176px;
    overflow: hidden;
    color: #fff;
    font-size: clamp(22px, 6.3vw, 27px);
    line-height: 1.02;
    letter-spacing: -.045em;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-shadow: 0 5px 18px rgba(0, 16, 56, .32);
  }

  .fs19-profile-glass p {
    margin-top: 7px;
    max-width: 180px;
    gap: 4px 6px;
    color: rgba(231, 243, 255, .76);
    font-size: 8px;
    line-height: 1.35;
  }

  .fs19-profile-glass .fs19-pm-verified {
    color: #fff;
    font-size: 8px;
  }

  .fs19-profile-glass .fs19-pm-verified svg {
    width: 12px;
    height: 12px;
    color: #83bfff;
    filter: drop-shadow(0 0 5px rgba(86, 164, 255, .4));
  }

  .fs19-profile-glass em {
    margin-top: 7px;
    max-width: 155px;
    padding: 4px 9px;
    overflow: hidden;
    border-color: rgba(188, 224, 255, .18);
    color: rgba(241, 248, 255, .86);
    background: rgba(172, 218, 255, .08);
    font-size: 8px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  /* Profile interaction bar: preserve all three actions on narrow screens. */
  .fs19-profile-actions {
    min-height: 74px;
    padding: 8px max(9px, env(safe-area-inset-left)) 9px max(9px, env(safe-area-inset-right));
    grid-template-columns: minmax(70px, .8fr) minmax(84px, .96fr) minmax(126px, 1.45fr);
    gap: 6px;
  }

  .fs19-profile-actions button {
    min-height: 52px;
    padding-inline: clamp(6px, 2vw, 10px);
    gap: 6px;
    font-size: clamp(9px, 2.7vw, 11px);
    white-space: nowrap;
  }

  .fs19-profile-actions .is-connect span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  /* Ranking filter: viewport-safe sheet with its own scrolling surface. */
  html.fs21-rank-filter-open,
  html.fs21-rank-filter-open body {
    overflow: hidden !important;
    overscroll-behavior: none;
  }

  

  .fs19r-filter-panel {
    max-height: calc(100dvh - 76px - env(safe-area-inset-top));
    padding: 0 18px calc(20px + env(safe-area-inset-bottom));
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(119, 166, 255, .4) transparent;
    touch-action: pan-y;
  }

  .fs19r-filter-panel::-webkit-scrollbar {
    width: 4px;
  }

  .fs19r-filter-panel::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(119, 166, 255, .4);
  }

  .fs19r-filter-panel > header {
    min-height: 78px;
    margin: 0 -18px;
    padding: 15px 18px 10px;
    position: sticky;
    top: 0;
    z-index: 3;
    background: linear-gradient(180deg, rgba(22, 24, 29, .99) 0 74%, rgba(22, 24, 29, .9) 88%, transparent);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
  }

  .fs19r-filter-panel > header::before {
    content: "";
    width: 34px;
    height: 3px;
    border-radius: 999px;
    position: absolute;
    left: 50%;
    top: 7px;
    background: rgba(255, 255, 255, .2);
    transform: translateX(-50%);
  }

  /* Rating page: allow real vertical scrolling and keep the confirm action above navigation. */
  html[data-v1319-rating-page="true"] {
    scroll-padding-bottom: calc(98px + env(safe-area-inset-bottom));
  }

  html[data-v1319-rating-page="true"] body {
    overflow-y: auto !important;
    overscroll-behavior-y: auto;
  }

  html[data-v1319-rating-page="true"] .main {
    padding-bottom: calc(98px + env(safe-area-inset-bottom)) !important;
  }

  .v1319-mobile-rating {
    overflow: visible;
  }

  .fs19r-drawer {
    padding-bottom: calc(24px + env(safe-area-inset-bottom));
  }

  .fs19r-submit {
    scroll-margin-bottom: calc(88px + env(safe-area-inset-bottom));
  }
}

@media (max-width: 374px) {
  .fs19-profile-glass {
    width: min(57vw, 210px);
    min-height: 126px;
    padding: 16px 16px 14px 18px;
    bottom: 27px;
  }

  .fs19-profile-glass h1 {
    font-size: 23px;
  }

  .fs19-profile-actions {
    grid-template-columns: minmax(66px, .76fr) minmax(80px, .92fr) minmax(118px, 1.4fr);
    gap: 5px;
  }

  .fs19-profile-actions button {
    padding-inline: 5px;
    gap: 4px;
    font-size: 9px;
  }

  .fs19-profile-actions button svg {
    width: 16px;
    height: 16px;
  }
}

@media (max-width: 390px) and (max-height: 760px) {
  .v1319-mobile-rating {
    transform: none !important;
  }

  .fs19r-stage {
    height: 330px;
  }

  .fs19r-photo-orbit {
    top: 8px;
    width: min(88vw, 324px);
  }

  .fs19r-score-readout strong {
    font-size: 52px;
  }

  .fs19r-drawer {
    padding-top: 17px;
    padding-bottom: calc(96px + env(safe-area-inset-bottom));
  }

  .fs19r-tag {
    min-height: 36px !important;
  }

  .fs19r-submit {
    position: fixed;
    left: 14px;
    right: 14px;
    width: auto !important;
    bottom: calc(104px + env(safe-area-inset-bottom));
    z-index: 8;
    box-shadow:
      0 15px 32px rgba(0, 0, 0, .42),
      0 0 0 1px rgba(255, 255, 255, .08);
  }
}

@media (min-width: 431px) and (max-width: 1023px) {
  .fs19-profile-glass {
    width: 220px;
    left: 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .fs19-profile-glass,
  .fs19r-filter-panel {
    transition: none !important;
  }
}


/* ===== source: styles-v1324.css ===== */
/* 第一眼 v1.3.24：城市榜筛选、统一收益中心、动态定位与可见范围 */

.post-visibility-badge{
  display:inline-flex;
  align-items:center;
  margin-left:5px;
  padding:2px 6px;
  border:1px solid rgba(113,98,91,.16);
  border-radius:999px;
  color:#766861;
  background:rgba(255,255,255,.72);
  font-size:9px;
  line-height:1.2;
  vertical-align:middle;
}
.post-visibility-badge.followers{color:#6a5a99;background:#f1edff}
.post-visibility-badge.private{color:#8b6547;background:#fff3df}

.publish-location-picker{
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr) auto;
  align-items:center;
  gap:8px!important;
  height:50px!important;
  padding:0 8px 0 12px!important;
}
.publish-location-picker>img{width:20px!important;height:20px!important;opacity:.78}
.publish-location-picker>input{min-width:0;color:#5e5551}
.publish-location-picker>button{
  height:34px;
  padding:0 14px;
  border:0;
  border-radius:10px;
  color:#fff;
  background:linear-gradient(135deg,#2165ff,#5790ff);
  font-weight:700;
  cursor:pointer;
}
.publish-location-status{
  margin-top:-8px;
  padding:9px 11px;
  border-radius:11px;
  color:#7d746f;
  background:#f7f5f2;
  font-size:10px;
  line-height:1.45;
}

.settings-revenue-center>header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:22px;
  border-radius:20px;
  color:#fff;
  background:linear-gradient(135deg,#111722,#1d2e58 64%,#2165ff);
  box-shadow:0 18px 42px rgba(25,52,111,.18);
}
.settings-revenue-center>header span{font-size:11px;opacity:.72}
.settings-revenue-center>header h2{margin:7px 0 4px;font-size:31px}
.settings-revenue-center>header h2 small{font-size:12px;font-weight:500;opacity:.7}
.settings-revenue-center>header p{margin:0;color:rgba(255,255,255,.7);font-size:11px}
.settings-revenue-types{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.settings-revenue-types article{
  padding:18px;
  border:1px solid #e8e2dd;
  border-radius:17px;
  background:linear-gradient(180deg,#fff,#fbfaf8);
}
.settings-revenue-types span,.settings-revenue-types small{display:block;color:#8b8079;font-size:11px}
.settings-revenue-types strong{display:block;margin:7px 0;color:#342f2c;font-size:24px}
.settings-revenue-policy{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  padding:14px;
  border-radius:16px;
  background:#f5f7fb;
}
.settings-revenue-policy span{display:grid;gap:4px;color:#7c7f88;font-size:10px}
.settings-revenue-policy b{color:#1e2d4f;font-size:16px}
.settings-revenue-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
.settings-revenue-note{margin:12px 0 0;color:#928983;font-size:10px;line-height:1.6}

@media (max-width:1023px){
  .fs24r-filter-summary{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    margin:10px 0 12px;
  }
  .fs24r-filter-summary>button{
    min-width:0;
    height:40px;
    padding:0 12px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:14px;
    color:#fff;
    background:rgba(255,255,255,.055);
    display:flex;
    align-items:center;
    gap:7px;
    text-align:left;
  }
  .fs24r-filter-summary>button>span{color:#6e9bff;font-size:17px}
  .fs24r-filter-summary>button>b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
  .fs24r-filter-summary>button>small{margin-left:auto;color:rgba(255,255,255,.48);font-size:9px;white-space:nowrap}
  .fs24r-gender-tabs{display:flex;gap:4px;padding:4px;border-radius:13px;background:rgba(255,255,255,.055)}
  .fs24r-gender-tabs button{
    height:32px;
    min-width:45px;
    padding:0 8px;
    border:0;
    border-radius:10px;
    color:rgba(255,255,255,.54);
    background:transparent;
    font-size:10px;
    font-weight:700;
  }
  .fs24r-gender-tabs button.active{color:#fff;background:#2165ff}

  .fs19r-filter-panel{
    max-height:min(82dvh,700px);
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .fs19r-filter-panel .fs24r-location-section{margin-top:16px}
  .fs19r-filter-panel .fs24r-location-section>p{margin:7px 0 0;color:rgba(255,255,255,.5);font-size:10px}
  .fs19r-filter-panel .fs24r-location-section>p b{color:#fff}
  .fs19r-filter-panel .fs24r-city-search{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:7px;
    margin-top:9px;
  }
  .fs19r-filter-panel .fs24r-city-search input{
    min-width:0;
    height:44px;
    padding:0 12px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:13px;
    outline:0;
    color:#fff;
    background:rgba(255,255,255,.055);
    font-size:12px;
  }
  .fs19r-filter-panel .fs24r-city-search button{
    width:auto;
    padding:0 13px;
    border-color:#346fff;
    color:#fff;
    background:#245bf0;
    white-space:nowrap;
  }
  .fs19r-filter-panel .fs24r-popular-cities{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:5px;
    margin-top:8px;
  }
  .fs19r-filter-panel .fs24r-popular-cities button{
    height:32px;
    padding:0 3px;
    border-radius:10px;
    font-size:9px;
  }
  .fs19r-filter-panel section:nth-of-type(2)>div{grid-template-columns:repeat(4,minmax(0,1fr))}
  .fs19r-filter-panel section:nth-of-type(3)>div{grid-template-columns:repeat(3,minmax(0,1fr))}

  .settings-page .settings-nav{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    overflow:visible!important;
    padding:9px!important;
  }
  .settings-page .settings-nav button{
    min-width:0!important;
    width:100%;
    height:46px;
    padding:0 9px;
  }
  .settings-page .settings-nav img{width:20px;height:20px}

  .admin-page .admin-nav{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
    overflow:visible!important;
    padding:9px!important;
  }
  .admin-page .admin-nav button{
    min-width:0!important;
    width:100%;
    height:42px;
    padding:0 6px;
    text-align:center;
    font-size:10px;
  }
  .admin-page .admin-config-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media (max-width:560px){
  .fs24r-filter-summary{grid-template-columns:1fr}
  .fs24r-gender-tabs{display:grid;grid-template-columns:repeat(3,1fr)}
  .fs24r-gender-tabs button{width:100%}
  .fs19r-filter-panel .fs24r-popular-cities{grid-template-columns:repeat(3,minmax(0,1fr))}
  .settings-revenue-center>header{align-items:flex-start;flex-direction:column;padding:18px}
  .settings-revenue-center>header .btn{width:100%}
  .settings-revenue-types{grid-template-columns:1fr}
  .settings-revenue-policy{grid-template-columns:1fr 1fr}
  .settings-revenue-policy span:last-child{grid-column:1/-1}
  .settings-revenue-actions{display:grid;grid-template-columns:1fr 1fr}
  .settings-revenue-actions .btn{width:100%;min-width:0;padding:0 8px}
  .admin-page .admin-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-page .admin-config-grid{grid-template-columns:1fr!important}
}


/* ===== source: styles-v1325.css ===== */
/* 第一眼 v1.3.25 — mobile splash, transparent auth logo and editable avatar */

.fs25-auth-brand {
  position: relative;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.fs25-auth-brand img {
  width: 62px;
  height: 45px;
  display: block;
  object-fit: contain;
  background: transparent;
  filter: drop-shadow(0 8px 13px rgba(26, 34, 62, .12));
}

.fs25-auth-brand b {
  color: #101216;
  font-size: 29px;
  font-weight: 900;
  letter-spacing: -.06em;
}

.fs20-brand-mark,
.fs20-preview-mark {
  background: transparent !important;
}

.fs20-brand-mark img,
.fs20-preview-mark img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  mix-blend-mode: normal !important;
}

.crop-stage {
  cursor: grab;
  touch-action: none;
  user-select: none;
}

.crop-stage.is-dragging {
  cursor: grabbing;
}

.crop-stage.is-dragging > img {
  transition: none;
}

@media (max-width: 1023px) {
  .fs25-editable-avatar {
    cursor: pointer;
    object-position: var(--fs-avatar-x, 50%) var(--fs-avatar-y, 34%) !important;
    transform: scale(var(--fs-avatar-zoom, 1));
    transform-origin: center;
    transition: filter .2s ease, transform .2s ease;
  }

  .fs25-editable-avatar:active {
    filter: saturate(.96) brightness(.9);
  }

  .fs25-avatar-hint {
    position: absolute;
    left: 17px;
    top: 326px;
    z-index: 4;
    min-width: 118px;
    padding: 8px 11px;
    border: 1px solid rgba(255, 255, 255, .62);
    border-radius: 13px;
    color: #fff;
    background: rgba(8, 21, 48, .58);
    box-shadow: 0 10px 30px rgba(12, 37, 80, .18);
    backdrop-filter: blur(13px);
    -webkit-backdrop-filter: blur(13px);
    text-align: left;
  }

  .fs25-avatar-hint span,
  .fs25-avatar-hint small {
    display: block;
  }

  .fs25-avatar-hint span {
    font-size: 11px;
    font-weight: 800;
  }

  .fs25-avatar-hint small {
    margin-top: 2px;
    color: rgba(255, 255, 255, .75);
    font-size: 8px;
  }
}

@media (max-width: 700px) {
  html[data-fs25-auth="true"],
  html[data-fs25-auth="true"] body {
    min-height: 100%;
    background: #050a13;
  }

  

  html[data-fs25-auth="true"] .main {
    width: 100%;
    min-height: 100svh;
    padding: 0;
  }

  html[data-fs25-auth="true"] .auth-page {
    min-height: 100svh;
    margin: 0;
    padding: 0;
  }

  html[data-fs25-auth="true"] .auth-shell {
    min-height: 100svh;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: hidden;
    color: #f8fbff;
    background:
      radial-gradient(circle at 12% 68%, rgba(24, 100, 255, .16), transparent 31%),
      linear-gradient(180deg, #07101f 0%, #050a13 100%);
  }

  html[data-fs25-auth="true"] .auth-shell > aside {
    height: 238px;
    padding: max(30px, env(safe-area-inset-top)) 25px 22px;
    overflow: hidden;
    color: #fff;
    background:
      radial-gradient(circle at 82% 5%, rgba(68, 145, 255, .48), transparent 35%),
      linear-gradient(150deg, #07101d 0%, #061735 56%, #082d70 100%);
    isolation: isolate;
  }

  html[data-fs25-auth="true"] .auth-shell > aside::before {
    content: "";
    width: 240px;
    height: 168px;
    position: absolute;
    right: -30px;
    top: 24px;
    z-index: -1;
    border: 1px solid rgba(136, 191, 255, .68);
    border-radius: 59% 41% 53% 47% / 46% 39% 61% 54%;
    background:
      radial-gradient(circle at 35% 24%, rgba(255, 255, 255, .82), transparent 5%),
      radial-gradient(circle at 38% 30%, rgba(78, 164, 255, .74), rgba(20, 92, 247, .62) 38%, rgba(3, 27, 82, .72) 74%);
    box-shadow:
      inset 18px 17px 30px rgba(163, 212, 255, .2),
      inset -25px -23px 38px rgba(0, 14, 57, .42),
      0 28px 55px rgba(0, 35, 118, .42),
      0 0 0 16px rgba(26, 94, 235, .045);
    transform: rotate(-10deg);
  }

  html[data-fs25-auth="true"] .auth-shell > aside::after {
    content: "";
    width: 14px;
    height: 14px;
    position: absolute;
    right: 32px;
    top: 42px;
    z-index: -1;
    border: 1px solid rgba(173, 213, 255, .7);
    border-radius: 50%;
    background: rgba(45, 127, 255, .42);
    box-shadow:
      -26px 96px 0 -3px rgba(68, 151, 255, .65),
      19px 122px 0 -5px rgba(151, 204, 255, .7);
  }

  html[data-fs25-auth="true"] .auth-scene {
    display: none;
  }

  html[data-fs25-auth="true"] .fs25-auth-brand {
    position: relative;
    z-index: 3;
    color: #fff;
  }

  html[data-fs25-auth="true"] .fs25-auth-brand img {
    width: 39px;
    height: 28px;
    filter: brightness(0) invert(1) drop-shadow(0 7px 14px rgba(0, 0, 0, .22));
  }

  html[data-fs25-auth="true"] .fs25-auth-brand b {
    color: #fff;
    font-size: 18px;
    letter-spacing: .02em;
  }

  html[data-fs25-auth="true"] .auth-shell > aside h1 {
    max-width: 250px;
    margin: 69px 0 7px;
    position: relative;
    z-index: 2;
    color: #fff;
    font-family: "Noto Serif SC", "Songti SC", STSong, serif;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: -.035em;
    text-shadow: 0 8px 22px rgba(0, 0, 0, .24);
  }

  html[data-fs25-auth="true"] .auth-shell > aside p {
    max-width: 255px;
    margin: 0;
    position: relative;
    z-index: 2;
    color: rgba(230, 240, 255, .7);
    font-size: 11px;
    line-height: 1.55;
  }

  html[data-fs25-auth="true"] .auth-shell > main {
    min-height: calc(100svh - 238px);
    padding: 20px 23px calc(34px + env(safe-area-inset-bottom));
    color: #eef4ff;
    background:
      linear-gradient(rgba(255,255,255,.018), rgba(255,255,255,.018)),
      radial-gradient(circle at 86% 12%, rgba(32, 104, 255, .11), transparent 34%);
  }

  html[data-fs25-auth="true"] .auth-switch {
    width: 154px;
    padding: 3px;
    gap: 3px;
    border: 1px solid rgba(137, 174, 232, .13);
    border-radius: 999px;
    background: rgba(255, 255, 255, .045);
  }

  html[data-fs25-auth="true"] .auth-switch button {
    flex: 1;
    height: 32px;
    padding: 0 13px;
    border-radius: 999px;
    color: rgba(225, 235, 250, .7);
    background: transparent;
    font-size: 12px;
  }

  html[data-fs25-auth="true"] .auth-switch button.active {
    color: #fff;
    background: #ff4b24;
    box-shadow: 0 8px 22px rgba(255, 75, 36, .26);
  }

  html[data-fs25-auth="true"] .auth-shell > main > h2 {
    margin: 19px 0 15px;
    color: #fff;
    font-family: "Noto Serif SC", "Songti SC", STSong, serif;
    font-size: 24px;
    letter-spacing: -.035em;
  }

  html[data-fs25-auth="true"] .form-stack {
    gap: 11px;
  }

  html[data-fs25-auth="true"] .form-stack > label {
    color: rgba(225, 235, 249, .73);
    font-size: 11px;
  }

  html[data-fs25-auth="true"] .form-stack > label > div,
  html[data-fs25-auth="true"] .form-stack > label > input,
  html[data-fs25-auth="true"] .form-stack > label > select {
    height: 48px;
    margin-top: 5px;
    border: 1px solid rgba(132, 170, 224, .16);
    border-radius: 13px;
    color: #fff;
    background: rgba(7, 18, 35, .72);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
  }

  html[data-fs25-auth="true"] .form-stack > label > div:focus-within {
    border-color: rgba(64, 133, 255, .74);
    box-shadow: 0 0 0 3px rgba(43, 105, 255, .11), inset 0 1px 0 rgba(255, 255, 255, .05);
  }

  html[data-fs25-auth="true"] .form-stack input {
    color: #fff;
    caret-color: #ff4b24;
  }

  html[data-fs25-auth="true"] .form-stack input::placeholder {
    color: rgba(184, 200, 224, .43);
  }

  html[data-fs25-auth="true"] .form-stack > label > div > img {
    width: 18px;
    height: 18px;
    filter: brightness(0) invert(1);
    opacity: .67;
  }

  html[data-fs25-auth="true"] .code-field button,
  html[data-fs25-auth="true"] .form-options button,
  html[data-fs25-auth="true"] .text-button {
    color: #70a3ff;
  }

  html[data-fs25-auth="true"] .check-line {
    min-height: 24px;
    color: rgba(218, 228, 242, .67);
  }

  html[data-fs25-auth="true"] .check-line input {
    width: 15px;
    height: 15px;
    accent-color: #ff4b24;
  }

  html[data-fs25-auth="true"] .form-stack .btn-primary {
    height: 50px;
    margin-top: 2px;
    border: 0;
    border-radius: 12px;
    color: #fff;
    background: linear-gradient(100deg, #ff3c18, #ff5a2b);
    box-shadow: 0 14px 32px rgba(255, 66, 28, .23);
    font-weight: 800;
  }

  html[data-fs25-auth="true"] .form-note {
    margin: 0;
    padding: 8px 10px;
    border: 1px solid rgba(115, 151, 207, .1);
    border-radius: 10px;
    color: rgba(174, 192, 219, .56);
    background: rgba(255, 255, 255, .025);
  }

  html[data-fs25-auth="true"] .form-options {
    color: rgba(218, 228, 242, .62);
  }

  .fs25-auth-brand {
    gap: 7px;
  }

  .fs25-auth-brand img {
    width: 43px;
    height: 31px;
  }

  .fs25-auth-brand b {
    font-size: 20px;
  }

  .fs25-avatar-hint {
    top: 310px;
  }

  .fs25-splash {
    position: fixed;
    inset: 0;
    z-index: 10000;
    overflow: hidden;
    display: grid;
    place-items: center;
    color: #fff;
    background:
      radial-gradient(circle at 82% 18%, rgba(35, 105, 255, .55), transparent 32%),
      radial-gradient(circle at 18% 86%, rgba(255, 74, 36, .16), transparent 36%),
      linear-gradient(152deg, #040913 0%, #071327 44%, #041940 100%);
    opacity: 1;
    transition: opacity .34s ease, transform .34s ease;
    isolation: isolate;
  }

  .fs25-splash::before,
  .fs25-splash::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
  }

  .fs25-splash::before {
    width: 125vw;
    height: 125vw;
    left: -76vw;
    top: -49vw;
    border: 1px solid rgba(87, 155, 255, .34);
    box-shadow: 0 0 80px rgba(31, 98, 255, .08);
  }

  .fs25-splash::after {
    width: 82vw;
    height: 82vw;
    right: -58vw;
    bottom: -19vw;
    border: 1px solid rgba(255, 255, 255, .14);
  }

  .fs25-splash.is-leaving {
    opacity: 0;
    transform: scale(1.018);
  }

  .fs25-splash__inner {
    width: min(82vw, 330px);
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .fs25-splash__lens {
    width: 184px;
    height: 184px;
    position: relative;
    display: grid;
    place-items: center;
    border: 1px solid rgba(132, 184, 255, .72);
    border-radius: 44% 56% 60% 40% / 48% 43% 57% 52%;
    background:
      radial-gradient(circle at 31% 22%, rgba(255,255,255,.82), transparent 9%),
      radial-gradient(circle at 38% 28%, rgba(102,176,255,.72), rgba(17,86,242,.58) 36%, rgba(3,26,75,.48) 72%),
      rgba(18, 79, 210, .38);
    box-shadow:
      inset 17px 17px 34px rgba(164, 211, 255, .23),
      inset -22px -20px 42px rgba(0, 15, 62, .38),
      0 35px 70px rgba(0, 45, 144, .42),
      0 0 0 17px rgba(21, 90, 229, .055);
    backdrop-filter: blur(18px) saturate(1.2);
    -webkit-backdrop-filter: blur(18px) saturate(1.2);
    animation: fs25LensFloat 2.9s ease-in-out infinite alternate;
  }

  .fs25-splash__lens::before,
  .fs25-splash__lens::after {
    content: "";
    position: absolute;
    border-radius: 50%;
  }

  .fs25-splash__lens::before {
    width: 236px;
    height: 236px;
    border: 1px solid rgba(98, 157, 255, .31);
  }

  .fs25-splash__lens::after {
    width: 9px;
    height: 9px;
    right: 7px;
    top: 21px;
    background: #ff4b24;
    box-shadow: 0 0 0 7px rgba(255, 75, 36, .13), -192px 162px 0 -2px rgba(109, 168, 255, .9);
  }

  .fs25-splash__mark {
    width: 136px;
    height: 96px;
    object-fit: contain;
    background: transparent;
    filter: drop-shadow(0 11px 16px rgba(0, 0, 0, .22));
    animation: fs25MarkIn .7s cubic-bezier(.2,.85,.25,1) both;
  }

  .fs25-splash__eyebrow {
    margin: 57px 0 8px;
    color: #79afff;
    font: 800 10px/1 Arial, sans-serif;
    letter-spacing: .38em;
  }

  .fs25-splash h1 {
    margin: 0;
    font-size: 39px;
    font-weight: 850;
    letter-spacing: .12em;
  }

  .fs25-splash__copy {
    margin: 11px 0 0;
    color: rgba(235, 242, 255, .72);
    font-size: 12px;
    letter-spacing: .06em;
  }

  .fs25-splash__progress {
    width: 92px;
    height: 2px;
    margin-top: 42px;
    overflow: hidden;
    border-radius: 99px;
    background: rgba(255, 255, 255, .14);
  }

  .fs25-splash__progress i {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #296dff, #82b5ff, #ff4b24);
    transform-origin: left;
    animation: fs25Progress 1.55s linear both;
  }

  @keyframes fs25LensFloat {
    from { transform: translate3d(0, 4px, 0) rotate(-1.5deg); }
    to { transform: translate3d(0, -6px, 0) rotate(1.5deg); }
  }

  @keyframes fs25MarkIn {
    from { opacity: 0; transform: scale(.78) translateY(8px); }
    to { opacity: 1; transform: scale(1) translateY(0); }
  }

  @keyframes fs25Progress {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
  }
}

@media (prefers-reduced-motion: reduce) {
  .fs25-splash__lens,
  .fs25-splash__mark,
  .fs25-splash__progress i {
    animation: none !important;
  }
}

/* v1.3.25 correction: the approved auth direction uses one portrait background only. */
@media (max-width: 700px) {
  .fs25-splash {
    place-items: stretch;
    background:
      linear-gradient(180deg, rgba(3, 10, 20, .12) 0%, rgba(3, 10, 20, .28) 38%, rgba(3, 9, 18, .94) 100%),
      linear-gradient(90deg, rgba(3, 12, 24, .72) 0%, transparent 64%),
      url("photos/girl6.jpg") center 34% / cover no-repeat;
  }

  .fs25-splash::before,
  .fs25-splash::after,
  .fs25-splash__lens::before,
  .fs25-splash__lens::after {
    content: none !important;
    display: none !important;
  }

  .fs25-splash__inner {
    width: 100%;
    min-height: 100svh;
    padding: max(48px, env(safe-area-inset-top)) 27px calc(44px + env(safe-area-inset-bottom));
    align-items: flex-start;
    justify-content: flex-end;
    text-align: left;
  }

  .fs25-splash__lens {
    width: auto;
    height: auto;
    position: absolute;
    left: 25px;
    top: max(43px, env(safe-area-inset-top));
    display: block;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    animation: none;
  }

  .fs25-splash__mark {
    width: 48px;
    height: 34px;
    filter: brightness(0) invert(1) drop-shadow(0 6px 14px rgba(0, 0, 0, .34));
  }

  .fs25-splash__eyebrow {
    margin: 0 0 15px;
    color: #67a2ff;
    letter-spacing: .28em;
  }

  .fs25-splash h1 {
    margin: 0;
    color: #fff;
    font-family: "Noto Serif SC", "Songti SC", STSong, serif;
    font-size: clamp(37px, 10.5vw, 46px);
    line-height: 1.23;
    letter-spacing: -.05em;
    text-shadow: 0 8px 26px rgba(0, 0, 0, .32);
  }

  .fs25-splash__copy {
    margin-top: 17px;
    color: rgba(236, 242, 251, .68);
    line-height: 1.7;
  }

  .fs25-splash__progress {
    width: 100%;
    margin-top: 29px;
  }

  html[data-fs25-auth="true"] .auth-shell {
    background:
      linear-gradient(180deg, rgba(3, 10, 20, .24) 0%, rgba(3, 10, 20, .55) 34%, rgba(3, 9, 18, .97) 100%),
      linear-gradient(90deg, rgba(3, 12, 24, .58) 0%, transparent 72%),
      url("photos/girl6.jpg") center 28% / cover no-repeat fixed;
  }

  html[data-fs25-auth="true"] .auth-shell > aside {
    height: 245px;
    padding: max(35px, env(safe-area-inset-top)) 24px 18px;
    background: transparent;
  }

  html[data-fs25-auth="true"] .auth-shell > aside::before,
  html[data-fs25-auth="true"] .auth-shell > aside::after {
    content: none !important;
    display: none !important;
  }

  html[data-fs25-auth="true"] .auth-shell > aside h1,
  html[data-fs25-auth="true"] .auth-shell > aside p {
    display: none;
  }

  html[data-fs25-auth="true"] .auth-shell > main {
    min-height: calc(100svh - 245px);
    padding: 22px 21px calc(34px + env(safe-area-inset-bottom));
    border-top: 1px solid rgba(255, 255, 255, .09);
    background: linear-gradient(180deg, rgba(4, 12, 24, .75), rgba(4, 10, 20, .94));
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }

  html[data-fs25-auth="true"] .auth-switch {
    margin-bottom: 24px;
  }

  html[data-fs25-auth="true"] .auth-shell > main > h2 {
    margin: 0;
    font-size: 27px;
  }

  html[data-fs25-auth="true"] .fs25-auth-subtitle {
    margin: 7px 0 18px;
    color: rgba(218, 228, 242, .58);
    font-size: 11px;
  }

  html[data-fs25-auth="true"] .form-stack {
    padding: 14px;
    border: 1px solid rgba(144, 177, 224, .13);
    border-radius: 15px;
    background: rgba(4, 13, 27, .57);
    box-shadow: 0 20px 48px rgba(0, 0, 0, .17), inset 0 1px 0 rgba(255, 255, 255, .025);
  }
}


/* ===== source: styles-v1325-portrait-fix.css ===== */
/* Final portrait-only splash/auth correction. Loaded last with a unique filename to bypass stale caches. */
@media (max-width: 700px) {
  .fs25-splash {
    place-items: stretch !important;
    background:
      linear-gradient(180deg, rgba(2, 8, 18, .05) 0%, rgba(2, 8, 18, .22) 40%, rgba(2, 8, 18, .94) 100%),
      linear-gradient(90deg, rgba(2, 9, 21, .68) 0%, rgba(2, 9, 21, .12) 72%),
      url("assets/v1319/mobile-home-hero.png") center 30% / cover no-repeat !important;
  }

  .fs25-splash::before,
  .fs25-splash::after,
  .fs25-splash__lens::before,
  .fs25-splash__lens::after,
  html[data-fs25-auth="true"] .auth-shell > aside::before,
  html[data-fs25-auth="true"] .auth-shell > aside::after {
    content: none !important;
    display: none !important;
  }

  .fs25-splash__inner {
    width: 100% !important;
    min-height: 100svh !important;
    padding: max(48px, env(safe-area-inset-top)) 27px calc(44px + env(safe-area-inset-bottom)) !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    text-align: left !important;
  }

  .fs25-splash__lens {
    width: auto !important;
    height: auto !important;
    position: absolute !important;
    left: 25px !important;
    top: max(43px, env(safe-area-inset-top)) !important;
    display: block !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    animation: none !important;
  }

  .fs25-splash__mark {
    width: 48px !important;
    height: 34px !important;
    background: transparent !important;
    filter: brightness(0) invert(1) drop-shadow(0 6px 14px rgba(0, 0, 0, .34)) !important;
  }

  .fs25-splash__eyebrow { margin: 0 0 15px !important; }

  .fs25-splash h1 {
    margin: 0 !important;
    color: #fff !important;
    font-family: "Noto Serif SC", "Songti SC", STSong, serif !important;
    font-size: clamp(37px, 10.5vw, 46px) !important;
    line-height: 1.23 !important;
    letter-spacing: -.05em !important;
    text-shadow: 0 8px 26px rgba(0, 0, 0, .32) !important;
  }

  html[data-fs25-auth="true"] .auth-shell {
    background-color: #030913 !important;
    background-image:
      linear-gradient(180deg, rgba(2, 8, 18, .08) 0%, rgba(2, 8, 18, .38) 32%, rgba(2, 8, 18, .97) 100%),
      linear-gradient(90deg, rgba(2, 9, 21, .55) 0%, rgba(2, 9, 21, .06) 76%),
      url("assets/v1319/mobile-home-hero.png") !important;
    background-position: center, center, center top !important;
    background-size: cover, cover, 100% auto !important;
    background-repeat: no-repeat !important;
  }

  html[data-fs25-auth="true"] .auth-shell > aside {
    height: 330px !important;
    padding: max(35px, env(safe-area-inset-top)) 24px 18px !important;
    background: transparent !important;
    overflow: hidden !important;
  }

  html[data-fs25-auth="true"] .auth-shell > aside h1,
  html[data-fs25-auth="true"] .auth-shell > aside p,
  html[data-fs25-auth="true"] .auth-scene {
    display: none !important;
  }

  html[data-fs25-auth="true"] .auth-shell > main {
    min-height: calc(100svh - 330px) !important;
    padding: 21px 21px calc(34px + env(safe-area-inset-bottom)) !important;
    border-top: 1px solid rgba(255, 255, 255, .08) !important;
    background: linear-gradient(180deg, rgba(3, 11, 23, .82), rgba(3, 9, 19, .97)) !important;
    backdrop-filter: blur(11px) !important;
    -webkit-backdrop-filter: blur(11px) !important;
  }
}

