/* Java migration fixes for product detail rendering and legacy lazy assets. */

.wrap-details .common-tit h2,
.wrap-details-3d .common-tit h2,
.solution-show .common-tit h2,
.wrap-product .common-tit h2,
.wrap-solution .common-tit h2 {
    letter-spacing: 0;
    line-height: 1.22;
    text-wrap: balance;
}

.wrap-details .common-txt,
.wrap-details-3d .common-txt,
.solution-show .common-txt {
    max-width: 980px;
}

.wrap-details .common-txt p,
.wrap-details-3d .common-txt p,
.solution-show .common-txt p {
    line-height: 1.75;
}

.wrap-details-3d .three-d {
    position: relative;
    background: linear-gradient(180deg, #08256d 0%, #0b2f88 100%);
}

.wrap-details-3d .three-d .group {
    margin-top: 48px;
}

.wrap-details-3d .iframe-group {
    width: min(100%, 1480px);
    height: clamp(560px, 72vh, 860px);
    margin: 0 auto;
    overflow: hidden;
    border-radius: 0;
    background: #f5fbff;
    box-shadow: 0 22px 70px rgba(3, 30, 89, .2);
}

.wrap-details-3d .iframe-group iframe {
    width: 100%;
    height: 100%;
    display: block;
    border: 0;
    background: #f5fbff;
}

.wrap-details-3d .common-menu,
.wrap-details .common-menu {
    pointer-events: none;
}

.wrap-details-3d .common-menu .info,
.wrap-details .common-menu .info {
    pointer-events: auto;
}

.wrap-details .introduce .info,
.wrap-details-3d .three-d .info,
.solution-show .introduce .info {
    min-width: 0;
}

.wrap-details .core-advantage .group,
.wrap-details-3d .core-advantage .group {
    position: relative;
}

.wrap-details .core-advantage .group .group-pic img,
.wrap-details-3d .core-advantage .scene img,
.wrap-details-3d .platform-advantage img,
.wrap-details-3d .hardware-advantage img,
.wrap-details-3d .quality-assurance img,
.wrap-details .platform-advantage img,
.wrap-details .hardware-advantage img,
.wrap-details .quality-assurance img,
.solution-show img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

.wrap-details .core-advantage .group .item,
.wrap-details-3d .core-advantage .group .item {
    overflow: visible;
}

.wrap-details .platform-advantage .right .pic,
.wrap-details-3d .platform-advantage .right .pic,
.wrap-details .quality-assurance .left .pic,
.wrap-details-3d .quality-assurance .left .pic {
    min-height: 280px;
    background: rgba(245, 251, 255, .78);
    display: flex;
    align-items: center;
    justify-content: center;
}

.wrap-details .slick-hardware,
.wrap-details-3d .slick-hardware,
.solution-show .slick-hardware {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 28px;
}

.wrap-details .slick-hardware .item,
.wrap-details-3d .slick-hardware .item,
.solution-show .slick-hardware .item {
    min-width: 0;
}

.wrap-details .slick-hardware .item .pic,
.wrap-details-3d .slick-hardware .item .pic,
.solution-show .slick-hardware .item .pic {
    background: linear-gradient(180deg, #fff, #edf7ff);
    border: 1px solid rgba(35, 86, 167, .12);
    border-radius: 18px;
    overflow: hidden;
}

.wrap-details .slick-hardware .item .pic img,
.wrap-details-3d .slick-hardware .item .pic img,
.solution-show .slick-hardware .item .pic img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    display: block;
}

.wrap-details .slick-application,
.wrap-details-3d .slick-application,
.solution-show .slick-application {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 28px;
}

.wrap-details .slick-application .pic img,
.wrap-details-3d .slick-application .pic img,
.solution-show .slick-application .pic img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
}


@media (max-width: 1199px) {
    .wrap-details-3d .three-d .group {
        margin-top: 28px;
    }
    .wrap-details-3d .iframe-group {
        height: min(76vh, 620px);
        border-radius: 0;
    }
}

@media (max-width: 767px) {
    .wrap-details-3d .iframe-group {
        height: 560px;
    }
    .wrap-details .common-tit h2,
    .wrap-details-3d .common-tit h2,
    .solution-show .common-tit h2,
    .wrap-product .common-tit h2,
    .wrap-solution .common-tit h2 {
        font-size: 30px;
        line-height: 1.18;
    }
}

/* Stable rendering overrides for Java-migrated public pages. */
.wow,
.fadeIn,
.fadeInUp,
.fadeInDown,
.fadeInLeft,
.fadeInRight {
    visibility: visible !important;
}



.wrap-details-3d .core-advantage .info .group .row {
    row-gap: 24px;
}

.wrap-details-3d .core-advantage .info .group .row .col-12 {
    display: flex;
}

.wrap-details-3d .core-advantage .info .group .row .item {
    width: 100%;
}

.wrap-details-3d .core-advantage .info .group .row .item-box {
    display: flex;
}

.wrap-details-3d .core-advantage .scene .box:not(.on) {
    display: none;
}


.wrap-solution .wow,
.solution-show .wow,
.home-case .wow,
.home-brand .wow,
.customer-cases-wrap .wow {
    visibility: visible !important;
}

.wrap-solution .info .platform .main-area:empty,
.wrap-solution .info .platform:empty,
.quality:empty,
.hardware-advantage:empty {
    display: none !important;
}

@media (max-width: 1199px) {
    .wrap-details-3d .iframe-group {
        height: min(680px, 74vh);
    }
}

@media (max-width: 767px) {
    .wrap-details-3d .iframe-group {
        height: 620px;
    }
}
.wrap-home .home-mark .pic-bg {
    min-height: 680px;
}

.wrap-home .home-mark .pic-bg > img[src*="h_mark_bg"] {
    display: block;
}

.wrap-home .home-mark .pic-bg .model-product {
    z-index: 3;
    width: min(78vw, 860px);
    height: min(72vh, 680px);
    cursor: grab;
}

.wrap-home .home-mark .pic-bg .model-product:active {
    cursor: grabbing;
}

.wrap-home .home-mark .pic-bg .home-fbx-viewer {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.wrap-home .home-mark .pic-bg .home-fbx-viewer::before {
    content: "模型加载中";
    position: absolute;
    z-index: 1;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, .86);
    font-size: 16px;
    letter-spacing: .08em;
    text-shadow: 0 2px 12px rgba(35, 86, 167, .35);
    pointer-events: none;
}

.wrap-home .home-mark .pic-bg .home-fbx-viewer.is-loaded::before {
    display: none;
}

.wrap-home .home-mark .pic-bg .home-fbx-viewer.is-error::before {
    content: "模型加载失败，请刷新";
}

.wrap-home .home-mark .pic-bg .home-fbx-viewer canvas {
    width: 100%;
    height: 100%;
    display: block;
    background: transparent;
}

@media (max-width: 991px) {
    .wrap-home .home-mark .pic-bg {
        min-height: 520px;
    }

    .wrap-home .home-mark .pic-bg .model-product {
        width: 100%;
        height: 58vh;
    }
}


/* P3-11: case page desktop category filter tabs */
.wrap-case .xs-select-info {
    display: block;
    padding-top: 40px;
}
.wrap-case .xs-select-info ul {
    justify-content: center;
}
@media (min-width: 1200px) {
    .wrap-case .xs-select-info ul li {
        width: auto;
    }
}

/* Sitemap tree hierarchy — match PHP source */
.wrap-sitemap .sitemap > ul > li > ul {
    padding-left: 28px;
    margin-top: 6px;
}
.wrap-sitemap .sitemap > ul > li > ul > li > a {
    background: #f6f8f6 !important;
    color: #888 !important;
    font-size: 16px !important;
    font-weight: normal !important;
    padding: 10px 30px;
    min-width: 200px;
}
.wrap-sitemap .sitemap > ul > li > ul > li > ul {
    padding-left: 28px;
    margin-top: 6px;
}
.wrap-sitemap .sitemap > ul > li > ul > li > ul > li {
    display: inline;
    vertical-align: top;
}
.wrap-sitemap .sitemap > ul > li > ul > li > ul > li > a {
    font-size: 14px !important;
    font-weight: normal !important;
    margin-top: 10px;
    min-width: auto;
}
