﻿:root{--blue:#075ec4;--blue2:#2385ee;--ink:#111827;--muted:#6b7280;--line:#e7edf5;--soft:#f5f7fb;--green:#15b86a;--amber:#d97706}*{box-sizing:border-box}body{margin:0;font-family:"Microsoft YaHei",Arial,sans-serif;color:var(--ink);background:#f4f6fa}button,input{font:inherit}button{cursor:pointer}.hidden{display:none!important}.seal{width:56px;height:56px;border:2px solid rgba(255,255,255,.9);border-radius:50%;background:radial-gradient(circle,transparent 27%,rgba(255,255,255,.45) 28% 31%,transparent 32%),var(--blue2);display:inline-block}.seal.small{width:50px;height:50px}.entry-page{min-height:100vh;display:grid;place-items:center;background:#eef3fa}.entry{width:min(760px,calc(100% - 40px));padding:56px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 40px rgba(15,23,42,.1);text-align:center}.entry-brand{display:flex;justify-content:center;align-items:center;gap:12px;color:var(--blue);margin-bottom:28px}.entry-brand strong{display:block;font-size:28px}.entry-brand em{font-style:normal;font-size:12px}.entry h1{font-size:34px;margin:0 0 12px}.entry p{color:var(--muted);font-size:18px}.entry-actions{display:flex;justify-content:center;gap:16px;margin-top:34px}.entry-actions a{padding:13px 24px;background:var(--blue2);color:#fff;text-decoration:none;border-radius:4px;font-weight:700}.entry-actions a:last-child{background:#0f172a}.pc-header{height:84px;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(46px,calc((100vw - 1260px)/2));}.pc-brand{display:flex;align-items:center;gap:12px}.pc-brand strong{display:block;font-size:28px;line-height:1}.pc-brand em{display:block;font-style:normal;font-size:12px;margin-top:4px}.pc-nav{display:flex;gap:58px;height:100%;align-items:center}.pc-nav button{height:100%;border:0;background:transparent;color:rgba(255,255,255,.86);font-size:17px;font-weight:700;position:relative}.pc-nav button.active:after{content:"";position:absolute;left:50%;bottom:18px;width:34px;height:5px;border-radius:6px;background:#fff;transform:translateX(-50%)}.pc-hero{width:min(1260px,calc(100% - 48px));height:230px;margin:0 auto;background:linear-gradient(90deg,rgba(7,94,196,.42),rgba(255,255,255,.08)),url("./assets/pc-custom-banner-user-compressed.png") center center/cover no-repeat}.pc-shell{width:min(1260px,calc(100% - 48px));min-height:690px;margin:0 auto;background:#fff;box-shadow:0 2px 18px rgba(11,43,92,.08);display:grid;grid-template-columns:230px 1fr;gap:64px;padding:0 58px 74px 26px}.pc-side{border-left:10px solid var(--blue2);transform:translateY(-40px);align-self:start}.pc-side h2{height:66px;margin:0;padding-left:30px;display:flex;align-items:center;background:var(--blue2);color:#fff;font-size:24px}.pc-side button{width:100%;min-height:58px;border:0;border-bottom:1px solid #edf0f5;background:#fff;color:#1f2937;text-align:left;padding:0 26px;font-size:20px}.pc-side button.active{background:#dcebff;color:#0b5fbd;font-weight:700}.pc-content{padding-top:56px}.pc-content h1{text-align:center;margin:0 0 34px;font-size:30px}.pc-content p{max-width:830px;margin:0 auto 14px;color:#4b5563;font-size:20px;line-height:1.85;font-weight:600}.pc-search{display:flex;justify-content:flex-end;gap:14px;margin-bottom:32px}.pc-search input{width:360px;height:44px;border:1px solid var(--line);border-radius:4px;padding:0 18px;outline:none}.pc-search button{width:72px;border:0;border-radius:5px;background:var(--blue2);color:#fff;font-weight:700}.pc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.pc-card{position:relative;min-height:250px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;box-shadow:0 3px 12px rgba(16,24,40,.04)}.pc-card span{position:absolute;right:16px;top:18px;padding:7px 12px;border-radius:999px;background:#dcfce7;color:var(--green);font-size:13px;font-weight:700}.pc-img{height:166px;background:#f8fafc url("./assets/pc-service-reference.jpg") no-repeat;background-size:920px auto}.pc-a{background-position:-318px -400px}.pc-b{background-position:-585px -398px}.pc-c{background-position:-815px -405px}.pc-d{background-position:-1058px -405px}.pc-card h3{font-size:18px;margin:18px 18px 10px}.pc-card p{font-size:14px;line-height:1.4;margin:0 18px;color:var(--muted);font-weight:400}.pc-pager{display:flex;justify-content:center;gap:8px;margin-top:50px}.pc-pager button{width:38px;height:38px;border:1px solid #d9e0ea;border-radius:4px;background:#fff;color:#687382}.pc-pager .active{background:var(--blue2);border-color:var(--blue2);color:#fff}.pc-footer{margin-top:0;text-align:center;color:#fff;background:linear-gradient(90deg,#2f87ee,#92c8ff)}.pc-footer div{height:104px;display:flex;align-items:center;justify-content:center;gap:14px}.pc-footer strong{font-size:27px}.pc-footer em{display:block;font-style:normal;font-size:12px}.pc-footer p{height:44px;margin:0;display:grid;place-items:center;background:var(--blue)}.mobile-page{min-height:100vh;background:#f2f4f8;display:grid;place-items:start center;padding:44px 0}.mobile-app{position:relative;width:430px;min-height:840px;background:#fff;border:12px solid #1f2937;border-radius:44px;overflow:hidden;box-shadow:0 30px 80px rgba(15,23,42,.18)}.mobile-screen{display:none;padding:24px 22px 86px}.mobile-screen.active{display:block}.status{display:flex;justify-content:space-between;align-items:center;height:30px;margin-bottom:28px}.mobile-top{display:flex;justify-content:space-between;align-items:center}.mobile-top h1,.mobile-screen>h1{font-size:28px;margin:0 0 26px}.bell{width:30px;height:30px;border:2px solid #64748b;border-radius:50%;background:#fff;position:relative}.bell:after{content:"";position:absolute;right:-3px;top:-5px;width:8px;height:8px;border-radius:50%;background:#ef4444}.mobile-search{height:58px;margin:32px 0;display:block}.mobile-search input,#mobileSearch{width:100%;height:58px;border:0;border-radius:16px;background:#f1f3f7;padding:0 20px;outline:none;font-size:17px}.mobile-banner{height:178px;border-radius:22px;color:#fff;display:flex;align-items:end;padding:0 22px 24px;font-size:21px;font-weight:800;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.62)),url("./assets/mobile-home-reference.png");background-size:620px auto;background-position:-160px -410px}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:34px 0}.quick button{height:66px;border:0;border-radius:50%;background:#eaf3ff;color:#2563eb;font-weight:700;font-size:12px}.mobile-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.mobile-section-head h2{font-size:24px;margin:0}.mobile-section-head button{border:0;background:transparent;color:#1d5cff}.featured{display:grid;grid-template-columns:1fr 1fr;gap:18px}.featured-card{border:1px solid var(--line);border-radius:18px;padding:12px;overflow:hidden}.featured-img{height:116px;border-radius:14px;background:url("./assets/mobile-home-reference.png") no-repeat;background-size:690px auto;background-position:-175px -835px}.featured-card:nth-child(2) .featured-img{background-position:-478px -835px}.featured-card h3{font-size:17px;margin:12px 0 4px}.featured-card p{margin:0;color:var(--muted);font-size:13px}.tabs{display:flex;gap:28px;overflow:auto;margin-bottom:28px}.tabs button{flex:0 0 auto;border:0;background:transparent;color:#6b7280;padding:0 0 10px;font-size:18px}.tabs button.active{color:#2563eb;border-bottom:3px solid #2563eb}.mobile-list{display:grid;gap:18px;max-height:620px;overflow:auto}.mobile-row{display:grid;grid-template-columns:118px 1fr;gap:22px;align-items:center;min-height:142px;border:1px solid var(--line);border-radius:18px;padding:18px;background:#fbfcfe}.thumb{width:118px;height:100px;border-radius:14px;background:url("./assets/mobile-list-reference.png") no-repeat;background-size:575px auto;background-position:-88px -367px}.mobile-row:nth-child(2) .thumb{background-position:-92px -542px}.mobile-row:nth-child(3) .thumb{background-position:-91px -720px}.mobile-row:nth-child(4) .thumb{background-position:-91px -898px}.mobile-row h3{font-size:22px;line-height:1.25;margin:0}.mobile-row p{margin:4px 0 0;color:#7b8493;font-size:17px}.state{display:inline-flex;margin-top:10px;padding:4px 12px;border-radius:999px;background:#dcfce7;color:var(--green);font-style:normal;font-size:14px}.state.busy{background:#fef3c7;color:var(--amber)}.bottom-nav{position:absolute;left:0;right:0;bottom:0;height:66px;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid #edf0f5}.bottom-nav button{border:0;background:transparent;color:#667085}.bottom-nav button.active{color:#2563eb}@media(max-width:760px){.entry{padding:34px 22px}.entry-actions{display:grid}.pc-header{display:block;height:auto;padding:20px}.pc-nav{margin-top:18px;height:48px}.pc-hero,.pc-shell{width:100%}.pc-shell{display:block;padding:0 22px 50px}.pc-side{transform:none;margin-bottom:24px}.pc-grid{grid-template-columns:1fr}.pc-search{display:block}.pc-search input{width:100%;margin-bottom:12px}.mobile-page{padding:0}.mobile-app{width:100%;min-height:100vh;border:0;border-radius:0}}
 .logo-img{display:block;width:256px;height:auto;object-fit:contain}.footer-logo-img{display:block;width:260px;height:auto;object-fit:contain}.pc-brand{min-width:280px}.pc-footer div{gap:0}





.service-tree .level-one{min-height:58px;display:flex;align-items:center;padding:0 24px;background:#fff;color:#0b5fbd;font-size:20px;font-weight:700;border-bottom:1px solid #edf0f5}.service-tree button{padding-left:42px}.service-content{padding-top:50px}.platform-summary{max-width:900px;margin:0 auto 28px}.platform-summary p{font-size:18px;line-height:1.75;margin-bottom:8px}.service-content .pc-search{margin-top:24px}
.service-tree .level-one{font-size:18px!important;white-space:nowrap;line-height:1.2;padding:0 18px!important;overflow:hidden;text-overflow:ellipsis}.service-tree button{font-size:18px!important;min-height:54px!important;padding-left:50px!important}.pc-side h2{font-size:22px!important}.pc-side{width:310px}.pc-shell{grid-template-columns:310px 1fr}
.compact-summary{max-width:980px!important;margin:0 auto 30px!important}.compact-summary p{font-size:17px!important;line-height:1.72!important;margin:0 0 8px!important;color:#405064!important;font-weight:600!important}
.service-tree .level-one.active{background:#dcebff!important;color:#0b5fbd!important}.service-tree .level-one{border:0;border-bottom:1px solid #edf0f5}.compact-summary.hidden,.pc-search.hidden,.pc-grid.hidden,.pc-pager.hidden{display:none!important}
.service-content h1{font-size:26px!important;line-height:1.25!important}
.pc-nav{transform:translateX(-120px)}
.pc-card span{display:none!important}
.pc-card h3{font-size:16px!important;line-height:1.35!important}
.pc-img{background-color:#f7f8fb!important;background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important}


.pc-page .pc-hero,
.pc-page .pc-shell {
  width: 80vw !important;
  min-width: 1180px !important;
  max-width: none !important;
}
.pc-page .pc-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 22px !important;
}
.pc-page .pc-card {
  min-height: 260px !important;
}
.pc-page .pc-img {
  height: 170px !important;
}
@media (max-width: 1200px) {
  .pc-page .pc-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

#platformIntro {
  width: min(820px, 86%) !important;
  margin: 0 auto 32px !important;
  padding: 0 !important;
}
#platformIntro p {
  max-width: none !important;
  text-align: left !important;
  font-size: 16px !important;
  line-height: 1.78 !important;
  margin: 0 0 12px !important;
  color: #34445a !important;
  font-weight: 600 !important;
}
.service-content h1 {
  width: min(820px, 86%) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 28px !important;
  text-align: center !important;
}
#platformIntro p{font-size:18px!important;line-height:1.78!important}
#platformIntro,.service-content h1{width:min(984px,96%)!important}
.pc-page .pc-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 26px !important;
}
.pc-page .pc-card {
  min-height: 284px !important;
}
.pc-page .pc-img {
  height: 192px !important;
}
@media (max-width: 1200px) {
  .pc-page .pc-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
#platformIntro,
.service-content h1 {
  width: min(1180px, 98%) !important;
}
#platformIntro p {
  font-weight: 400 !important;
  text-indent: 2em !important;
  font-size: 18px !important;
  line-height: 1.86 !important;
  margin-bottom: 10px !important;
  color: #3f4650 !important;
}
.service-content h1 {
  font-size: 26px !important;
  margin-bottom: 30px !important;
}


.pc-brand{transform:translateX(-160px)!important}


.pc-nav{transform:translateX(150px)!important}.pc-nav button{font-size:19px!important}
.pc-header {
  position: relative !important;
  padding: 0 !important;
}
.pc-header .pc-brand {
  position: absolute !important;
  left: 10vw !important;
  top: calc(50% + 6px) !important;
  height: 84px !important;
  transform: translateY(-50%) !important;
  display: flex !important;
  align-items: center !important;
}
.pc-header .pc-nav {
  position: absolute !important;
  right: calc(10vw + 100px) !important;
  top: 0 !important;
  height: 84px !important;
  display: flex !important;
  align-items: center !important;
  transform: none !important;
}
.pc-page .pc-shell {
  grid-template-columns: 217px 1fr !important;
  gap: 52px !important;
}
.pc-page .pc-side {
  width: 217px !important;
}
.pc-page .pc-side h2 {
  padding-left: 26px !important;
}
.pc-page .service-tree .level-one {
  font-size: 18px !important;
  padding: 0 14px !important;
}
.pc-page .service-tree button {
  font-size: 17px !important;
  padding-left: 38px !important;
}

.device-page {
  min-height: 100vh;
  min-width: 1432px;
  margin: 0;
  padding: 0;
  background: #f1f3f6;
  color: #1f2937;
  font-family: "Microsoft YaHei", Arial, sans-serif;
}
.device-panel {
  position: relative;
  width: 80vw;
  min-width: 1432px;
  max-width: none;
  margin: 0 auto;
  padding: 102px 126px 60px;
  background: #fff;
  border-radius: 0;
}
.device-close {
  position: absolute;
  top: 20px;
  right: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  box-sizing: border-box;
  border: 1px solid #b9d9fb;
  border-radius: 50%;
  background: #e8f3ff;
  color: #2878c8;
  box-shadow: 0 3px 10px rgba(40, 120, 200, 0.16);
  text-decoration: none;
  font-size: 0;
  transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.device-close::before,
.device-close::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 17px;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
}

.device-close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.device-close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.device-close:hover {
  border-color: #8fc4f7;
  background: #d9ecff;
  box-shadow: 0 5px 14px rgba(40, 120, 200, 0.22);
  transform: translateY(-1px);
}

.device-close:focus-visible {
  outline: 3px solid rgba(40, 120, 200, 0.24);
  outline-offset: 2px;
}
.device-overview {
  display: grid;
  width: 1180px;
  grid-template-columns: 400px 730px;
  gap: 50px;
  align-items: start;
  margin: 0 auto;
}
.device-photo {
  width: 400px;
  height: 374px;
  object-fit: contain;
  background: #f8fafc;
}
.device-meta h1 {
  margin: 8px 0 24px;
  font-size: 24px;
  line-height: 1.25;
  color: #111827;
}

.device-meta h1.device-title-long {
  font-size: 22px;
}
.device-info-table,
.device-detail-table,
.fee-table {
  width: 100%;
  border-collapse: collapse;
  color: #5e6673;
  font-size: 16px;
}
.device-info-table {
  table-layout: auto;
}
.device-detail-table,
.fee-table {
  table-layout: fixed;
}
.device-info-table th,
.device-info-table td,
.device-detail-table th,
.device-detail-table td,
.fee-table th,
.fee-table td {
  border: 1px solid #dbe3ee;
  padding: 11px 12px;
  vertical-align: middle;
}
.device-info-table th {
  width: 100px;
  color: #2b3037;
  font-weight: 700;
  background: #fff;
}
.device-info-table td {
  height: 44px;
  white-space: nowrap;
}
.device-section {
  position: relative;
  width: 1180px;
  margin-top: 88px;
  margin-left: auto;
  margin-right: auto;
}
.device-section h2 {
  display: inline-flex;
  align-items: center;
  height: 42px;
  width: 190px;
  justify-content: center;
  margin: 0;
  padding: 0;
  background: #4d73de;
  color: #fff;
  font-size: 21px;
  line-height: 1;
}
.machine-type {
  position: absolute;
  top: -4px;
  right: 0;
  display: flex;
  align-items: center;
  gap: 22px;
  color: #2b3037;
  font-size: 16px;
}
.machine-type button {
  min-width: 122px;
  height: 38px;
  border: 0;
  border-radius: 14px;
  background: #4d73de;
  color: #fff;
  font-weight: 700;
}
.device-detail-table th {
  width: 120px;
  color: #2b3037;
  font-weight: 700;
  background: #fff;
  text-align: left;
}
.device-detail-table td {
  line-height: 1.55;
}
.technical-indicator-lines > div + div {
  margin-top: 6px;
}
.fee-section {
  margin-top: 20px;
}
.fee-table {
  text-align: center;
}
.fee-table th {
  height: 48px;
  color: #2b3037;
  background: #eef4fb;
  font-weight: 700;
}
.fee-table td {
  height: 42px;
}
.pc-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.pc-card-link .pc-card {
  height: 100%;
}
.pc-detail-view {
  width: 100%;
}
.pc-detail-view iframe {
  display: block;
  width: 100%;
  height: 1px;
  min-height: 0;
  border: 0;
  background: #fff;
  overflow: hidden;
}

body.device-page.device-embed {
  min-width: 0;
  background: #fff;
}
.device-embed .pc-header,
.device-embed .pc-footer {
  display: none !important;
}
.device-embed .device-panel {
  width: 100%;
  min-width: 0;
  padding: 36px 0 40px;
  background: #fff;
}
.device-embed .device-overview,
.device-embed .device-section {
  width: min(1180px, 100%);
}

/* PC frame alignment lock: header items follow the main content edges. */
.pc-header {
  min-width: 1180px !important;
}
.pc-header .pc-brand {
  left: max(0px, calc((100vw - 1180px) / 2)) !important;
  top: calc(50% + 6px) !important;
}
.pc-header .pc-nav {
  right: calc(max(0px, calc((100vw - 1180px) / 2)) + 100px) !important;
}
@media (min-width: 1475px) {
  .pc-header .pc-brand {
    left: 10vw !important;
  }
  .pc-header .pc-nav {
    right: calc(10vw + 100px) !important;
  }
}

/* Embedded detail pages must fit the PC content area, not create a second wide frame. */
.device-embed .device-overview {
  grid-template-columns: minmax(260px, 38%) minmax(0, 1fr);
  gap: 36px;
}
.device-embed .device-photo {
  width: 100%;
}
.device-embed .device-info-table td {
  white-space: normal;
}
.device-embed .device-section {
  margin-top: 54px;
}

/* PC pages keep desktop layout at narrow browser widths; use horizontal scroll instead. */
body.pc-page {
  min-width: 1180px !important;
  overflow-x: auto;
}
.pc-page .pc-header {
  min-width: 1180px !important;
}
.pc-page .pc-hero,
.pc-page .pc-shell {
  width: 80vw !important;
  min-width: 1180px !important;
  max-width: none !important;
}
.pc-page .pc-shell {
  display: grid !important;
  grid-template-columns: 217px 1fr !important;
  gap: 52px !important;
  padding: 0 58px 74px 26px !important;
}
.pc-page .pc-side {
  transform: translateY(-40px) !important;
  margin-bottom: 0 !important;
}
.pc-page .pc-search {
  display: flex !important;
}
.pc-page .pc-search.hidden {
  display: none !important;
}

/* PC header: About Us dropdown sits immediately before Shared Services. */
.pc-page .pc-nav {
  gap: 0 !important;
  overflow: visible;
}
.pc-page .pc-nav > button,
.pc-page .pc-about-trigger {
  padding: 0 28px;
  white-space: nowrap;
}
.pc-page .pc-nav-dropdown {
  position: relative;
  height: 100%;
}
.pc-page .pc-about-trigger {
  display: flex;
  align-items: center;
  gap: 10px;
  height: 100%;
  border: 0;
  background: transparent;
  color: #fff;
  font-size: 19px;
  font-weight: 700;
}
.pc-page .pc-nav-dropdown:hover .pc-about-trigger,
.pc-page .pc-nav-dropdown:focus-within .pc-about-trigger,
.pc-page .pc-nav-dropdown.open .pc-about-trigger {
  background: rgba(255, 255, 255, 0.1);
}
.pc-page .pc-about-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 20;
  width: 164px;
  padding: 0;
  background: #fff;
  box-shadow: 0 10px 24px rgba(11, 43, 92, 0.16);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s;
}
.pc-page .pc-nav-dropdown:hover .pc-about-menu,
.pc-page .pc-nav-dropdown:focus-within .pc-about-menu,
.pc-page .pc-nav-dropdown.open .pc-about-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.pc-page .pc-about-menu button,
.pc-page .pc-about-menu a {
  display: block;
  width: 100%;
  height: 67px;
  padding: 0 24px;
  border: 0;
  border-bottom: 1px solid #e7e7e7;
  background: #fff;
  color: #222;
  text-align: left;
  font-size: 18px !important;
  font-weight: 400;
  line-height: 67px;
  text-decoration: none;
}
.pc-page .pc-about-menu button:last-child,
.pc-page .pc-about-menu a:last-child {
  border-bottom: 0;
}
.pc-page .pc-about-menu button:hover,
.pc-page .pc-about-menu button:focus-visible,
.pc-page .pc-about-menu a:hover,
.pc-page .pc-about-menu a:focus-visible {
  background: #f3f7fc;
  color: var(--blue);
  outline: none;
}
.pc-page .pc-about-menu .is-disabled {
  cursor: default;
  color: #9aa4b2;
  background: #f7f8fa;
}

/* About Us detail page reuses the PC frame and swaps only the left navigation and body. */
.pc-page .pc-nav-link {
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 28px;
  color: rgba(255, 255, 255, 0.86);
  font-size: 19px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}
.pc-page .pc-nav-link:hover,
.pc-page .pc-nav-link:focus-visible {
  color: #fff;
  outline: none;
}
.pc-page .pc-about-trigger.active::after {
  content: none;
}
.pc-page .pc-nav button.active::after {
  content: none;
}
.pc-page .pc-nav-label {
  position: relative;
  display: inline-block;
}
.pc-page .pc-nav button.active .pc-nav-label::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -12px;
  height: 3px;
  border-radius: 3px;
  background: #fff;
}

/* Make the current top-level section immediately distinguishable. */
.pc-page .pc-nav > button,
.pc-page .pc-about-trigger {
  transition: color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}
.pc-page .pc-nav > button.active,
.pc-page .pc-about-trigger.active {
  height: 52px;
  margin: 16px 4px;
  border-radius: 8px;
  background: #fff !important;
  color: var(--blue) !important;
  box-shadow: 0 5px 16px rgba(0, 38, 90, 0.2), inset 0 0 0 1px rgba(7, 94, 196, 0.08);
}
.pc-page .pc-nav button.active .pc-nav-label::after {
  content: none;
}
.pc-page .pc-nav > button:not(.active):hover,
.pc-page .pc-nav > button:not(.active):focus-visible,
.pc-page .pc-about-trigger:not(.active):hover,
.pc-page .pc-about-trigger:not(.active):focus-visible {
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  outline: none;
}
.pc-page .about-tree a,
.pc-page .about-tree button {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 58px;
  padding: 0 14px;
  border-bottom: 1px solid #edf0f5;
  background: #fff;
  color: #1f2937;
  font-size: 18px;
  text-decoration: none;
  text-align: left;
}
.pc-page .about-tree > button:not(.about-child-menu) {
  min-height: 58px;
  padding-left: 14px;
  font-size: 18px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.pc-page .about-tree a.active,
.pc-page .about-tree button.active {
  background: #dcebff;
  color: #0b5fbd;
  font-weight: 700;
}
.pc-page .about-tree a:hover,
.pc-page .about-tree a:focus-visible,
.pc-page .about-tree button:hover,
.pc-page .about-tree button:focus-visible {
  color: #0b5fbd;
  outline: none;
}
.pc-page .about-tree .is-disabled {
  cursor: default;
  color: #9aa4b2;
  background: #f7f8fa;
}
.pc-page .about-tree .about-child-menu {
  min-height: 54px;
  padding-left: 38px;
  padding-right: 10px;
  font-size: 17px;
  color: #526172;
  background: #f8fafc;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.pc-page .about-tree .about-child-menu.active {
  color: #0b5fbd;
  background: #edf5ff;
}
.pc-page .pc-main-content {
  min-width: 0;
  padding: 48px 0 72px;
}
.pc-page .pc-main-content > iframe {
  display: block;
  width: 100%;
  min-height: 690px;
  border: 0;
  background: #fff;
}
.subject-content-page,
.about-content-page {
  min-width: 0;
  overflow-x: hidden;
  background: #fff;
}
.shared-service-page .pc-content {
  padding: 0 0 72px;
}
.shared-service-page .pc-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
}
.shared-service-page .pc-card {
  min-height: 284px;
}
.shared-service-page .pc-img {
  height: 192px;
}
.shared-service-page .pc-search {
  display: flex;
}
.shared-service-page .pc-search.hidden {
  display: none !important;
}
.shared-service-page .service-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 24px 0 32px;
}
.shared-service-page .service-toolbar.hidden {
  display: none !important;
}
.shared-service-page .service-toolbar .pc-search {
  margin: 0;
}
.shared-service-page .equipment-count {
  flex: 0 0 auto;
  max-width: none;
  margin: 0 !important;
  color: #0b5fbd;
  font-size: 18px;
  font-weight: 700;
  line-height: 44px;
}
.lab-official-page {
  background: #fff;
}
.lab-official-content {
  width: 100%;
  min-width: 0;
  padding: 4px 0 100px;
  color: #292929;
}
.lab-official-header {
  margin-bottom: 42px;
  padding-left: 24px;
  border-left: 9px solid #08a9ef;
}
.lab-official-header h1 {
  margin: 0;
  color: #303030;
  font-size: 35px;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.lab-official-header p {
  margin: 7px 0 0;
  color: #383434;
  font-family: "Century Gothic", Arial, sans-serif;
  font-size: 19px;
  line-height: 1.35;
  font-weight: 400;
}
.lab-official-copy {
  margin-bottom: 28px;
}
.lab-official-copy p {
  margin: 0;
  text-align: justify;
}
.lab-official-copy-cn {
  color: #292929;
  font-size: 20px;
  line-height: 1.9;
  text-indent: 2em;
}
.lab-official-copy-cn strong {
  font-weight: 700;
}
.lab-official-copy-en {
  margin-top: 14px !important;
  color: #667085;
  font-family: Arial, sans-serif;
  font-size: 20px;
  line-height: 1.7;
  text-indent: 2em;
}
.lab-photo-wall {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: repeat(2, 190px);
  gap: 8px;
  width: 100%;
  overflow: hidden;
}
.lab-photo-wall img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #eef2f6;
}
.lab-photo-main {
  grid-column: span 2;
  grid-row: span 2;
  object-position: center center;
}
.lab-photo-top-left {
  object-position: center center;
}
.lab-photo-top-right {
  object-position: center center;
}
.lab-photo-bottom-left {
  object-position: center center;
}
.lab-photo-bottom-right {
  object-position: center center;
}
@media (max-width: 760px) {
  .lab-official-header h1 {
    font-size: 32px;
  }
  .lab-photo-wall {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: 260px repeat(2, 150px);
  }
  .lab-photo-main {
    grid-column: span 2;
    grid-row: span 1;
  }
}
.platform-introduction-page {
  padding: 0 0 48px;
  background: #fff;
}
.platform-introduction-content {
  width: 100%;
  max-width: none;
  margin: 0 auto;
  color: #302c2c;
}
.platform-introduction-section {
  padding-top: 54px;
}
.platform-introduction-section:first-child {
  padding-top: 30px;
}
.platform-section-heading {
  margin-bottom: 24px;
  padding-left: 24px;
  border-left: 14px solid #06a6df;
}
.platform-section-heading h1,
.platform-section-heading h2 {
  margin: 0;
  color: #2f2b2b;
  font-size: 34px;
  line-height: 1.25;
  font-weight: 800;
  letter-spacing: 1px;
}
.platform-section-heading p {
  margin: 4px 0 0;
  color: #383434;
  font-family: "Century Gothic", "Arial", sans-serif;
  font-size: 19px;
  line-height: 1.35;
  font-weight: 400;
}
.platform-section-copy {
  margin: 0 38px 30px;
}
.platform-section-copy p {
  margin: 0;
  color: #484343;
  font-size: 20px;
  line-height: 1.9;
  text-align: left;
}

/* The lab page is content-height driven: do not reserve a second blank viewport below it. */
.pc-page[data-view="lab"] .pc-shell {
  min-height: 0;
  padding-bottom: 0 !important;
}
.pc-page[data-view="lab"] .pc-main-content {
  padding-bottom: 0;
}
.pc-page[data-view="lab"] .pc-main-content > iframe {
  min-height: 0;
}
.platform-overview-copy p {
  text-indent: 2em;
  text-align: justify;
}
.platform-visual {
  display: block;
  width: 90%;
  height: auto;
  margin: 0 auto;
  background: #fff;
  transform: scaleY(0.9);
  --transform-origin: top center;
}
.platform-organization-section {
  padding-top: 62px;
}
.platform-organization-section .platform-visual {
  width: 64%;
}
@media (max-width: 900px) {
  .platform-introduction-content {
    width: calc(100% - 32px);
  }
  .platform-section-heading {
    padding-left: 18px;
    border-left-width: 10px;
  }
  .platform-section-heading h1,
  .platform-section-heading h2 {
    font-size: 28px;
  }
  .platform-section-heading p {
    font-size: 16px;
  }
  .platform-section-copy {
    margin-right: 8px;
    margin-left: 8px;
  }
  .platform-section-copy p {
    font-size: 18px;
  }
}
