.platform-screen:not(.is-yak-industry-chain) {
  --screen-color-card-bg: rgba(5, 31, 46, 0.84);
  --screen-color-card-header-bg: rgba(24, 92, 118, 0.72);
  --screen-color-card-border: rgba(78, 223, 244, 0.48);
  --screen-color-chart-grid-line: rgba(185, 235, 244, 0.2);
  --screen-color-text-weak: rgba(223, 247, 251, 0.72);
  --screen-card-title-size: 16px;
  --screen-card-title-line-height: 32px;
  --screen-card-title-weight: 600;
  --screen-chart-axis-size: 11px;
  --screen-chart-label-size: 12px;
  --screen-table-body-size: 12px;
  --screen-table-value-size: 13px;
  --screen-kpi-label-size: 13px;
  --screen-kpi-value-size: 29px;
  --screen-kpi-unit-size: 11px;
  --screen-popup-title-size: 16px;
  --screen-popup-body-size: 12px;
  font-family: var(--screen-font-ui, "PingFang SC", "Microsoft YaHei", sans-serif);
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;

  .m-card {
    isolation: isolate;
    transition: filter 180ms ease;
  }

  .m-card-bd::before {
    content: "";
    position: absolute;
    inset: 34px 1px 1px;
    z-index: -1;
    pointer-events: none;
    background:
      radial-gradient(circle at 18% 0%, rgba(66, 209, 231, 0.14), transparent 42%),
      linear-gradient(160deg, rgba(8, 43, 60, 0.92), rgba(3, 22, 34, 0.84));
    box-shadow:
      inset 0 0 0 1px rgba(81, 221, 242, 0.2),
      inset 0 18px 36px rgba(64, 190, 218, 0.06),
      0 10px 26px rgba(0, 8, 16, 0.24);
    backdrop-filter: blur(7px) saturate(1.08);
    clip-path: polygon(0 0, 100% 0, 100% 44%, 99.1% 46%, 99.1% 54%, 100% 56%, 100% 100%, 0 100%, 0 56%, 0.9% 54%, 0.9% 46%, 0 44%);
  }

  .m-card-hd-bg {
    opacity: 0.92;
    filter: saturate(0.86) brightness(0.96);
  }

  .m-card-bd-bg {
    opacity: 0.68;
  }

  .m-card-hd-title {
    left: 20px;
    font-family: var(--screen-font-ui, "PingFang SC", "Microsoft YaHei", sans-serif);
    font-size: var(--screen-card-title-size, 16px);
    font-weight: var(--screen-card-title-weight, 600);
    line-height: var(--screen-card-title-line-height, 32px);
    letter-spacing: 0.8px;
    text-shadow: 0 2px 10px rgba(0, 8, 14, 0.72);
  }

  .m-card-hd-zs1 {
    opacity: 0.58;
  }

  .m-card-hd .saoguang {
    opacity: 0.42;
  }

  .fgw-side-stack.is-left,
  .home-side-stack.is-left,
  .pasture-side-stack.is-left,
  .yak-side-stack.is-left {
    perspective: none !important;
    transform: translate3d(0, 0, 0) !important;
  }

  .fgw-side-stack.is-right,
  .home-side-stack.is-right,
  .pasture-side-stack.is-right,
  .yak-side-stack.is-right {
    perspective: none !important;
    transform: translate3d(0, 0, 0) !important;
  }

  .fgw-side-card:hover,
  .home-card:hover,
  .pasture-side-card:hover,
  .yak-side-card:hover {
    filter: brightness(1.06);
  }

  .business-panel.is-v21 {
    color: rgba(247, 254, 255, 0.96);
    font-family: var(--screen-font-ui, "PingFang SC", "Microsoft YaHei", sans-serif);

    .business-metric-item,
    .business-icon-metric-item,
    .business-spotlight-main,
    .business-spotlight-chip,
    .business-structure-focus,
    .business-structure-row,
    .business-line-chart,
    .business-heat-cell,
    .business-split-row {
      border-color: rgba(90, 220, 240, 0.18);
      background:
        linear-gradient(90deg, rgba(68, 210, 232, 0.07), transparent 62%),
        rgba(3, 25, 38, 0.52);
      box-shadow: inset 0 1px 0 rgba(232, 253, 255, 0.035);
    }

    .business-column-item strong,
    .business-peak-item strong,
    .business-bar-row strong,
    .business-donut-row strong,
    .business-metric-item strong {
      font-variant-numeric: tabular-nums;
      letter-spacing: 0.2px;
    }

    .business-columns::before,
    .business-peaks::before {
      opacity: 0.38;
    }

    .business-column-track,
    .business-bar-track,
    .business-peak-stage,
    .business-split-band {
      border-color: rgba(116, 224, 239, 0.18);
      background-color: rgba(76, 202, 220, 0.075);
    }

    .business-column-track i,
    .business-bar-track i,
    .business-peak-stage i,
    .business-split-band i {
      filter: saturate(0.92) brightness(1.04);
    }

    .business-donut-row,
    .business-rose-row {
      padding: 3px 5px 3px 7px;
      border-left: 2px solid var(--row-color, rgba(67, 217, 255, 0.72));
      background: linear-gradient(90deg, color-mix(in srgb, var(--row-color, #43d9ff) 10%, transparent), transparent 72%);
      transition: background 160ms ease, transform 160ms ease;
    }

    .business-donut-row.is-active,
    .business-rose-row.is-active {
      background: linear-gradient(90deg, color-mix(in srgb, var(--row-color, #43d9ff) 18%, transparent), transparent 82%);
      transform: translateX(2px);
    }

    .business-ring-track {
      stroke: rgba(165, 223, 233, 0.16);
    }

    .business-ring-halo,
    .business-rose-glow {
      opacity: 0.68;
    }

    .business-line-grid {
      stroke: rgba(199, 239, 246, 0.16);
    }

    .business-panel-empty {
      color: rgba(222, 247, 251, 0.65);
    }
  }

  .fgw-map-layer-tools .m-card-bd::before,
  .pasture-map-layer-tools .m-card-bd::before {
    background:
      radial-gradient(circle at 18% 0%, rgba(65, 215, 235, 0.18), transparent 42%),
      linear-gradient(150deg, rgba(5, 31, 46, 0.97), rgba(2, 17, 28, 0.95));
    box-shadow:
      inset 0 0 0 1px rgba(89, 225, 244, 0.28),
      0 18px 42px rgba(0, 7, 14, 0.34);
    backdrop-filter: blur(12px) saturate(1.12);
  }

  .layer-panel-item {
    min-height: 30px;
    border-color: rgba(90, 217, 237, 0.18);
    background: rgba(2, 20, 31, 0.64);
    color: rgba(232, 250, 253, 0.78);
    font-family: var(--screen-font-ui, "PingFang SC", "Microsoft YaHei", sans-serif);
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    transition: border-color 150ms ease, background 150ms ease, color 150ms ease, transform 150ms ease;

    &:hover,
    &:focus-visible {
      border-color: rgba(98, 226, 245, 0.52);
      background: rgba(28, 99, 119, 0.34);
      color: #ffffff;
      outline: none;
      transform: translateX(2px);
    }

    &.is-active {
      border-color: rgba(89, 223, 243, 0.68);
      background: linear-gradient(90deg, rgba(30, 132, 150, 0.48), rgba(3, 25, 37, 0.76));
      box-shadow: inset 3px 0 0 rgba(79, 226, 244, 0.86);
    }
  }

  .layer-panel-legend-row {
    border-color: rgba(89, 220, 239, 0.08);
    background: rgba(6, 28, 41, 0.34);

    &:not(:disabled):hover,
    &:not(:disabled):focus-visible {
      border-color: rgba(91, 224, 243, 0.42);
      background: rgba(32, 105, 122, 0.28);
      outline: none;
    }
  }

  .layer-panel-section-title,
  .layer-panel .legend-name {
    font-family: var(--screen-font-ui, "PingFang SC", "Microsoft YaHei", sans-serif);
    font-size: 12px;
    line-height: 16px;
  }

  .layer-panel-section-title {
    font-weight: 600;
    letter-spacing: 0.4px;
  }

  .layer-panel .legend-name {
    color: rgba(230, 249, 252, 0.78);
    font-weight: 500;
  }

  .layer-panel .legend-swatch {
    width: 17px;
    height: 11px;
    border-radius: 2px;
    box-shadow: 0 0 10px color-mix(in srgb, currentColor 24%, transparent);
  }

  .fgw-map-feature-info,
  .home-map-feature-info,
  .pasture-map-feature-info {
    z-index: 12;

    &::after {
      content: "";
      position: absolute;
      left: calc(var(--feature-panel-anchor-x, 50%) - 8px);
      bottom: -7px;
      z-index: 0;
      width: 16px;
      height: 16px;
      border-right: 1px solid rgba(89, 225, 244, 0.42);
      border-bottom: 1px solid rgba(89, 225, 244, 0.42);
      background: rgba(3, 25, 39, 0.98);
      box-shadow: 4px 4px 14px rgba(0, 7, 14, 0.28);
      transform: rotate(45deg);
      pointer-events: none;
    }

    .m-card {
      position: relative;
      z-index: 1;
      background: rgba(3, 25, 39, 0.97);
      box-shadow: 0 18px 42px rgba(0, 7, 14, 0.42);
      backdrop-filter: none;
    }

    .m-card-bd::before {
      background:
        radial-gradient(circle at 18% 0%, rgba(65, 215, 235, 0.18), transparent 42%),
        linear-gradient(150deg, rgba(5, 31, 46, 0.98), rgba(2, 17, 28, 0.98));
      box-shadow: inset 0 0 0 1px rgba(89, 225, 244, 0.28);
      backdrop-filter: none;
    }
  }

  .feature-info-card .m-card-hd-title {
    color: #ffffff;
    font-size: var(--screen-popup-title-size, 16px);
    font-weight: 600;
    background: none;
    -webkit-text-fill-color: currentColor;
  }

  .feature-info {
    padding: 8px 10px 10px;
    font-size: var(--screen-popup-body-size, 12px);
  }

  .feature-table {
    gap: 2px;
    padding-right: 6px;
    scrollbar-gutter: stable;
  }

  .feature-row {
    grid-template-columns: 108px minmax(0, 1fr);
    min-height: 27px;
    border: 1px solid rgba(101, 218, 235, 0.12);
    background: rgba(2, 20, 31, 0.54);

    &:first-child {
      border-top: 1px solid rgba(101, 218, 235, 0.12);
    }

    span {
      min-width: 0;
      padding: 4px 9px;
      border-right-color: rgba(101, 218, 235, 0.12);
      background: rgba(53, 159, 181, 0.1);
      color: rgba(211, 240, 245, 0.72);
      font-size: var(--screen-table-body-size, 12px);
      font-weight: 500;
      line-height: 17px;
      white-space: nowrap;
    }

    strong {
      min-width: 0;
      padding: 4px 10px;
      overflow: hidden;
      color: rgba(248, 254, 255, 0.96);
      font-size: var(--screen-table-value-size, 13px);
      font-weight: 600;
      line-height: 17px;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    &:first-child strong,
    &:nth-child(2) strong {
      color: #8ef1df;
      font-family: var(--screen-font-number, D-DIN, Arial, sans-serif);
      font-size: 14px;
      line-height: 17px;
      letter-spacing: 0.2px;
    }
  }

  .topic-switcher {
    filter: drop-shadow(0 8px 16px rgba(0, 8, 14, 0.3));
  }

  .topic-switcher-item {
    transition: filter 150ms ease, transform 150ms ease;

    &:hover,
    &:focus-visible {
      filter: brightness(1.12);
      outline: none;
      transform: translateY(-1px);
    }

    &.is-active {
      filter: saturate(1.12) brightness(1.08);
    }

    .topic-name,
    .topic-title {
      font-family: var(--screen-font-ui, "PingFang SC", "Microsoft YaHei", sans-serif);
      font-size: 13px;
      font-weight: 600;
      line-height: 16px;
      letter-spacing: 0.2px;
    }

    .topic-name small {
      font-family: var(--screen-font-ui, "PingFang SC", "Microsoft YaHei", sans-serif);
      font-size: 9px;
      font-weight: 500;
      line-height: 10px;
    }
  }

  .platform-map-tools button {
    transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;

    &:hover,
    &:focus-visible {
      border-color: rgba(104, 232, 249, 0.78);
      background: rgba(24, 113, 136, 0.5);
      outline: none;
      transform: translateY(-1px);
    }
  }

  .m-menu-item {
    font-family: var(--screen-font-ui, "PingFang SC", "Microsoft YaHei", sans-serif);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.4px;
    transition: color 150ms ease, filter 150ms ease, transform 150ms ease;

    &:hover,
    &:focus-visible {
      color: #ffffff;
      filter: brightness(1.1);
      outline: 1px solid rgba(91, 224, 244, 0.45);
      outline-offset: 2px;
      transform: translateY(-1px);
    }

    &.is-active {
      filter: saturate(1.06) brightness(1.08);
    }
  }

  .count-card {
    padding: 4px 10px 6px;
    background: linear-gradient(90deg, rgba(5, 28, 40, 0.26), transparent 82%);
    box-shadow: inset 0 -1px 0 rgba(83, 218, 238, 0.12);

    .count-card-title .title-zh {
      font-family: var(--screen-font-ui, "PingFang SC", "Microsoft YaHei", sans-serif);
      font-weight: 600;
      letter-spacing: 0.3px;
    }

    .count-card-right .value,
    .count-card-right .unit {
      font-variant-numeric: tabular-nums;
    }
  }
}

.business-chart-tooltip.is-v21 {
  padding: 10px 12px;
  border-color: rgba(95, 226, 244, 0.54);
  border-radius: 2px;
  background:
    radial-gradient(circle at 12% 0%, rgba(70, 230, 173, 0.13), transparent 54%),
    rgba(2, 20, 31, 0.96);
  box-shadow: 0 14px 34px rgba(0, 7, 14, 0.38), inset 0 0 18px rgba(67, 217, 255, 0.05);
  backdrop-filter: blur(10px);
}

@media (prefers-reduced-motion: reduce) {
  .platform-screen:not(.is-yak-industry-chain) *,
  .platform-screen:not(.is-yak-industry-chain) *::before,
  .platform-screen:not(.is-yak-industry-chain) *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
