:root { color-scheme: dark; font-family: "PingFang SC", "Microsoft YaHei", sans-serif; }
* { box-sizing: border-box; }
html { scrollbar-width: none; }
html::-webkit-scrollbar { display: none; }
html, body { width: 100%; margin: 0; min-height: 100%; background: #010406; }
body { color: #f5f5f5; }
button, a { font: inherit; -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
.mobile-profile-page { min-width: 320px; overflow-x: hidden; }
.mobile-profile-shell { position: relative; width: 100%; min-height: 1511px; margin: 0; overflow: hidden; background: #010406; }
.mobile-profile-glow { position: absolute; z-index: 0; border-radius: 50%; filter: blur(90px); pointer-events: none; }
.mobile-profile-glow--orange { top: -120px; right: -110px; width: 250px; height: 250px; background: rgba(139, 72, 20, .34); }
.mobile-profile-glow--violet { top: -120px; left: -75px; width: 210px; height: 190px; background: rgba(8, 84, 93, .2); }
.mobile-profile-main { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 18px; padding: 24px 16px 112px; }
.mobile-profile-user { display: grid; grid-template-columns: 60px minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 60px; }
.mobile-profile-user__avatar { position: relative; width: 60px; height: 60px; overflow: hidden; border: 2px solid #ea9690; border-radius: 50%; background: #161719; }
.mobile-profile-user__avatar > img:first-child { width: 100%; height: 100%; object-fit: cover; }
.mobile-profile-user__avatar img[data-image-state="loading"] { visibility: hidden; }
.mobile-profile-page[data-server-logged-in="true"]:not(.mobile-profile-identity-ready) #mobile-profile-name,
.mobile-profile-page[data-server-logged-in="true"]:not(.mobile-profile-identity-ready) #mobile-profile-id { visibility: hidden; }
.mobile-profile-user__copy { min-width: 0; }
.mobile-profile-user__name-row { display: flex; align-items: center; gap: 4px; min-width: 0; }
.mobile-profile-user__name-row strong { max-width: 92px; overflow: hidden; font-size: 16px; line-height: 22px; text-overflow: ellipsis; white-space: nowrap; }
.mobile-profile-user__vip { box-sizing: border-box; width: 24px; height: 24px; padding: 3px; }
.mobile-profile-user__member-tip { max-width: 82px; overflow: hidden; color: #777; font-size: 10px; line-height: 16px; text-overflow: ellipsis; white-space: nowrap; }
.mobile-profile-user__id-row { display: flex; gap: 4px; margin-top: 4px; color: #8d8f92; font-size: 12px; line-height: 18px; }
.mobile-profile-user__id-row button { padding: 0; border: 0; background: none; color: inherit; text-decoration: underline; }
.mobile-profile-user__session { min-width: 74px; height: 28px; padding: 0 13px; border: 0; border-radius: 18px; background: rgba(255,255,255,.1); font-size: 12px; white-space: nowrap; }
.mobile-profile-stats { display: grid; grid-template-columns: repeat(4, 1fr); height: 44px; color: inherit; text-decoration: none; }
.mobile-profile-stats:focus-visible { outline: 2px solid #f8de72; outline-offset: -2px; }
.mobile-profile-stats div { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.mobile-profile-stats strong { font-size: 16px; line-height: 22px; font-weight: 500; }
.mobile-profile-stats span { color: #aaaeb3; font-size: 12px; line-height: 18px; }
.mobile-profile-wallets { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; height: 96px; }
.mobile-profile-wallet { position: relative; height: 96px; overflow: hidden; color: #fff; text-decoration: none; }
/* Figma 51031:6863: original orange card silhouettes and shared source artwork. */
.mobile-profile-wallet::after { content: ""; position: absolute; z-index: 2; right: 0; bottom: 0; left: 0; height: 70px; background: center / 100% 70px no-repeat; pointer-events: none; }
.mobile-profile-wallet--member::after { background-image: url("/static/images/mobile-profile-figma/wallet-member-orange.png"); }
.mobile-profile-wallet--coins::after { background-image: url("/static/images/mobile-profile-figma/wallet-coins-orange.png"); }
.mobile-profile-wallet__art { position: absolute; z-index: 0; top: -2px; right: 0; display: block; width: 64px; height: 64px; }
.mobile-profile-wallet__art img { display: block; width: 64px; height: 64px; object-fit: cover; transform: rotate(19.09deg); }
.mobile-profile-wallet--coins .mobile-profile-wallet__art { top: 0; }
.mobile-profile-wallet--coins .mobile-profile-wallet__art img { transform: rotate(13.45deg); }
.mobile-profile-wallet > .mobile-profile-wallet__copy { position: absolute; z-index: 3; left: 12px; top: 38px; display: flex; width: 72px; flex-direction: column; align-items: flex-start; gap: 4px; }
.mobile-profile-wallet strong { width: 100%; font-family: "Alimama ShuHeiTi", "PingFang SC", "Microsoft YaHei", sans-serif; font-size: 18px; line-height: 24px; text-align: center; white-space: nowrap; }
.mobile-profile-wallet small { font-size: 12px; line-height: 18px; }
.mobile-profile-wallet small b { font-weight: 400; }
.mobile-profile-wallet--coins .mobile-profile-wallet__copy small { display: flex; align-items: flex-start; width: 88px; white-space: nowrap; }
.mobile-profile-wallet--coins .mobile-profile-wallet__copy small b { min-width: 0; flex: 1; font-size: 12px; line-height: 14px; overflow-wrap: anywhere; white-space: normal; word-break: break-all; }
.mobile-profile-wallet em { position: absolute; z-index: 4; right: 7px; bottom: 8px; height: 24px; padding: 3px 8px; border-radius: 99px; background: #fff; color: #292929; font-size: 12px; line-height: 18px; font-style: normal; }

.mobile-profile-activities { padding: 12px 11px; border: 1px solid rgba(255,255,255,.05); border-radius: 9px; background: rgba(255,255,255,.05); box-shadow: 0 0 5px rgba(0,0,0,.1); }
.mobile-profile-activities h1 { position: relative; width: 106.04px; height: 28px; margin: 0 auto 12px; padding-left: 17.04px; padding-right: 17px; background: linear-gradient(249.15deg,#fff 1.3438%,#ff4b02 94.951%); background-clip: text; color: transparent; font-family: "Alimama ShuHeiTi", "PingFang SC", sans-serif; font-size: 18px; font-weight: 700; line-height: 28px; white-space: nowrap; }
.mobile-profile-activities h1 i { position: absolute; display: block; background: center / contain no-repeat; }
.mobile-profile-activities h1 i:first-child { left: 0; top: 14px; width: 9.75563px; height: 9.75563px; transform: rotate(-16.7deg); background-image: url("/static/images/desktop-profile-figma/activity-title-star-left.svg"); }
.mobile-profile-activities h1 i:last-child { right: 0; top: 3px; width: 14px; height: 14px; background-image: url("/static/images/desktop-profile-figma/activity-title-star-right.svg"); }
.mobile-profile-activities a { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; overflow: hidden; border: 1px solid rgba(255,255,255,.05); background: rgba(255,255,255,.05); color: rgba(255,255,255,.55); text-decoration: none; }
.mobile-profile-activities__large { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.mobile-profile-activities__large a { height: 130px; padding-bottom: 16px; border-radius: 12px; }
.mobile-profile-activities__large img { position: absolute; top: 16px; width: 64px; height: 64px; object-fit: contain; }
.mobile-profile-activities b { position: relative; z-index: 1; max-width: 100%; overflow: hidden; font-size: 14px; font-weight: 400; line-height: 20px; text-overflow: ellipsis; white-space: nowrap; }
.mobile-profile-badge { position: absolute; z-index: 2; top: 0; left: 0; display: grid; width: 28px; height: 20.5px; place-items: center; padding: 0 7px 6px 0; color: #fff; font-size: 8px; font-weight: 600; line-height: 12px; background-position: 0 0; background-repeat: no-repeat; background-size: 28px 20.5px; }
.mobile-profile-badge__text { display: block; transform: rotate(-18.19deg); transform-origin: center; white-space: nowrap; }
.mobile-profile-badge--hot { background-image: url("/static/images/mobile-profile-badge-hot.svg"); }
.mobile-profile-badge--daily { background-image: url("/static/images/mobile-profile-badge-daily.svg"); }
.mobile-profile-badge--recommended { background-image: url("/static/images/mobile-profile-badge-recommended.svg"); }
.mobile-profile-activities__small { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; margin-top: 12px; }
.mobile-profile-activities__small a { height: 96px; padding-bottom: 8px; border-radius: 12px; }
.mobile-profile-activities__small img { position: absolute; top: 8px; width: 50px; height: 50px; object-fit: contain; }
.mobile-profile-activities__small b { font-size: 14px; line-height: 20px; }
.mobile-profile-activities a.is-unavailable { opacity: .5; filter: grayscale(.45); cursor: not-allowed; }
.mobile-profile-activities__large[hidden], .mobile-profile-activities__small[hidden] { display: none; }
.mobile-profile-library { min-height: 342px; padding: 18px 12px; border-radius: 12px; background: #0d0f11; }
.mobile-profile-library.has-pagination { padding-bottom: 0; }
.mobile-profile-library__tabs { display: flex; gap: 28px; height: 36px; }
.mobile-profile-library__tabs button { position: relative; padding: 0; border: 0; background: none; color: #777b80; font-size: 14px; }
.mobile-profile-library__tabs button.is-active { color: #f4f4f4; font-weight: 500; }
.mobile-profile-library__tabs button.is-active::after { content: ""; position: absolute; bottom: 0; left: 50%; width: 16px; height: 3px; transform: translateX(-50%); border-radius: 12px; background: #ff4b02; }
.mobile-profile-library__filters { display: flex; gap: 12px; margin-top: 12px; }
.mobile-profile-library__filters button { width: 58px; height: 24px; padding: 0; border: 1px solid #656565; border-radius: 99px; background: transparent; color: #b4b5b7; font-size: 12px; }
.mobile-profile-library__filters button.is-active { border-color: #ff4b02; background: #ff4b02; color: #fff; font-weight: 500; }
.mobile-profile-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 8px; margin-top: 12px; }
.mobile-profile-card { position: relative; }
.mobile-profile-card__action { position: absolute; z-index: 3; top: 2px; right: 2px; display: flex; width: 32px; height: 32px; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 50%; background: rgba(0,0,0,.42); cursor: pointer; -webkit-tap-highlight-color: transparent; }
.mobile-profile-card__action:focus-visible { outline: 2px solid #e9b54b; outline-offset: 2px; }
.mobile-profile-card__action:disabled { cursor: wait; }
.mobile-profile-card__unlike .mobile-like-motion-graphic { width: 32px; height: 32px; flex-basis: 32px; }
.mobile-profile-card__like-count { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.mobile-profile-card__unfavorite .favorite-motion--card { --favorite-motion-icon-size: 24px; }
.mobile-profile-grid[hidden] { display: none; }
.mobile-profile-loading { min-height: 238px; padding-top: 104px; color: #777b80; font-size: 12px; text-align: center; }
.mobile-profile-loading[hidden] { display: none; }
.mobile-profile-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 238px; padding-top: 6px; text-align: center; }
.mobile-profile-empty[hidden] { display: none; }
.mobile-profile-empty > img { width: 120px; height: 120px; object-fit: contain; }
.mobile-profile-empty strong { margin-top: 8px; font-size: 14px; line-height: 20px; }
.mobile-profile-empty p { margin: 8px 0; color: #55595e; font-size: 12px; line-height: 18px; }
.mobile-profile-empty button { height: 24px; padding: 0 12px; border: .5px solid #e9b54b; border-radius: 99px; background: transparent; color: #e9b54b; font-size: 10px; }

/* Guest state is confined to the mobile template; account data stays API-driven. */
.mobile-profile-page[data-profile-account="guest"] .mobile-profile-user__avatar { border: 0; background: transparent; }
.mobile-profile-page[data-profile-account="guest"] .mobile-profile-user__vip,
.mobile-profile-page[data-profile-account="guest"] .mobile-profile-user__member-tip,
.mobile-profile-page:not([data-profile-account="account"]) .mobile-profile-wallets { display: none; }
.mobile-profile-page[data-profile-account="guest"] .mobile-profile-user__session { min-width: 72px; padding: 0 12px; border-radius: 100px; background: #ff4b02; color: #fff; }
.mobile-profile-page[data-profile-account="guest"] .mobile-profile-user { column-gap: 12px; }
.mobile-profile-page[data-profile-account="guest"] .mobile-profile-user__id-row { max-width: 174px; }
