@charset "UTF-8";
:root {
    color-scheme: dark;
    --primary-color: #51e094;
    --primary-color-strong: #3bc87a;
    --primary-background: #040404;
    --header-gold: #040404;
    --header-gold-deep: #0a0a0a;
    --accent-gold: #7dffb5;
    --accent-gold-text: #ffffff;
    --text-brown: #ffffff;
    --text-brown-soft: #b2b9ca;
    --Primitive-Gray-0: #ffffff;
    --Primitive-Gray-600: #154534;
    --Primitive-Gray-700: #222222;
    --Primitive-Gray-1000: #ffffff;
    --Primitive-Alpha-60: rgba(0, 0, 0, 0.55);
    --Primitive-Alpha-Light-60: rgba(255, 255, 255, 0.6);
    --Primitive-Alpha-Light-40: rgba(255, 255, 255, 0.4);
    --Semantic-Background-Secondary: #040404;
    --Semantic-Card-Subtle: #222222;
    --Semantic-Text-Primary: #ffffff;
    --Semantic-Button-Text: #000000;
    --Semantic-Tag-Text: #ffffff;
    --Semantic-Text-Secondary: #ffffff;
    --Semantic-Text-Muted: #666666;
    --Semantic-Text-OnAccent: #ffffff;
    --Semantic-Surface-Card: #222222;
    --Semantic-Surface-Card-Soft: #222222;
    --Semantic-Surface-Inset: #1a1a1a;
    --Semantic-Border-Default: #164635;
    --Semantic-Accent-Price: #f03789;
    --Semantic-Live-Dot: #1eff00;
    --Semantic-Live-Dot-Glow: #00ff4d;
    --Semantic-Gradient-Live-Start: #fa63ae;
    --Semantic-Gradient-Live-End: #fb3897;
    --Semantic-Gradient-Album-Start: #fa63ae;
    --Semantic-Gradient-Album-End: #fb3897;
    --Semantic-Overlay-Strong: var(--Primitive-Alpha-60);
    --Semantic-Overlay-Light-Default: var(--Primitive-Alpha-Light-60);
    --Semantic-Overlay-Light-Strong: var(--Primitive-Alpha-Light-40);
    --Semantic-Scrim-Live-Badge: rgba(0, 0, 0, 0.51);
    --Semantic-Scrim-Bottom-Start: rgba(0, 0, 0, 0);
    --Semantic-Scrim-Bottom-End: rgba(0, 0, 0, 1);
    --Semantic-Vant-Notice-Text: #d0d0d0;
    --Semantic-Vant-Notice-Background: #222222;
    --Semantic-Vant-Tab-Text-Active: #51e094;
    --Semantic-Vant-Tab-Text-Inactive: rgba(255, 255, 255, 0.92);
    --Semantic-Vant-Tabbar-Text-Inactive: #8c8c8c;
    --Semantic-Vant-Tabbar-Text-Active: #51e094;
    --Semantic-Vant-Tabbar-Background: #040404;
    --Semantic-Swipe-Indicator-Active: #ffffff;
    --Semantic-Swipe-Indicator-Inactive: rgba(255, 255, 255, 0.45);
    --Semantic-Shimmer-Background: #222222;
    --Semantic-Shimmer-Stripe-Start: rgba(255, 255, 255, 0);
    --Semantic-Shimmer-Stripe-Mid: rgba(255, 255, 255, 0.08);
    --imageSkeletonHighlight: rgba(255, 255, 255, 0.08);
    --imageSkeletonEffectShadow: 0 0 1.875rem 1.875rem rgba(255, 255, 255, 0.01);
    --Semantic-Vant-Tabbar-Border-Top: #164635;
    --Semantic-AdCardMedium-Description-Background: linear-gradient(
        90deg,
        var(--primary-color) 0%,
        var(--primary-color-strong) 100%
    );
    --radius-S: 0.5rem;
    --radius-M: 0.75rem;
    --radius-L: 1rem;
    --radius-full: 62.4375rem;
}
[data-template="glow-black"] {
    --Template-Glow-Background: #040404;
    --primary-background: var(--Template-Glow-Background);
    --Semantic-Background-Secondary: #040404;
}
html {
    font-size: 100%;
    width: 100%;
    min-height: 100%;
    overflow-x: clip;
    background: var(--primary-background);
}
* {
    border: 0;
    margin: 0;
    box-sizing: border-box;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
*::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}
body {
    margin: 0 auto !important;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 100%;
    background: var(--primary-background);
    overflow-x: clip;
}
@supports not (overflow-x: clip) {
    html,
    body {
        overflow-x: hidden;
    }
}
#app {
    width: 100%;
    min-height: 100%;
    margin: 0 auto;
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
    #app {
        max-width: 31.25rem;
    }
}
@supports (min-height: -webkit-fill-available) {
    body {
        min-height: -webkit-fill-available;
    }
}
img {
    -webkit-user-drag: none;
    user-select: none;
    -webkit-user-select: none;
    -webkit-tap-highlight-color: transparent;
}
.play-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 2.8125rem;
    height: 2.8125rem;
    cursor: pointer;
    z-index: 1;
}
.myBtn {
    border: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.home,
.solid-home {
    width: 100%;
    min-height: 100vh;
    padding-bottom: 3.75rem;
    background: var(--Semantic-Background-Secondary);
}
@supports (height: 100dvh) {
    .home,
    .solid-home {
        min-height: 100dvh;
    }
}
@supports (padding-bottom: env(safe-area-inset-bottom)) {
    .home,
    .solid-home {
        padding-bottom: calc(3.75rem + env(safe-area-inset-bottom));
    }
}
.solid-home--no-tabbar {
    padding-bottom: 0;
}
@supports (padding-bottom: env(safe-area-inset-bottom)) {
    .solid-home--no-tabbar {
        padding-bottom: env(safe-area-inset-bottom);
    }
}
.home {
    width: 100%;
}
.home-content,
.solid-home__content {
    padding: 0 0.75rem 1rem;
}
.solid-tabs__shell {
    position: sticky;
    top: 0;
    z-index: 20;
    background: var(--Semantic-Background-Secondary);
}
.solid-tabs__nav {
    height: 3.375rem;
    display: flex;
    align-items: center;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
}
.solid-tabs__tab {
    position: relative;
    flex: 1 0 auto;
    height: 3.375rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    padding: 0 0.625rem;
    background: transparent;
    -webkit-appearance: none;
    appearance: none;
    color: var(--Semantic-Vant-Tab-Text-Inactive);
    font-size: 0.875rem;
    font-weight: 500;
    font-family:
        PingFang SC,
        Microsoft YaHei,
        Arial,
        Helvetica,
        sans-serif;
}
.solid-tabs__tab--active {
    color: var(--Semantic-Vant-Tab-Text-Active);
    font-size: 1.0625rem;
    font-weight: 600;
}
.solid-tabs__tab--active:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0.2rem;
    width: 1.375rem;
    height: 0.5rem;
    border: 0;
    border-radius: 0;
    transform: translate(-50%);
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 10' fill='none'%3E%3Cpath d='M3 2.2C7.5 7.8 20.5 7.8 25 2.2' stroke='%23FFE9A8' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
    box-shadow: none;
    filter: none;
}
.topTitleLine,
.solid-top-title {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    font-family:
        PingFang SC,
        Microsoft YaHei,
        Arial,
        Helvetica,
        sans-serif;
}
.solid-home-content-list {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0.9375rem;
}
.solid-module-host.reduced-gap {
    margin-top: -0.75rem;
}
.solid-image {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    vertical-align: top;
}
.solid-image.is-loading {
    background-color: var(--imageSkeletonBg, var(--Semantic-Shimmer-Background, #222222));
    box-shadow: var(--imageSkeletonBoxShadow, inset 0 0 0 0.0625rem rgba(255, 255, 255, 0.04));
}
.solid-image__shimmer {
    display: none;
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    overflow: hidden;
    background: linear-gradient(
        100deg,
        rgba(255, 255, 255, 0) 10%,
        var(--imageSkeletonHighlight, rgba(255, 255, 255, 0.72)) 50%,
        rgba(255, 255, 255, 0) 90%
    );
    box-shadow: var(--imageSkeletonEffectShadow, 0 0 1.875rem 1.875rem rgba(255, 255, 255, 0.02));
}
.solid-image.is-loading .solid-image__shimmer {
    display: block;
    animation: solid-image-shimmer 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}
.solid-image > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    position: relative;
    z-index: 0;
    opacity: 1;
    transition: opacity 0.15s ease;
}
.solid-image.is-loading > img {
    opacity: 0;
}
.solid-image.is-loaded > img {
    opacity: 1;
}
@keyframes solid-image-shimmer {
    0% {
        transform: translateX(-150%) skewX(-20deg);
    }
    100% {
        transform: translateX(150%) skewX(-20deg);
    }
}
@media (prefers-reduced-motion: reduce) {
    .solid-image.is-loading .solid-image__shimmer {
        animation: none;
        opacity: 0.35;
    }
    .solid-image > img {
        transition: none;
    }
}
.solid-home button,
.solid-popup-root button,
.solid-preview button,
.solid-mod button,
.solid-home [role="button"],
.solid-popup-root [role="button"],
.solid-preview [role="button"],
.solid-mod [role="button"],
.card-medium-wrap [role="button"],
.cardSmall [role="button"],
.solid-tabs__tab {
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}
/* banner 要跟手横滑，不能用 manipulation，否则手指一横移就被浏览器吃掉 */
.hero-swipe [role="button"] {
    -webkit-tap-highlight-color: transparent;
}
:where(
    .solid-button,
    .solid-retry-button,
    .solid-tabs__tab,
    .solid-swipe__indicator,
    .solid-pop-close,
    .solid-preview__close,
    .solid-preview__nav,
    .myBtn,
    .columnBtn,
    .itemImg,
    .mod-itm,
    .badge,
    .floating-icons__item,
    .side-sticker__item,
    .side-sticker__close
) {
    cursor: pointer;
    transition:
        scale 0.14s ease,
        opacity 0.14s ease,
        background-color 0.14s ease,
        box-shadow 0.14s ease;
}
:where(
    .solid-button,
    .solid-retry-button,
    .solid-tabs__tab,
    .solid-swipe__indicator,
    .solid-pop-close,
    .solid-preview__close,
    .solid-preview__nav,
    .myBtn,
    .columnBtn,
    .itemImg,
    .mod-itm,
    .badge,
    .floating-icons__item,
    .side-sticker__item,
    .side-sticker__close
):focus-visible {
    outline: 0.125rem solid var(--primary-color);
    outline-offset: 0.125rem;
}
:where(.solid-tabs__tab):focus-visible {
    outline-offset: -0.125rem;
}
:where(
    .solid-button,
    .solid-retry-button,
    .solid-tabs__tab,
    .solid-swipe__indicator,
    .solid-pop-close,
    .solid-preview__close,
    .solid-preview__nav,
    .myBtn,
    .columnBtn,
    .itemImg,
    .mod-itm,
    .badge,
    .floating-icons__item,
    .side-sticker__item,
    .side-sticker__close
):disabled,
:where(
    .solid-button,
    .solid-retry-button,
    .solid-tabs__tab,
    .solid-swipe__indicator,
    .solid-pop-close,
    .solid-preview__close,
    .solid-preview__nav,
    .myBtn,
    .columnBtn,
    .itemImg,
    .mod-itm,
    .badge,
    .floating-icons__item,
    .side-sticker__item,
    .side-sticker__close
)[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: 0.55;
}
@media (hover: none) and (pointer: coarse) {
    :where(
        .solid-button,
        .solid-retry-button,
        .solid-tabs__tab,
        .solid-swipe__indicator,
        .solid-pop-close,
        .solid-preview__close,
        .solid-preview__nav,
        .myBtn,
        .columnBtn,
        .itemImg,
        .mod-itm,
        .badge,
        .floating-icons__item,
        .side-sticker__item,
        .side-sticker__close
    ):active:not(:disabled) {
        scale: 0.97;
        opacity: 0.86;
    }
    @supports not (scale: 0.97) {
        :where(
                .solid-button,
                .solid-retry-button,
                .solid-tabs__tab,
                .solid-swipe__indicator,
                .solid-pop-close,
                .solid-preview__close,
                .myBtn,
                .columnBtn,
                .itemImg,
                .mod-itm,
                .badge,
                .floating-icons__item,
                .side-sticker__item,
                .side-sticker__close
            ):active:not(:disabled) {
            transform: scale(0.97);
        }
    }
}
.solid-danger-button,
.solid-small-danger-button {
    width: 12rem;
    height: 2.625rem;
    margin: 0 auto;
    border-radius: 62.4375rem;
    background: var(--primary-color);
    color: var(--Semantic-Button-Text);
    font-size: 0.875rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.solid-small-danger-button {
    width: fit-content;
    min-width: 0;
    height: 2.125rem;
    padding: 0.5rem 1rem;
    font-size: 0.8125rem;
}
.solid-popup-root,
.solid-preview {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1000;
}
.solid-popup-root {
    animation: solid-fade-in 0.18s ease both;
}
.solid-popup-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 0;
    background: rgba(0, 0, 0, 0.6);
}
.solid-popup {
    position: absolute;
    left: 50%;
    bottom: 0;
    width: min(100%, 31.25rem);
    transform: translate(-50%);
    background: var(--Semantic-Background-Secondary);
    color: var(--Semantic-Text-Primary);
    animation: solid-sheet-up 0.22s cubic-bezier(0.22, 0.8, 0.22, 1) both;
}
.solid-popup--center {
    top: 50%;
    bottom: auto;
    width: min(calc(100% - 3rem), 20rem);
    border-radius: var(--radius-L, 16px);
    transform: translate(-50%, -50%);
    animation: solid-fade-in 0.18s ease both;
}
@keyframes solid-fade-in {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes solid-sheet-up {
    0% {
        transform: translate(-50%, 1.5rem);
    }
    to {
        transform: translate(-50%);
    }
}
.detailPop.solid-detail-pop,
.detailPop.solid-section-pop {
    height: 86dvh;
    border-radius: var(--radius-L) var(--radius-L) 0 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}
.solid-contact-pop {
    width: min(100%, 29.75rem);
    padding: 1.125rem;
    border: 0.0625rem solid var(--Semantic-Border-Default);
    border-radius: var(--radius-L);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.solid-contact-pop.detailPop {
    height: auto;
}
.solid-pop-close {
    position: absolute;
    right: 1rem;
    top: 1.875rem;
    z-index: 3;
    box-sizing: border-box;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 0;
    border-radius: var(--radius-full);
    background: var(--Primitive-Alpha-60, rgba(0, 0, 0, 0.6));
    color: var(--Semantic-Text-Primary, #ffffff);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}
.solid-pop-close img {
    width: 1rem;
    height: 1rem;
    display: block;
    flex-shrink: 0;
}
.closeBtn.solid-pop-close {
    position: absolute;
}
.solid-detail-pop__scroll,
.solid-section-pop__scroll {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}
.solid-detail-pop__scroll {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    padding: 1.875rem 0.75rem calc(1.25rem + env(safe-area-inset-bottom));
}
.detail-title-line,
.solid-detail-head {
    display: flex;
    align-items: center;
    gap: 0.9375rem;
    justify-content: flex-start;
}
.headImg,
.solid-detail-head__image {
    width: 5rem;
    height: 5rem;
    border-radius: 0.75rem;
    overflow: hidden;
}
.detail-line-right,
.solid-detail-head__body {
    flex: 1;
    min-width: 0;
}
.solid-detail-head__name,
.nameAndBtn .name {
    margin-bottom: 0.625rem;
    color: var(--Semantic-Text-Primary, #ffffff);
    font-size: 1.0625rem;
    font-weight: 500;
    line-height: 1.5rem;
}
.tips,
.solid-detail-tip {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    width: 100%;
    padding: 0.625rem;
    border-radius: 0.75rem;
    background: var(--Semantic-Surface-Inset, #1a1a1a);
    color: var(--Semantic-Text-Secondary, #ffffff);
    font-size: 0.75rem;
    line-height: 1.125rem;
}
.tipIcon,
.solid-detail-tip .solid-image {
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
}
.tipCont {
    flex: 1;
    min-width: 0;
}
.solid-popup-media-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.5rem;
}
.solid-detail-pop .solid-popup-media-grid {
    --media-gap: 0.75rem;
    display: flex;
    gap: var(--media-gap);
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
    flex-shrink: 0;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
}
.solid-detail-pop .detailImg,
.solid-detail-pop .solid-popup-media-thumb {
    flex: 0 0 calc((100% - var(--media-gap) * 1.3) / 2.3);
    width: calc((100% - var(--media-gap) * 1.3) / 2.3);
    height: 18.75rem;
    aspect-ratio: auto;
    border-radius: var(--radius-L);
    scroll-snap-align: start;
    padding: 0;
    overflow: hidden;
}
.xq,
.solid-detail-description {
    width: 100%;
    color: var(--Semantic-Text-Muted, #b2b9ca);
    font-size: 0.8125rem;
    line-height: 1.25rem;
    white-space: pre-wrap;
    word-break: break-all;
    background: var(--Semantic-Surface-Inset, #1a1a1a);
    padding: 0.625rem;
    border-radius: 0.75rem;
}
.btnOut,
.solid-popup-bottom-button {
    position: relative;
    left: 50%;
    transform: translate(-50%);
    padding: 0 0.75rem;
    display: flex;
    justify-content: center;
    background: transparent;
    z-index: 2;
}
.card-title-line,
.solid-contact-pop__title {
    text-align: center;
    font-size: 1rem;
    font-weight: 500;
}
.xq-list,
.solid-contact-pop__steps {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.625rem;
    border-radius: 0.75rem;
    background: var(--Semantic-Surface-Inset);
    color: var(--Semantic-Text-Muted);
    font-size: 0.875rem;
    line-height: 1.5rem;
}
.xq-line {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}
.num,
.solid-contact-pop__steps span {
    flex-shrink: 0;
}
.my-section-swipe,
.solid-section-pop__swipe,
.media-wrapper,
.solid-section-pop__media {
    height: 23.4375rem;
}
.media-wrapper,
.solid-section-pop__media {
    width: 100%;
    border: 0;
    padding: 0;
    background: var(--Semantic-Card-Subtle);
}
.solid-section-pop__content {
    display: flex;
    flex-direction: column;
    padding: 1rem 0.75rem;
    flex-shrink: 0;
    min-height: 0;
}
.section-title-line {
    line-height: 1.75rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.solid-section-pop__name,
.section-title-name {
    color: var(--Semantic-Text-Primary, #ffffff);
    font-size: 1rem;
    font-weight: 600;
}
.section-title-money,
.solid-section-pop__price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--Semantic-Accent-Price);
    font-size: 1.375rem;
    font-weight: 600;
}
.unit,
.solid-section-pop__price span {
    font-size: 0.75rem;
    font-weight: 400;
}
.outDesc,
.solid-section-pop__out-desc {
    color: var(--Semantic-Text-Muted);
    font-size: 0.75rem;
    font-weight: 400;
}
.solid-preview__nav {
    position: absolute;
    top: 50%;
    z-index: 2;
    width: 2.5rem;
    height: 3.5rem;
    border: 0;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 2.375rem;
}
.solid-preview__nav:disabled {
    opacity: 0.25;
}
.solid-preview__nav--prev {
    left: 0.5rem;
}
.solid-preview__nav--next {
    right: 0.5rem;
}
@media (prefers-reduced-motion: reduce) {
    .solid-popup-root,
    .solid-popup,
    .solid-preview,
    .solid-swipe__track,
    :where(
        .solid-button,
        .solid-retry-button,
        .solid-tabs__tab,
        .solid-swipe__indicator,
        .solid-pop-close,
        .solid-preview__close,
        .solid-preview__nav,
        .myBtn,
        .columnBtn,
        .itemImg,
        .mod-itm,
        .badge,
        .floating-icons__item,
        .side-sticker__item,
        .side-sticker__close
    ) {
        animation: none;
        transition: none;
    }
}
.media-viewer-container {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 4000;
    background: #000;
    color: #fff;
    display: flex;
    flex-direction: column;
    padding-top: calc(1.375rem + env(safe-area-inset-top));
    padding-bottom: env(safe-area-inset-bottom);
}
.tool-line {
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 0.75rem;
    flex-shrink: 0;
}
.close-btn {
    width: 2rem;
    height: 2rem;
    border: 0;
    padding: 0;
    border-radius: 50%;
    background: transparent;
}
.close-bg {
    background: rgba(255, 255, 255, 0.16);
}
.pagination {
    font-size: 0.875rem;
    line-height: 1.25rem;
}
.my-swipe {
    flex: 1;
    min-height: 0;
}
.media-wrapper {
    width: 100%;
    height: 100%;
    border: 0;
    padding: 0;
    background: transparent;
    display: grid;
    place-items: center;
}
.full-media {
    max-width: 100%;
    max-height: calc(100vh - 6.375rem - env(safe-area-inset-bottom));
    object-fit: contain;
}
.play-overlay {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 2.75rem;
    height: 2.75rem;
    transform: translate(-50%, -50%);
}
.title-line {
    display: flex;
    align-items: center;
    height: 1.75rem;
    gap: 0.375rem;
    line-height: 1.75rem;
    color: var(--primary-color-strong);
    font-size: 1rem;
    font-weight: 600;
}
.title-line .line {
    width: 1.125rem;
    height: 1.125rem;
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 50%, #f0d48a 0%, #c9a35a 70%, #b8913f 100%);
    box-shadow: 0 0.0625rem 0.25rem rgba(184, 145, 63, 0.35);
    position: relative;
    flex-shrink: 0;
}
.title-line .line:after {
    content: "★";
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    font-size: 0.625rem;
    line-height: 1;
    color: #fff;
}
.title-line .title-img {
    width: 1.5rem;
    height: 1.5rem;
}
.mod-title-line {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.mod-title-line .title-mark {
    width: 0.25rem;
    height: 0.875rem;
    background: var(--primary-color);
    border-radius: var(--radius-full);
}
.mod-title-line .title-name {
    font-weight: 500;
    font-size: 0.875rem;
    color: var(--Semantic-Text-Primary, #ffffff);
}
.position {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    background: var(--Semantic-AdCardMedium-Description-Background);
    width: fit-content;
    border-radius: 3.125rem;
}
.position .posiImg {
    width: 0.875rem;
    height: 0.875rem;
    display: flex;
    justify-content: center;
    align-items: center;
}
.position .posiImg img {
    width: 100%;
    height: 100%;
}
.position .city {
    line-height: 1.125rem;
    text-align: left;
    font-weight: 400;
    font-size: 0.8125rem;
    color: var(--Semantic-Tag-Text, #ffffff);
}
.myBtn {
    background: var(--primary-color);
    border: none;
    text-align: center;
    font-weight: 400;
    color: var(--Semantic-Button-Text, #000000);
    font-family:
        PingFang SC,
        Microsoft YaHei,
        Arial,
        Helvetica,
        sans-serif;
    white-space: nowrap;
    border-radius: var(--radius-full);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.cardSmall {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}
.cardSmall .description {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    width: 100%;
    background-color: var(--Semantic-Surface-Card, #0f0f0f);
    border: 0.0625rem solid var(--Semantic-Border-Default, #383838);
    padding: 0.875rem;
    border-radius: 1rem;
}
.cardSmall .description .description-text {
    width: 100%;
    font-weight: 400;
    font-size: 0.875rem;
    line-height: 1.5rem;
    color: var(--Semantic-Text-Muted, #b2b9ca);
    white-space: pre-wrap;
}
.cardSmall .myBtn {
    background: var(--primary-color);
    border: none;
    text-align: center;
    font-weight: 400;
    font-size: 0.875rem;
    color: var(--Semantic-Button-Text, #000000);
    font-family:
        PingFang SC,
        Microsoft YaHei,
        Arial,
        Helvetica,
        sans-serif;
    white-space: nowrap;
    border-radius: var(--radius-full);
    width: 12rem;
    height: 2.625rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    cursor: pointer;
    margin: 0 auto;
}
.cardLarge + .cardLarge {
    margin-top: 1.25rem;
}
.cardLarge .mod-img-line {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    row-gap: 0.4375rem;
    column-gap: 0.4375rem;
}
.cardLarge .mod-img-line .itemImg {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    border-radius: var(--radius-M);
    background: var(--Semantic-Card-Subtle, #33344c);
    overflow: hidden;
    position: relative;
    border: none;
    padding: 0;
    cursor: pointer;
}
.cardLarge .mod-img-line .itemImg .solid-image,
.cardLarge .mod-img-line .itemImg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.cardLarge .description {
    width: 100%;
    font-weight: 400;
    font-size: 0.9375rem;
    line-height: 1.375rem;
    color: var(--Semantic-Text-Primary, #ffffff);
    white-space: pre-wrap;
}
.cardLarge .myBtn {
    background: var(--primary-color);
    border: none;
    text-align: center;
    font-weight: 400;
    font-size: 0.875rem;
    color: var(--Semantic-Button-Text, #000000);
    font-family:
        PingFang SC,
        Microsoft YaHei,
        Arial,
        Helvetica,
        sans-serif;
    white-space: nowrap;
    border-radius: var(--radius-full);
    width: 12rem;
    height: 2.625rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    cursor: pointer;
    margin: 0 auto;
}
.card-medium-wrap {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    width: 100%;
}
.card-medium-wrap .cardSmall {
    padding: 0.75rem;
    background: var(--Semantic-Surface-Card, #0f0f0f);
    width: 100%;
    border-radius: var(--radius-L);
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    border: 0.0625rem solid var(--Semantic-Border-Default, #383838);
}
.card-medium-wrap .cardSmall .mod-img-line {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 0.4375rem;
    column-gap: 0.4375rem;
}
.card-medium-wrap .cardSmall .mod-img-line .itemImg {
    min-width: 0;
    width: 100%;
    min-height: 0;
    border-radius: var(--radius-M);
    background: var(--Semantic-Card-Subtle, #33344c);
    overflow: hidden;
    aspect-ratio: 1 / 1;
    position: relative;
    border: none;
    padding: 0;
    cursor: pointer;
}
.card-medium-wrap .cardSmall .mod-img-line .itemImg .video-default-cover {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.card-medium-wrap .cardSmall .mod-img-line .itemImg .video-default-fallback {
    background: linear-gradient(
        180deg,
        var(--Semantic-Shimmer-Background, #333333) 0%,
        var(--Semantic-Card-Subtle, #33344c) 100%
    );
}
.card-medium-wrap .cardSmall .mod-title-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    width: 100%;
    min-width: 0;
    margin-top: 0.125rem;
}
.card-medium-wrap
    .cardSmall
    .mod-title-wrapper
    .description-position-wrapper {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}
.card-medium-wrap .cardSmall .mod-title-wrapper .description-wrapper {
    padding: 0.25rem 0.5rem;
    border-radius: 3.125rem;
    font-weight: 400;
    font-size: 0.8125rem;
    color: var(--Semantic-Tag-Text);
    white-space: pre-wrap;
    background: linear-gradient(90deg, #fa62ad, #fb3998);
}
.card-medium-wrap .cardSmall .description {
    width: 100%;
    line-height: 1.25rem;
    text-align: left;
    font-weight: 400;
    font-size: 0.8125rem;
    color: var(--Semantic-Text-Muted, #b2b9ca);
    word-break: break-all;
    white-space: pre-wrap;
    margin-top: 0.625rem;
    background-color: var(--Semantic-Surface-Inset, #1a1a1a);
    padding: 0.625rem;
    border-radius: 0.75rem;
}
.card-medium-wrap .cardSmall .myBtn {
    background: var(--primary-color);
    border: none;
    text-align: center;
    font-weight: 400;
    font-size: 0.875rem;
    color: var(--Semantic-Button-Text, #000000);
    font-family:
        PingFang SC,
        Microsoft YaHei,
        Arial,
        Helvetica,
        sans-serif;
    white-space: nowrap;
    border-radius: var(--radius-full);
    width: 12rem;
    height: 2.625rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    cursor: pointer;
    margin: 0 auto;
}
.solid-mod {
    width: 100%;
}
.solid-mod button.mod-itm,
.solid-mod [role="button"].mod-itm {
    border: none;
    padding: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: inherit;
}
.solid-mod.sectionCard .mod-content {
    margin-top: 0.75rem;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 0.75rem;
    column-gap: 0.5rem;
}
.solid-mod.sectionCard .mod-content .mod-itm {
    width: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    border: 0.0625rem solid var(--Semantic-Border-Default, #222222);
    background-color: var(--Semantic-Surface-Card, #ffffff);
    overflow: hidden;
    padding: 0.5rem 0.5rem 0.625rem;
    border-radius: 0.75rem;
    cursor: pointer;
    box-sizing: border-box;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-img {
    min-width: 0;
    min-height: 0;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 0.625rem;
    overflow: hidden;
    background: #1a1a1a;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom {
    width: 100%;
    margin-top: 0.5rem;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    text-align: left;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .name {
    width: 100%;
    min-width: 0;
    height: auto;
    line-height: 1.25;
    font-weight: 600;
    font-size: 0.8125rem;
    color: #c07c45;
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .meta-body {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0.5rem;
    width: 100%;
    min-width: 0;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .meta-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.2rem;
    min-width: 0;
    flex: 1 1 auto;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .meta-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 0.2rem;
    flex: 0 0 auto;
    max-width: 48%;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .sold,
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .reviews {
    color: #999999;
    font-weight: 400;
    font-size: 0.6875rem;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: right;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .money {
    width: auto;
    font-weight: 700;
    font-size: 1.0625rem;
    line-height: 1.25;
    color: #ff5a8d;
    text-align: left;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .money span {
    font-weight: 600;
    font-size: 0.875rem;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .stars {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 0.1rem;
    flex: 0 0 auto;
    line-height: 0;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .stars i {
    display: block;
    width: 0.625rem;
    height: 0.625rem;
    background: #fba434;
    clip-path: polygon(
        50% 0%,
        61% 35%,
        98% 35%,
        68% 57%,
        79% 91%,
        50% 70%,
        21% 91%,
        32% 57%,
        2% 35%,
        39% 35%
    );
}
/* 兼容旧结构（若后台仍吐 cont/detail） */
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .cont {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .cont .money {
    font-weight: 700;
    font-size: 1.0625rem;
    line-height: 1.25;
    color: #ff5a8d;
}
.solid-mod.sectionCard
    .mod-content
    .mod-itm
    .mod-bom
    .cont
    .money
    span {
    font-weight: 600;
    font-size: 0.875rem;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .cont .detail {
    color: #999999;
    font-weight: 400;
    font-size: 0.6875rem;
    white-space: nowrap;
}
.solid-mod.sectionCard .mod-content .mod-itm .mod-bom .meta-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0.375rem;
    width: 100%;
    min-width: 0;
}
.solid-mod.iconCover {
    border: none;
    border-radius: 0;
    padding: 0;
    background: transparent;
}
.solid-mod.iconCover .mod-content {
    margin-top: 0.75rem;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    row-gap: 0.875rem;
    column-gap: 0.5rem;
}
.solid-mod.iconCover .mod-content .mod-itm {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.375rem;
    cursor: pointer;
}
.solid-mod.iconCover .mod-content .mod-itm .mod-img {
    width: 100%;
    border-radius: 0.75rem;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: var(--Semantic-Shimmer-Background, #1a1a1a);
    box-shadow: 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.08);
}
.solid-mod.iconCover .mod-content .mod-itm .name {
    width: 100%;
    height: 1.125rem;
    line-height: 1.125rem;
    text-align: center;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--text-brown);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.solid-mod.iconCover .mod-content .mod-itm .myBtn {
    background: var(--primary-color);
    border: none;
    text-align: center;
    font-weight: 400;
    font-size: 0.8125rem;
    color: var(--Semantic-Button-Text, #000000);
    font-family:
        PingFang SC,
        Microsoft YaHei,
        Arial,
        Helvetica,
        sans-serif;
    white-space: nowrap;
    border-radius: 62.4375rem;
    padding: 0.1875rem 0.625rem;
    line-height: 1.25;
}
/* 下载图标：设计稿卡片 116×108，横向跟手滑 */
.solid-mod.iconCover--dl .mod-content {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0.5rem;
    margin-top: 0.75rem;
    padding: 0 0 0.25rem;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.solid-mod.iconCover--dl .mod-content::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}
.solid-mod.iconCover--dl .mod-content .mod-itm {
    position: relative;
    flex: 0 0 7.27125rem; /* ≈116.34px @16 */
    width: 7.27125rem;
    height: 6.75rem; /* 108px */
    box-sizing: border-box;
    margin: 0;
    padding: 0.625rem 0.375rem 0.375rem;
    gap: 0.25rem;
    justify-content: flex-start;
    scroll-snap-align: start;
    background: #1a1a1a;
    border: 0.0625rem solid #222222;
    border-radius: 0.75rem;
    overflow: hidden;
    box-shadow: none;
    cursor: pointer;
}
.solid-mod.iconCover--dl .mod-badge {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 2.375rem;
    height: auto;
    line-height: 0;
    pointer-events: none;
}
.solid-mod.iconCover--dl .mod-badge img {
    display: block;
    width: 100%;
    height: auto;
}
.solid-mod.iconCover--dl .mod-content .mod-itm .mod-img {
    width: 3.75rem;
    height: 3.75rem;
    aspect-ratio: 1 / 1;
    margin: 0.35rem auto 0;
    border-radius: 0.625rem;
    overflow: hidden;
    background: #1a1a1a;
    box-shadow: none;
    flex-shrink: 0;
}
.solid-mod.iconCover--dl .mod-content .mod-itm .mod-img .solid-image,
.solid-mod.iconCover--dl .mod-content .mod-itm .mod-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.solid-mod.iconCover--dl .mod-content .mod-itm .name {
    width: 100%;
    height: auto;
    min-height: 1.125rem;
    margin-top: auto;
    padding: 0 0.125rem;
    line-height: 1.2;
    text-align: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: #d44545;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.solid-mod.fullWidthCard .widthCard-content {
    margin-top: 0.75rem;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    row-gap: 0.75rem;
}
.solid-mod.fullWidthCard .widthCard-content .widthCard-itm {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    padding: 0.375rem;
    background: var(--Semantic-Surface-Card-Soft, #171717);
    border-radius: 0.75rem;
    cursor: pointer;
    border: none;
    width: 100%;
    text-align: left;
}
.solid-mod.fullWidthCard .widthCard-content .widthCard-itm .widthCard-img {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 0.625rem;
    overflow: hidden;
    flex-shrink: 0;
}
.solid-mod.fullWidthCard .widthCard-content .widthCard-itm .widthCard-right {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    justify-content: space-between;
    flex: 1;
    min-width: 0;
}
.solid-mod.fullWidthCard
    .widthCard-content
    .widthCard-itm
    .widthCard-right
    .widthCard-xq {
    min-width: 0;
    flex: 1;
}
.solid-mod.fullWidthCard
    .widthCard-content
    .widthCard-itm
    .widthCard-right
    .widthCard-xq
    .name {
    height: 1.5rem;
    line-height: 1.5rem;
    font-weight: 500;
    font-size: 0.875rem;
    color: var(--Semantic-Text-Primary, #ffffff);
}
.solid-mod.fullWidthCard
    .widthCard-content
    .widthCard-itm
    .widthCard-right
    .widthCard-xq
    .xq {
    margin-top: 0.25rem;
    line-height: 1rem;
    font-size: 0.8125rem;
    color: var(--Semantic-Text-Muted, #b2b9ca);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    white-space: pre-wrap;
}
.solid-mod.fullWidthCard
    .widthCard-content
    .widthCard-itm
    .widthCard-right
    .myBtn {
    background: var(--primary-color);
    border: none;
    text-align: center;
    font-weight: 400;
    font-size: 0.75rem;
    color: var(--Semantic-Button-Text, #000000);
    font-family:
        PingFang SC,
        Microsoft YaHei,
        Arial,
        Helvetica,
        sans-serif;
    white-space: nowrap;
    border-radius: var(--radius-full);
    width: 4.125rem;
    height: 1.5625rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    cursor: pointer;
    margin: 0 auto;
}
.solid-mod.liveCard .mod-content,
.solid-mod.doubleColumnAlbum .mod-content,
.solid-mod.twoMod .mod-content,
.solid-mod.doubleCapsule .mod-content {
    margin-top: 0.75rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 0.75rem;
    column-gap: 0.4375rem;
}
.solid-mod.liveCard .mod-itm {
    aspect-ratio: 174 / 260;
    position: relative;
    border-radius: 0.75rem;
    overflow: hidden;
    cursor: pointer;
    border: none;
    padding: 0;
    background: transparent;
}
.solid-mod.liveCard .mod-itm .position {
    position: absolute;
    z-index: 2;
    top: 0.25rem;
    left: 0.25rem;
}
.solid-mod.liveCard .mod-itm .mod-img {
    width: 100%;
    height: 100%;
    position: relative;
    background: var(--Semantic-Surface-Card, #212236);
    border-radius: var(--radius-M) var(--radius-M) 0 0;
}
.solid-mod.liveCard .mod-itm .livePeoNumber {
    min-width: 4.25rem;
    padding: 0 0.5rem;
    height: 1.375rem;
    background: var(--Semantic-Scrim-Live-Badge, rgba(0, 0, 0, 0.51));
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.125rem;
    position: absolute;
    left: 0.25rem;
    top: 0.375rem;
    border-radius: 3.125rem;
}
.solid-mod.liveCard .mod-itm .livePeoNumber .liveStatus {
    font-size: 0.6875rem;
    color: var(--Semantic-Button-Text, #000000);
}
.solid-mod.liveCard .mod-itm .liveIng {
    width: auto;
    padding: 0 0.375rem;
    height: 1.375rem;
    background: var(--Semantic-Scrim-Live-Badge, rgba(0, 0, 0, 0.51));
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    position: absolute;
    right: 0.25rem;
    top: 0.375rem;
    border-radius: 3.125rem;
}
.solid-mod.liveCard .mod-itm .liveIng .liveBars {
    display: flex;
    align-items: flex-end;
    gap: 0.125rem;
    height: 0.625rem;
}
.solid-mod.liveCard .mod-itm .liveIng .liveBars .liveBar {
    width: 0.125rem;
    height: 100%;
    border-radius: 0.0625rem;
    background: #fff;
    box-shadow: 0 0 0.25rem #fff;
    transform-origin: bottom;
    animation: live-bar-bounce 0.9s ease-in-out infinite;
}
.solid-mod.liveCard .mod-itm .liveIng .liveBars .liveBar:nth-child(1) {
    animation-delay: 0s;
}
.solid-mod.liveCard .mod-itm .liveIng .liveBars .liveBar:nth-child(2) {
    animation-delay: 0.15s;
}
.solid-mod.liveCard .mod-itm .liveIng .liveBars .liveBar:nth-child(3) {
    animation-delay: 0.3s;
}
@keyframes live-bar-bounce {
    0%,
    to {
        transform: scaleY(0.35);
    }
    50% {
        transform: scaleY(1);
    }
}
.solid-mod.liveCard .mod-itm .liveIng .liveStatus {
    font-size: 0.6875rem;
    color: var(--Semantic-Button-Text, #000000);
}
.solid-mod.liveCard .mod-itm .bom {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    padding: 0 0.75rem 0.75rem;
    background: linear-gradient(
        180deg,
        var(--Semantic-Scrim-Bottom-Start, rgba(0, 0, 0, 0)) 0%,
        var(--Semantic-Scrim-Bottom-End, rgb(0, 0, 0)) 100%
    );
    gap: 0.5rem;
}
.solid-mod.liveCard .mod-itm .bom .hotWrap {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}
.solid-mod.liveCard .mod-itm .bom .name {
    font-size: 0.75rem;
    color: var(--Semantic-Button-Text, #000000);
}
.solid-mod.liveCard .mod-itm .bom .name.nameDescription {
    font-size: 0.875rem;
}
.solid-mod.liveCard .mod-itm .bom .hotTxt {
    background: linear-gradient(180deg, #fa6366, #fb383b);
    height: 1.125rem;
    font-size: 0.75rem;
    color: var(--Semantic-Text-OnAccent, #ffffff);
    border-radius: var(--radius-full);
    padding: 0 0.375rem;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.solid-mod.liveCard .mod-itm .bom .columnBtn {
    background: linear-gradient(
        180deg,
        var(--Semantic-Gradient-Live-Start) 0%,
        var(--Semantic-Gradient-Live-End) 100%
    );
    border: none;
    height: 1.125rem;
    font-size: 0.75rem;
    color: var(--Semantic-Text-OnAccent, #ffffff);
    border-radius: var(--radius-full);
    padding: 0 0.3125rem;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.solid-mod.liveCard .mod-itm .bom .columnBtn .btnIn {
    display: flex;
    align-items: center;
    gap: 0.125rem;
}
.solid-mod.liveCard .mod-itm .bom .columnBtn .btnIn .btnIcon {
    width: 0.875rem;
    height: 0.875rem;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.solid-mod.doubleColumnAlbum .mod-itm {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    min-width: 0;
    border-radius: 0.875rem;
    overflow: hidden;
    cursor: pointer;
    border: 0.0625rem solid #222222;
    padding: 0;
    background: #1a1a1a;
    box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.08);
    text-align: left;
}
.solid-mod.doubleColumnAlbum .album-media {
    position: relative;
    width: 100%;
    aspect-ratio: 174 / 200;
    overflow: hidden;
    background: #1a1a1a;
    border-radius: 0.875rem 0.875rem 0 0;
}
.solid-mod.doubleColumnAlbum .mod-itm .mod-img {
    width: 100%;
    height: 100%;
    border-radius: 0;
    overflow: hidden;
    background: transparent;
}
.solid-mod.doubleColumnAlbum .mod-itm .mod-img .solid-image,
.solid-mod.doubleColumnAlbum .mod-itm .mod-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.solid-mod.doubleColumnAlbum .album-badge {
    position: absolute;
    top: 0.4rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 0.15rem;
    max-width: calc(100% - 0.8rem);
    height: 1.35rem;
    padding: 0 0.4rem 0 0.12rem;
    border-radius: 62.4375rem;
    background: rgba(0, 0, 0, 0.52);
    color: #ffffff;
    font-size: 0.625rem;
    line-height: 1;
    white-space: nowrap;
    pointer-events: none;
    box-sizing: border-box;
}
.solid-mod.doubleColumnAlbum .album-badge--cert {
    left: 0.4rem;
}
.solid-mod.doubleColumnAlbum .album-badge--like {
    right: 0.4rem;
    left: auto;
    gap: 0.1rem;
    padding: 0 0.45rem 0 0.1rem;
    border: 0.0625rem solid rgba(255, 170, 90, 0.55);
    background: rgba(0, 0, 0, 0.55);
}
.solid-mod.doubleColumnAlbum .album-badge__icon {
    width: 0.95rem;
    height: 0.95rem;
    object-fit: contain;
    flex-shrink: 0;
    display: block;
}
.solid-mod.doubleColumnAlbum .album-badge__heart {
    width: 0.95rem;
    height: 0.95rem;
    object-fit: contain;
    flex-shrink: 0;
    display: block;
}
/* 骑在封面与信息区交界线上：半截在图上、半截压住信息区 */
.solid-mod.doubleColumnAlbum .album-actions {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 0.4rem;
    height: 1.9rem;
    margin: -0.95rem 0.45rem 0;
    padding: 0;
    pointer-events: none;
    filter: drop-shadow(0 0.1rem 0.25rem rgba(80, 50, 20, 0.28));
}
.solid-mod.doubleColumnAlbum .album-actions__play {
    width: 1.9rem;
    height: 1.9rem;
    object-fit: contain;
    flex-shrink: 0;
    display: block;
}
.solid-mod.doubleColumnAlbum .album-actions__cta {
    /* 素材自带半透明金底 + 爱心 +「点击约会」文案 */
    height: 1.9rem;
    width: auto;
    max-width: calc(100% - 2.3rem);
    flex: 1 1 auto;
    object-fit: contain;
    object-position: left center;
    display: block;
}
.solid-mod.doubleColumnAlbum .album-info {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    margin-top: 0;
    padding: 0.95rem 0.55rem 0.65rem;
    background: #1a1a1a;
}
.solid-mod.doubleColumnAlbum .album-info__row--head {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0.35rem;
    min-width: 0;
}
.solid-mod.doubleColumnAlbum .album-info .name {
    flex: 1 1 auto;
    min-width: 0;
    height: auto;
    line-height: 1.25;
    font-size: 0.9375rem;
    font-weight: 700;
    color: #5a4030;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.solid-mod.doubleColumnAlbum .album-dist {
    display: inline-flex;
    align-items: center;
    gap: 0.125rem;
    flex: 0 0 auto;
    max-width: 55%;
    color: #c5a36e;
    font-size: 0.625rem;
    line-height: 1;
    white-space: nowrap;
}
.solid-mod.doubleColumnAlbum .album-dist img {
    width: 0.625rem;
    height: 0.625rem;
    object-fit: contain;
    display: block;
}
.solid-mod.doubleColumnAlbum .album-dist span {
    overflow: hidden;
    text-overflow: ellipsis;
}
.solid-mod.doubleColumnAlbum .album-stats {
    color: #e0457b;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.solid-mod.doubleColumnAlbum .album-line {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: 0.25rem;
    min-width: 0;
    font-size: 0.6875rem;
    line-height: 1.35;
}
.solid-mod.doubleColumnAlbum .album-line__label {
    flex: 0 0 auto;
    color: #2a4a38;
    font-weight: 500;
}
.solid-mod.doubleColumnAlbum .album-line__text {
    flex: 1 1 auto;
    min-width: 0;
    color: #333333;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: left;
}
.solid-mod.twoMod .mod-itm {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    cursor: pointer;
    border: none;
    padding: 0;
    background: transparent;
    text-align: left;
}
.solid-mod.twoMod .mod-itm .mod-img {
    width: 100%;
    height: 5.3125rem;
    border-radius: 1rem;
    overflow: hidden;
}
.solid-mod.twoMod .mod-itm .name {
    height: 1.5rem;
    line-height: 1.5rem;
    font-size: 0.875rem;
    color: var(--Semantic-Text-Secondary);
}
.solid-mod.doubleCapsule .mod-itm {
    display: flex;
    gap: 0.5rem;
    background: var(--Semantic-Surface-Card);
    padding: 0.375rem;
    border: 0.0625rem solid var(--Semantic-Border-Default, #383838);
    border-radius: var(--radius-M);
    align-items: center;
    cursor: pointer;
}
.solid-mod.doubleCapsule .mod-itm .mod-img {
    width: 3rem;
    height: 3rem;
    border-radius: 0.75rem;
    overflow: hidden;
    flex-shrink: 0;
}
.solid-mod.doubleCapsule .mod-itm .mod-img.imgOut {
    background: var(--Semantic-Surface-Card);
}
.solid-mod.doubleCapsule .mod-itm .right {
    flex: 1;
    min-width: 0;
}
.solid-mod.doubleCapsule .mod-itm .right .name {
    height: 1.375rem;
    line-height: 1.375rem;
    font-size: 0.9375rem;
    color: var(--Semantic-Text-Primary, #ffffff);
}
.solid-mod.doubleCapsule .mod-itm .right .myBtn {
    background: var(--primary-color);
    border: none;
    text-align: center;
    font-weight: 400;
    font-size: 0.6875rem; /* 11px，相对标题 15px 更小一档 */
    color: var(--Semantic-Button-Text, #000000);
    font-family:
        PingFang SC,
        Microsoft YaHei,
        Arial,
        Helvetica,
        sans-serif;
    white-space: nowrap;
    border-radius: var(--radius-full);
    width: fit-content;
    height: 1.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    cursor: pointer;
    padding: 0.125rem 0.5rem;
    margin-top: 0.25rem;
    box-sizing: border-box;
}
.swipeImg {
    width: 100%;
    height: 100%;
    border-radius: var(--radius-L);
    object-fit: cover;
}
.hero-swipe {
    position: relative;
    width: 100%;
    max-width: 100%;
    height: 9.5rem;
    border-radius: 0.875rem;
    overflow: hidden;
}
.hero-swipe--peek {
    /* 85% 主图；侧边 inset 7.5% = 5% 露边 + 2.5% 缝（缝由 JS 写 px） */
    --banner-main: 85%;
    --banner-side: calc((100% - var(--banner-main)) / 2);
    height: 9.75rem;
    overflow: visible;
    border-radius: 0;
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    background: transparent;
}
.hero-swipe__viewport {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 0;
    background: transparent;
}
.hero-swipe--peek .hero-swipe__viewport {
    overflow: hidden;
    /* 竖滑交给页面，横滑交给 JS；子元素不能再写 manipulation */
    touch-action: pan-y;
    cursor: grab;
    user-select: none;
    -webkit-user-select: none;
}
.hero-swipe--peek .hero-swipe__viewport:active {
    cursor: grabbing;
}
.hero-swipe--peek .hero-swipe__item,
.hero-swipe--peek .hero-swipe__slide {
    touch-action: pan-y;
    -webkit-user-drag: none;
}
.hero-swipe--peek .hero-swipe__slide img {
    pointer-events: none;
    -webkit-user-drag: none;
    touch-action: pan-y;
}
.hero-swipe__track {
    display: flex;
    width: 100%;
    height: 100%;
    transition: transform 0.26s ease;
    will-change: transform;
}
.hero-swipe--peek .hero-swipe__track {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    height: 100%;
    width: max-content;
    max-width: none;
    min-width: 0;
    box-sizing: border-box;
    gap: 0;
    padding: 0;
    margin: 0;
    background: transparent;
}
.hero-swipe__item {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    height: 100%;
    border-radius: var(--radius-M);
    box-sizing: border-box;
}
.hero-swipe--peek .hero-swipe__item {
    /* 宽度只由 JS 写死 px，避免 max-content 下 % 基准不确定 */
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    height: 100%;
    border-radius: 0.875rem;
    overflow: hidden;
    min-width: 0;
    box-sizing: border-box;
    margin: 0;
    background: transparent;
}
/* 只有一张：不走露边那档空隙，跟内容区同一侧边距，居中，不出圆点 */
.hero-swipe--single,
.hero-swipe--peek:has(.hero-swipe__item:only-child) {
    height: 9.75rem;
    overflow: visible;
    border-radius: 0;
}
.hero-swipe--single .hero-swipe__track,
.hero-swipe--peek:has(.hero-swipe__item:only-child) .hero-swipe__track {
    width: 100%;
    justify-content: center;
}
.hero-swipe--single .hero-swipe__item,
.hero-swipe--peek:has(.hero-swipe__item:only-child) .hero-swipe__item {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-inline: auto;
}
.hero-swipe--single .hero-swipe__pagination,
.hero-swipe--peek:has(.hero-swipe__item:only-child) .hero-swipe__pagination {
    display: none;
}
.hero-swipe__debug {
    position: absolute;
    inset: 0;
    z-index: 5;
    pointer-events: none;
    font: 10px/1.2 ui-monospace, monospace;
}
.hero-swipe__debug-guide {
    position: absolute;
    top: 0;
    bottom: 0;
    border-left: 1px dashed rgba(255, 0, 128, 0.85);
    box-sizing: border-box;
}
.hero-swipe__debug-guide--main {
    background: rgba(0, 160, 255, 0.08);
    border-left: 1px solid rgba(0, 120, 255, 0.9);
    border-right: 1px solid rgba(0, 120, 255, 0.9);
}
.hero-swipe__debug-hud {
    position: absolute;
    top: 0.25rem;
    left: 0.25rem;
    right: 0.25rem;
    padding: 0.25rem 0.35rem;
    border-radius: 0.25rem;
    background: rgba(0, 0, 0, 0.72);
    color: #fff;
    white-space: pre-wrap;
}
.hero-swipe__debug-hud.is-bad {
    background: rgba(160, 0, 0, 0.85);
}
.hero-swipe__debug-hud.is-ok {
    background: rgba(0, 100, 40, 0.85);
}
.solid-home-content-list,
.solid-module-host,
.solid-tabs__panels,
.solid-tabs__content,
.solid-page-panel {
    min-width: 0;
}
.solid-module-host {
    width: 100%;
}
.hero-swipe__pagination {
    position: absolute;
    bottom: 0.5rem;
    left: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    width: 100%;
    pointer-events: none;
}
.hero-swipe--peek .hero-swipe__pagination {
    /* 相对居中主图（主图在视口正中）水平居中 */
    left: 50%;
    right: auto;
    bottom: 0.5rem;
    width: auto;
    transform: translateX(-50%);
    justify-content: center;
}
.hero-swipe__dot {
    width: 0.5rem;
    height: 0.5rem;
    margin: 0 0.125rem;
    border: 0;
    border-radius: 50%;
    padding: 0;
    opacity: 0.4;
    background: var(
        --Semantic-Swipe-Indicator-Inactive,
        rgba(255, 255, 255, 0.4)
    );
    pointer-events: auto;
}
.hero-swipe__dot--active {
    width: 1rem;
    border-radius: 0.3125rem;
    opacity: 1;
    background: var(--Semantic-Swipe-Indicator-Active, #ffffff);
}
.hero-swipe--peek .hero-swipe__dot {
    width: 0.375rem;
    height: 0.375rem;
    opacity: 1;
    background: rgba(255, 255, 255, 0.55);
}
.hero-swipe--peek .hero-swipe__dot--active {
    width: 1rem;
    height: 0.375rem;
    border-radius: 62.4375rem;
    background: #ffffff;
}
.hero-swipe .hero-swipe__slide {
    width: 100%;
    height: 100%;
    display: block;
    border: none;
    padding: 0;
    background: transparent;
    cursor: pointer;
    line-height: 0;
    box-sizing: border-box;
}
.hero-swipe--peek .hero-swipe__slide,
.hero-swipe--single .hero-swipe__slide {
    border-radius: 0.875rem;
    overflow: hidden;
}
.hero-swipe--peek .swipeImg,
.hero-swipe--peek .solid-image,
.hero-swipe--peek .solid-image > img,
.hero-swipe--single .swipeImg,
.hero-swipe--single .solid-image,
.hero-swipe--single .solid-image > img {
    width: 100%;
    height: 100%;
    border-radius: 0.875rem;
    object-fit: cover;
}
.my-notice {
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 1.875rem;
    padding: 0 0.75rem;
    background: var(
        --Semantic-Notice-Bar-Background,
        rgba(255, 255, 255, 0.08)
    );
    border-radius: var(--radius-M);
    overflow: hidden;
}
.my-notice--top {
    width: auto;
    height: 1.9375rem;
    margin: 0.5rem 0 0;
    border-radius: 1rem;
    padding: 0 0.75rem;
}
.top-notice__viewport {
    display: flex;
    align-items: center;
    flex: 1;
    min-width: 0;
    height: 100%;
    overflow: hidden;
}
.top-notice__item {
    flex: 0 0 auto;
    height: 1.875rem;
    line-height: 1.875rem;
    padding-right: 2rem;
    font-size: 0.8125rem;
    color: var(--Semantic-Text-Primary, #ffffff);
    white-space: nowrap;
}
.my-notice--top .top-notice__item {
    height: 1.9375rem;
    line-height: 1.9375rem;
    font-size: 0.75rem;
}
.top-notice__track {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    width: max-content;
    will-change: transform;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}
.top-notice__track.is-scrolling {
    animation: notice-text-marquee var(--notice-marquee-duration, 18s) linear infinite;
    -webkit-animation: notice-text-marquee var(--notice-marquee-duration, 18s) linear
        infinite;
}
@keyframes notice-text-marquee {
    0% {
        transform: translateZ(0);
        -webkit-transform: translate3d(0, 0, 0);
    }
    to {
        transform: translate3d(-50%, 0, 0);
        -webkit-transform: translate3d(-50%, 0, 0);
    }
}
@-webkit-keyframes notice-text-marquee {
    0% {
        transform: translateZ(0);
        -webkit-transform: translate3d(0, 0, 0);
    }
    to {
        transform: translate3d(-50%, 0, 0);
        -webkit-transform: translate3d(-50%, 0, 0);
    }
}
@media (prefers-reduced-motion: reduce) {
    .top-notice__track.is-scrolling {
        animation: none;
        -webkit-animation: none;
    }
}
[data-template="glow-black"] {
    background-color: var(--Template-Glow-Background);
}
[data-template="glow-black"] body {
    background: #040404;
    min-height: 100svh;
}
[data-template="glow-black"] body:before {
    content: "";
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    pointer-events: none;
    background: #040404;
}
[data-template="glow-black"] #app {
    position: relative;
    z-index: 1;
    background: #040404;
    min-height: 100svh;
}
[data-template="glow-black"] .home,
[data-template="glow-black"] .solid-home {
    background: transparent;
}
[data-template="glow-black"] .home-content,
[data-template="glow-black"] .solid-home__content {
    padding: 0 0 1rem;
}
[data-template="glow-black"] .solid-group-tabs-panel {
    background: transparent;
}
/* 导航区对齐设计稿 375：左右 8 / 顶 12 / 公告 36 / 公告→Tab 15 / Tab 高 33 / Tab→内容 8 */
[data-template="glow-black"] .home-content,
[data-template="glow-black"] .solid-home__content {
    padding: 0;
}
/* 设计稿导航：375 宽 / notice↔tab gap 15 / tab 高 33.33 / 未选 14·选中 16 / 微笑弧 */
[data-template="glow-black"] .solid-tabs__shell {
    width: 100%;
    margin: 0;
    padding: 0.75rem 0.5rem 0; /* 底距交给 panels，Tab→内容合计约 8px */
    box-sizing: border-box;
    background: #040404;
    border-radius: 0; /* 与下方黑底内容区同色，去底圆角避免角上露白 */
    transition: box-shadow 0.2s ease;
    display: flex;
    flex-direction: column;
    gap: 0.9375rem;
}
[data-template="glow-black"] .solid-tabs__shell.is-scrolled {
    box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.28);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}
[data-template="glow-black"] .solid-tabs__nav {
    height: 2.083125rem;
    justify-content: space-between;
    align-items: stretch;
    gap: 0;
}
[data-template="glow-black"] .solid-tabs__tab {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
    height: 2.083125rem;
    padding: 0;
    align-items: flex-start;
    justify-content: center;
    color: #d0d0d0;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1rem;
    white-space: nowrap;
    text-shadow: none;
    filter: none;
}
/* 未选中：素色灰字；选中才用青绿渐变 */
[data-template="glow-black"] .solid-tabs__tab .solid-top-title,
[data-template="glow-black"] .solid-tabs__tab .solid-top-title span {
    background-image: none;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    color: inherit;
    -webkit-text-fill-color: currentColor;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-shadow: none;
}
[data-template="glow-black"] .solid-tabs__tab--active {
    color: transparent;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1rem;
    filter: none;
    text-shadow: none;
}
[data-template="glow-black"] .solid-tabs__tab--active .solid-top-title,
[data-template="glow-black"] .solid-tabs__tab--active .solid-top-title span {
    background-image: linear-gradient(
        180deg,
        #abff5b 0%,
        #3bc383 100%
    );
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1rem;
    text-shadow: none;
}
/* 微笑弧：32×13；文字 16 + 间距 ~2 + 弧 13 ≈ Tab 高 33.33 */
[data-template="glow-black"] .solid-tabs__tab--active:after {
    width: 2rem;
    height: 0.8125rem;
    top: 1.125rem;
    bottom: auto;
    background-color: transparent;
    background-image: url("../assets/tab-smile.png");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 2rem 0.8125rem;
    border-radius: 0;
    box-shadow: none;
    filter: none;
}
[data-template="glow-black"] .my-notice--top {
    width: 100%;
    height: 2.25rem;
    margin: 0;
    padding: 0 0.75rem;
    gap: 0.46875rem;
    border: none;
    border-radius: 62.4375rem;
    background: #222222;
    box-shadow: 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.1);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    overflow: hidden;
}
/* 通知喇叭：设计稿 notification 资源 16×16 */
[data-template="glow-black"] .my-notice--top .k8-top-notice__icon {
    position: static;
    flex-shrink: 0;
    width: 1rem;
    height: 1rem;
    transform: none;
    background-color: transparent;
    background-image: url("../assets/notice-megaphone.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1rem 1rem;
    filter: none;
    -webkit-mask: none;
    mask: none;
}
[data-template="glow-black"] .my-notice--top .top-notice__viewport {
    height: 2.25rem;
}
[data-template="glow-black"] .my-notice--top .top-notice__item {
    height: 2.25rem;
    line-height: 2.25rem;
    font-size: 0.8125rem;
    font-weight: 400;
    color: #d0d0d0;
}
[data-template="glow-black"] .my-notice--top .top-notice__download {
    display: none;
}
[data-template="glow-black"] .solid-tabs__panels,
[data-template="glow-black"] .solid-tabs__content {
    background: #040404;
    padding: 0.5rem 0.5rem 1.25rem; /* 顶 8：Tab→内容 */
    margin: 0;
    box-sizing: border-box;
}
[data-template="glow-black"] .solid-home-content-list {
    gap: 0.75rem;
}
[data-template="glow-black"] .solid-module-host:has(.hero-swipe--peek):not(:has(.hero-swipe__item:only-child)) {
    width: calc(100% + 1rem);
    max-width: none;
    margin-inline: -0.5rem;
    padding-inline: 0;
}
[data-template="glow-black"] .hero-swipe--peek .hero-swipe__item,
[data-template="glow-black"] .hero-swipe--peek .hero-swipe__slide,
[data-template="glow-black"] .hero-swipe--peek .swipeImg,
[data-template="glow-black"] .hero-swipe--peek .solid-image,
[data-template="glow-black"] .hero-swipe--peek .solid-image > img,
[data-template="glow-black"] .hero-swipe--single .hero-swipe__item,
[data-template="glow-black"] .hero-swipe--single .hero-swipe__slide,
[data-template="glow-black"] .hero-swipe--single .swipeImg,
[data-template="glow-black"] .hero-swipe--single .solid-image,
[data-template="glow-black"] .hero-swipe--single .solid-image > img,
[data-template="glow-black"] .swipeImg {
    border-radius: 0.75rem;
}
[data-template="glow-black"] .solid-mod.iconCover,
[data-template="glow-black"] .card-medium-wrap .cardSmall,
[data-template="glow-black"] .cardSmall .description,
[data-template="glow-black"] .solid-mod.sectionCard .mod-itm,
[data-template="glow-black"] .solid-mod.doubleCapsule .mod-itm,
[data-template="glow-black"] .solid-mod.fullWidthCard .widthCard-itm {
    border: none;
}
[data-template="glow-black"] .solid-mod.doubleColumnAlbum .mod-content {
    margin-top: 0.5rem;
    row-gap: 0.5rem;
    column-gap: 0.5rem;
}
[data-template="glow-black"] .solid-mod.doubleColumnAlbum .mod-itm {
    background: #222222;
    border: 0.125rem solid #164635; /* 设计稿 2px */
    box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.08);
}
[data-template="glow-black"] .solid-mod.doubleColumnAlbum .album-info {
    background: #222222;
    padding: 0.75rem 0.55rem 0.5rem;
    gap: 0.25rem;
}
[data-template="glow-black"] .solid-mod.doubleColumnAlbum .album-info .name {
    color: #ffffff;
}
[data-template="glow-black"] .solid-mod.doubleColumnAlbum .album-dist {
    color: #b2b9ca;
}
[data-template="glow-black"] .solid-mod.doubleColumnAlbum .album-line__label {
    color: #8a8a8a;
}
[data-template="glow-black"] .solid-mod.doubleColumnAlbum .album-line__text {
    color: #d0d0d0;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm,
[data-template="glow-black"] .solid-mod.doubleCapsule .mod-itm,
[data-template="glow-black"] .solid-mod.fullWidthCard .widthCard-itm,
[data-template="glow-black"] [data-module-type="文本+按钮"] > .cardSmall {
    background: #222222;
    border: 0.0625rem solid #164635;
    box-shadow: 0 0.0625rem 0.375rem rgba(0, 0, 0, 0.06);
}
/* 通栏卡片（情趣列表）：收紧行距与内边距 */
[data-template="glow-black"] .solid-mod.fullWidthCard .widthCard-content {
    margin-top: 0.5rem;
    row-gap: 0.5rem;
}
[data-template="glow-black"] .solid-mod.fullWidthCard .widthCard-content .widthCard-itm {
    gap: 0.625rem;
    padding: 0.5rem;
}
[data-template="glow-black"] .solid-mod.fullWidthCard .widthCard-content .widthCard-itm .widthCard-right .widthCard-xq .name {
    color: #ffffff;
}
[data-template="glow-black"] .solid-mod.fullWidthCard .widthCard-content .widthCard-itm .widthCard-right .widthCard-xq .xq {
    color: #8a8a8a;
}
[data-template="glow-black"] .solid-mod.fullWidthCard .widthCard-content .widthCard-itm .widthCard-right .myBtn {
    background: #51e094;
    color: #000000;
    font-weight: 400; /* 与「开始选妃」一致 */
}
[data-template="glow-black"] .card-medium-wrap .cardSmall {
    background: #222222;
    border: none;
    box-shadow: none;
}
[data-template="glow-black"] [data-module-type="文本+按钮"] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}
[data-template="glow-black"] [data-module-type="文本+按钮"] > .cardSmall {
    padding: 0.875rem;
    border-radius: var(--radius-L);
}
[data-template="glow-black"] [data-module-type="文本+按钮"] > .cardSmall .description {
    background: transparent;
    padding: 0;
    border-radius: 0;
}
[data-template="glow-black"] .solid-popup {
    background: #222222;
    color: #ffffff;
}
[data-template="glow-black"] .solid-danger-button,
[data-template="glow-black"] .solid-small-danger-button,
[data-template="glow-black"] .myBtn {
    background: #51e094;
    color: #000000;
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
    [data-template="glow-black"] .pc-download-header {
        background: linear-gradient(90deg, #040404, #51e094 52%, #0a0a0a);
    }
    [data-template="glow-black"] .pc-download-header__brand {
        color: #fff;
        text-shadow: 0 0.0625rem 0.5rem rgba(0, 0, 0, 0.18);
    }
    [data-template="glow-black"] .pc-download-header__qr {
        background: #d9d9d9;
        border-radius: 0.625rem;
        box-shadow: 0 0.125rem 0.625rem rgba(0, 0, 0, 0.16);
    }
    [data-template="glow-black"] .pc-download-header__tip {
        border-color: rgba(255, 255, 255, 0.95);
        color: #fff;
        background: transparent;
        box-shadow: 0 0.0625rem 0.375rem rgba(0, 0, 0, 0.12);
    }
}
.solid-page-panel[hidden],
.solid-tabs__panel[hidden] {
    display: none !important;
}
.solid-tabs__panels,
.solid-tabs__content {
    width: 100%;
}
.k8-top-notice__icon {
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
}
.mod-img > img,
.widthCard-img > img,
.itemImg > img,
.badge > img,
.title-img > img,
.solid-detail-pop .solid-popup-media-thumb .solid-image,
.solid-detail-pop .solid-popup-media-thumb img,
.solid-section-pop__media .solid-image,
.solid-section-pop__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.card-medium-wrap .cardSmall .mod-title-wrapper .description-wrapper {
    white-space: nowrap;
    flex-shrink: 0;
}
.card-medium-wrap .cardSmall .mod-title-wrapper .mod-title-line {
    flex-shrink: 1;
    min-width: 0;
}
.card-medium-wrap .cardSmall .mod-title-wrapper .mod-title-line .title-name {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
#glow-media-preview[hidden],
#glow-popup-root[hidden],
.solid-popup[hidden],
[data-popup-kind][hidden] {
    display: none !important;
}
button.itemImg,
button.detailImg.solid-popup-media-thumb,
button.solid-section-pop__media,
.itemImg[role="button"],
.detailImg.solid-popup-media-thumb[role="button"],
.solid-section-pop__media[role="button"] {
    border: 0;
    padding: 0;
    background: transparent;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    color: inherit;
    font: inherit;
}
.solid-section-pop__swipe {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    height: 23.4375rem;
    flex-shrink: 0;
    background: var(--Semantic-Card-Subtle, #33344c);
}
.solid-section-pop__media {
    flex: 0 0 100%;
    width: 100%;
    height: 100%;
    overflow: hidden;
    scroll-snap-align: start;
}

/* 标题在卡片外；深色卡片只包图标网格（色号：Linear #ABFF5B → #3BC383；字号 15px） */
[data-template="glow-black"] .title-line {
    height: auto;
    min-height: 0.9375rem; /* 15px */
    line-height: 0.9375rem;
    gap: 0.25rem;
    margin: 0 0 0.5rem;
    color: #3bc383;
    font-size: 0.9375rem;
    font-weight: 700;
}
[data-template="glow-black"] .title-line .line {
    width: 1.125rem;
    height: 1.125rem;
    border-radius: 0.25rem;
    background: linear-gradient(145deg, #f6d27a 0%, #e2a83a 55%, #c48a28 100%);
    box-shadow: 0 0.0625rem 0.25rem rgba(196, 138, 40, 0.35);
}
[data-template="glow-black"] .title-line .line:after {
    font-size: 0.6875rem;
    color: #1a1a1a;
}
[data-template="glow-black"] .title-line__zh {
    background-image: linear-gradient(180deg, #abff5b 0%, #3bc383 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    font-weight: 700;
    font-size: 0.9375rem; /* 15px */
    line-height: 0.9375rem;
}
[data-template="glow-black"] .title-line__en {
    margin-left: -0.125rem; /* 抵消 gap，中英更近 */
    color: #3bc383;
    -webkit-text-fill-color: #3bc383;
    font-size: 0.5625rem; /* 约中文 60% → 9px */
    font-weight: 400;
    font-style: normal;
    font-synthesis: none;
    line-height: 0.9375rem;
}
[data-template="glow-black"] .solid-mod.iconCover {
    background: transparent;
    border-radius: 0;
    padding: 0;
}
[data-template="glow-black"] .solid-mod.iconCover .mod-content {
    margin-top: 0;
    padding: 0.625rem 0.5rem 0.75rem;
    background: #222222;
    border-radius: 0.75rem;
    column-gap: 0.5rem;
    row-gap: 0.75rem;
}
[data-template="glow-black"] .solid-mod.iconCover .mod-content .mod-itm .name {
    color: #ffffff;
    font-size: 0.8125rem;
    height: 1.25rem;
    line-height: 1.25rem;
}
[data-template="glow-black"] .solid-mod.iconCover .mod-content .mod-itm .mod-img {
    border-radius: 0.5rem;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper .mod-title-line .title-name,
[data-template="glow-black"] .cardSmall .description .description-text {
    color: #ffffff;
}
[data-template="glow-black"] .price,
[data-template="glow-black"] .item-price,
[data-template="glow-black"] .Semantic-Accent-Price {
    color: #ffe566;
}

/* —— 情趣专区（新葡京 / sectionCard）：绿名 / 黄价 / 绿星 —— */
[data-template="glow-black"] .solid-mod.sectionCard {
    background: transparent;
    padding: 0;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content {
    margin-top: 0.5rem;
    row-gap: 0.5rem;
    column-gap: 0.5rem;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm,
[data-template="glow-black"] .solid-mod.sectionCard .mod-itm {
    background: #222222 !important;
    border: 0.0625rem solid #164635 !important;
    border-radius: 0.75rem;
    padding: 0;
    overflow: hidden;
    box-shadow: none !important;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-img {
    border-radius: 0;
    aspect-ratio: 1 / 1;
    background: #1a1a1a;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom {
    margin-top: 0;
    padding: 0.5rem 0.5rem 0.625rem;
    gap: 0.25rem;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom .name {
    color: #51e094;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom .meta-body {
    align-items: flex-end;
    gap: 0.375rem;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom .meta-left {
    gap: 0.1875rem;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom .meta-right {
    gap: 0.1875rem;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom .money {
    color: #ffe566;
    font-size: 1.0625rem;
    font-weight: 700;
    line-height: 1.2;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom .money span {
    color: #ffe566;
    font-size: 0.8125rem;
    font-weight: 600;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom .sold,
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom .reviews {
    color: #8a8a8a;
    font-size: 0.6875rem;
    line-height: 1.2;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom .stars {
    gap: 0.125rem;
}
[data-template="glow-black"] .solid-mod.sectionCard .mod-content .mod-itm .mod-bom .stars i {
    width: 0.6875rem;
    height: 0.6875rem;
    background: #51e094;
}

/* —— 博彩游戏：3 列深灰卡 / 绿推荐角标 / 白名 —— */
[data-template="glow-black"] .solid-mod.iconCover.iconCover--dl {
    background: transparent;
    padding: 0;
}
[data-template="glow-black"] .solid-mod.iconCover.iconCover--dl .mod-content,
[data-template="glow-black"] .solid-mod.iconCover--dl .mod-content {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    flex-direction: unset;
    flex-wrap: unset;
    align-items: stretch;
    overflow: visible !important;
    gap: 0.5rem;
    row-gap: 0.5rem;
    margin-top: 0.5rem;
    padding: 0 !important;
    background: transparent !important;
    border-radius: 0;
    scroll-snap-type: none;
    touch-action: auto;
}
[data-template="glow-black"] .solid-mod.iconCover--dl .mod-content .mod-itm {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    flex: unset !important;
    width: 100% !important;
    height: 6.75rem !important;
    min-height: 6.75rem;
    aspect-ratio: unset;
    margin: 0;
    padding: 0.625rem 0.375rem 0.375rem;
    gap: 0.25rem;
    background: #222222 !important;
    border: none !important;
    border-radius: 0.75rem;
    box-shadow: none;
    scroll-snap-align: unset;
    overflow: hidden;
    box-sizing: border-box;
}
[data-template="glow-black"] .solid-mod.iconCover--dl .mod-badge {
    width: 3.25rem; /* 设计稿 tj-icon 52×30 @1x */
}
[data-template="glow-black"] .solid-mod.iconCover--dl .mod-content .mod-itm .mod-img {
    width: 3.75rem;
    height: 3.75rem;
    aspect-ratio: 1 / 1;
    margin: 0.25rem auto 0;
    border-radius: 0.625rem;
    background: #1a1a1a;
    box-shadow: none;
    flex-shrink: 0;
}
[data-template="glow-black"] .solid-mod.iconCover--dl .mod-content .mod-itm .name {
    color: #ffffff !important;
    font-family:
        PingFang SC,
        Microsoft YaHei,
        Arial,
        Helvetica,
        sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    height: 1rem;
    min-height: 1rem;
    margin-top: auto;
    padding: 0 0.125rem;
    line-height: 1;
    text-align: center;
    flex-shrink: 0;
}

/* 分区标题图标：情趣=药瓶 / 博彩=骰子（青绿底） */
[data-template="glow-black"] [data-module-type="新葡京"] .title-line .line {
    background: linear-gradient(160deg, #7dffb5 0%, #51e094 55%, #2bb86e 100%);
    border-radius: 0.25rem;
    box-shadow: 0 0.0625rem 0.25rem rgba(81, 224, 148, 0.35);
}
[data-template="glow-black"] [data-module-type="新葡京"] .title-line .line:after {
    content: "";
    color: transparent;
    background: center / 70% 70% no-repeat
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Crect x='4' y='7' width='6' height='12' rx='1.2' fill='%23fff'/%3E%3Crect x='14' y='5' width='6' height='14' rx='1.2' fill='%23e8fff3'/%3E%3Crect x='5.2' y='9' width='3.6' height='1.2' rx='0.4' fill='%232bb86e'/%3E%3Crect x='15.2' y='7.5' width='3.6' height='1.2' rx='0.4' fill='%232bb86e'/%3E%3C/svg%3E");
}
[data-template="glow-black"] [data-module-type="下载图标"] .title-line .line {
    background: linear-gradient(160deg, #7dffb5 0%, #51e094 55%, #2bb86e 100%);
    border-radius: 0.25rem;
    box-shadow: 0 0.0625rem 0.25rem rgba(81, 224, 148, 0.35);
}
[data-template="glow-black"] [data-module-type="下载图标"] .title-line .line:after {
    content: "";
    color: transparent;
    background: center / 78% 78% no-repeat
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Crect x='2.8' y='4.2' width='10.2' height='10.2' rx='1.6' transform='rotate(-12 7.9 9.3)' fill='%23fff' stroke='%23e8fff3' stroke-width='0.6'/%3E%3Ccircle cx='6.2' cy='7.6' r='1.05' fill='%232bb86e'/%3E%3Ccircle cx='9.6' cy='11.2' r='1.05' fill='%232bb86e'/%3E%3Crect x='11.2' y='9.2' width='10.2' height='10.2' rx='1.6' transform='rotate(16 16.3 14.3)' fill='%23e8fff3' stroke='%23fff' stroke-width='0.6'/%3E%3Ccircle cx='14.4' cy='12.6' r='1.05' fill='%2351e094'/%3E%3Ccircle cx='18.2' cy='16.4' r='1.05' fill='%2351e094'/%3E%3Ccircle cx='14.6' cy='16.6' r='1.05' fill='%2351e094'/%3E%3C/svg%3E");
}

/* —— 通栏大卡片：绿描边标签 + 白正文 + 青绿按钮 —— */
[data-template="glow-black"] .card-medium-wrap {
    gap: 0.75rem;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall {
    padding: 0.625rem;
    gap: 0.5rem;
    background: #222222 !important;
    border: none !important;
    border-radius: 1rem;
    box-shadow: none !important;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-img-line {
    gap: 0.375rem;
    column-gap: 0.375rem;
    row-gap: 0.375rem;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-img-line .itemImg {
    aspect-ratio: 106 / 148;
    border-radius: 0.5rem;
    background: #1a1a1a;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper {
    align-items: center;
    margin-top: 0.125rem;
    gap: 0.375rem;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper .description-position-wrapper {
    flex: 1 1 auto;
    min-width: 0;
    flex-wrap: wrap;
    gap: 0.375rem;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper .description-wrapper,
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper .position {
    padding: 0.1875rem 0.5rem;
    border-radius: 0.375rem;
    background: transparent;
    border: 0.0625rem solid #164635;
    box-shadow: none;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper .description-wrapper {
    color: #ffffff;
    font-size: 0.75rem;
    line-height: 1.125rem;
    background: none;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper .position .posiImg {
    display: none;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper .position .city {
    color: #ffffff;
    font-size: 0.75rem;
    line-height: 1.125rem;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper .position .city:before {
    content: "📍 ";
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper .mod-title-line {
    flex: 0 0 auto;
    margin-left: auto;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .mod-title-wrapper .mod-title-line .title-name {
    color: #ffffff;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.375rem;
    white-space: nowrap;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .description {
    margin-top: 0;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
    color: #ffffff;
    font-size: 0.8125rem;
    line-height: 1.375rem;
    word-break: break-word;
}
[data-template="glow-black"] .card-medium-wrap .cardSmall .myBtn {
    width: 12rem;
    max-width: 100%;
    height: 2.625rem;
    margin: 0.125rem auto 0;
    border-radius: 62.4375rem;
    background: #51e094;
    color: #000000;
    font-size: 0.875rem;
    font-weight: 400; /* 与「开始选妃」(文本+按钮) 一致 */
}

/* —— 直播卡：对齐设计稿（顶栏深色胶囊白字 / 底粉标+白标题） —— */
[data-template="glow-black"] .solid-mod.liveCard .mod-content {
    margin-top: 0.5rem;
    row-gap: 0.5rem;
    column-gap: 0.5rem;
}
[data-template="glow-black"] .solid-mod.liveCard .mod-itm {
    border: none;
    border-radius: 0.75rem;
    overflow: hidden;
    background: #1a1a1a;
}
[data-template="glow-black"] .solid-mod.liveCard .mod-itm .mod-img {
    border-radius: 0;
    background: #1a1a1a;
}
[data-template="glow-black"] .solid-mod.liveCard .mod-itm .livePeoNumber,
[data-template="glow-black"] .solid-mod.liveCard .mod-itm .liveIng {
    background: rgba(0, 0, 0, 0.55);
}
[data-template="glow-black"] .solid-mod.liveCard .mod-itm .livePeoNumber .liveStatus,
[data-template="glow-black"] .solid-mod.liveCard .mod-itm .liveIng .liveStatus {
    color: #ffffff;
}
[data-template="glow-black"] .solid-mod.liveCard .mod-itm .liveIng .liveBars .liveBar {
    background: #ffffff;
    box-shadow: none;
}
[data-template="glow-black"] .solid-mod.liveCard .mod-itm .bom .name {
    color: #ffffff;
}
[data-template="glow-black"] .solid-mod.liveCard .mod-itm .bom .hotTxt {
    background: linear-gradient(90deg, #fa63ae 0%, #fb3897 100%);
    color: #ffffff;
}
[data-template="glow-black"] .solid-mod.liveCard .mod-itm .bom .columnBtn {
    background: linear-gradient(90deg, #fa63ae 0%, #fb3897 100%);
    color: #ffffff;
}

/* Swiper owns all horizontal motion; the document keeps vertical scrolling. */
/* Without this, Safari lays out and first-paints a whole long page while it slides in (400ms+ frames). */
.tabs-swiper .solid-module-host { content-visibility: auto; contain-intrinsic-size: auto 400px; }

.solid-image.is-loading.is-offscreen .solid-image__shimmer,
.solid-mod.liveCard .mod-itm .liveIng .liveBars.is-offscreen .liveBar { animation: none; }

[data-template="glow-black"] .tabs-swiper { padding: 0; overflow: hidden; touch-action: pan-y; }
[data-template="glow-black"] .tabs-swiper .solid-page-panel { padding: .5rem .5rem 1.25rem; }
.tabs-swiper > .swiper-wrapper { align-items: flex-start; }
.tabs-swiper .solid-page-panel { box-sizing: border-box; flex-shrink: 0; }
.swiper { -webkit-user-select: none; user-select: none; }
.swiper img { -webkit-user-drag: none; }
.hero-swipe .swiper-wrapper { width: 100%; gap: 0; transition-timing-function: ease-out; }
.hero-swipe .swiper-slide { flex-shrink: 0; flex-basis: auto; max-width: none; }
#glow-media-preview .media-swiper { width: 100%; overflow: hidden; display: block; }
.media-swiper > .swiper-wrapper, .media-swiper .swiper-slide { height: 100%; }
.media-swiper .media-wrapper { display: grid; place-items: center; }
.media-swiper .solid-image { width: auto; height: auto; max-width: 100%; max-height: calc(100vh - 6.375rem - env(safe-area-inset-bottom)); }
.media-swiper .solid-image > img.full-media { width: auto; height: auto; max-width: 100%; max-height: calc(100vh - 6.375rem - env(safe-area-inset-bottom)); object-fit: contain; }

/* Animate the horizontal transform only; interpolating a long page's height relayouts every frame. */
.tabs-swiper.swiper-autoheight > .swiper-wrapper { transition-property: transform; }
