
    #fm-page-links,
    #fm-page-links * {
      box-sizing: border-box;
    }

    #fm-page-links {
      --fmpl-ink: #171717;
      --fmpl-muted: #696963;
      --fmpl-line: #dedbd3;
      --fmpl-paper: #ffffff;
      --fmpl-soft: #f5f2ec;
      --fmpl-accent: #1e6b55;
      --fmpl-accent-dark: #124c3c;
      background: linear-gradient(180deg, #f7f4ef 0%, #ffffff 100%);
      color: var(--fmpl-ink);
      font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
      padding: 68px 20px;
    }

    #fm-page-links .fmpl-shell {
      width: min(1180px, 100%);
      margin: 0 auto;
    }

    #fm-page-links .fmpl-heading {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 28px;
      margin-bottom: 30px;
    }

    #fm-page-links .fmpl-kicker {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin: 0 0 10px;
      color: var(--fmpl-accent-dark);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 0.16em;
      text-transform: uppercase;
    }

    #fm-page-links .fmpl-kicker::before {
      width: 28px;
      height: 2px;
      background: var(--fmpl-accent);
      content: "";
    }

    #fm-page-links h2 {
      margin: 0;
      font-size: clamp(28px, 4vw, 44px);
      font-weight: 700;
      letter-spacing: -0.035em;
      line-height: 1.05;
    }

    #fm-page-links .fmpl-intro {
      max-width: 430px;
      margin: 0;
      color: var(--fmpl-muted);
      font-size: 15px;
      line-height: 1.7;
      text-align: right;
    }

    #fm-page-links .fmpl-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 16px;
    }

    #fm-page-links .fmpl-card {
      position: relative;
      display: flex;
      min-height: 224px;
      flex-direction: column;
      justify-content: space-between;
      overflow: hidden;
      border: 1px solid var(--fmpl-line);
      border-radius: 18px;
      background: var(--fmpl-paper);
      color: var(--fmpl-ink);
      padding: 24px;
      text-decoration: none;
      transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
    }

    #fm-page-links .fmpl-card::after {
      position: absolute;
      right: -34px;
      bottom: -48px;
      width: 128px;
      height: 128px;
      border-radius: 50%;
      background: rgba(30, 107, 85, 0.07);
      content: "";
      transition: transform 180ms ease;
    }

    #fm-page-links .fmpl-card:hover,
    #fm-page-links .fmpl-card:focus-visible {
      border-color: rgba(30, 107, 85, 0.55);
      background: #fcfffd;
      box-shadow: 0 16px 38px rgba(23, 23, 23, 0.09);
      outline: none;
      transform: translateY(-4px);
    }

    #fm-page-links .fmpl-card:hover::after,
    #fm-page-links .fmpl-card:focus-visible::after {
      transform: scale(1.18);
    }

    #fm-page-links .fmpl-card[aria-disabled="true"] {
      cursor: default;
      opacity: 0.62;
    }

    #fm-page-links .fmpl-card[aria-disabled="true"]:hover {
      border-color: var(--fmpl-line);
      background: var(--fmpl-paper);
      box-shadow: none;
      transform: none;
    }

    #fm-page-links .fmpl-icon {
      position: relative;
      z-index: 1;
      display: inline-grid;
      width: 52px;
      height: 52px;
      place-items: center;
      border-radius: 15px;
      background: var(--fmpl-soft);
      color: var(--fmpl-accent-dark);
    }

    #fm-page-links .fmpl-icon svg {
      width: 27px;
      height: 27px;
      fill: none;
      stroke: currentColor;
      stroke-linecap: round;
      stroke-linejoin: round;
      stroke-width: 1.8;
    }

    #fm-page-links .fmpl-card-bottom {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: end;
      gap: 16px;
    }

    #fm-page-links .fmpl-zh {
      display: block;
      margin-bottom: 7px;
      font-size: 19px;
      font-weight: 700;
      letter-spacing: 0.01em;
      line-height: 1.3;
    }

    #fm-page-links .fmpl-en {
      display: block;
      color: var(--fmpl-muted);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 0.06em;
      line-height: 1.45;
      text-transform: uppercase;
    }

    #fm-page-links .fmpl-arrow {
      display: inline-grid;
      width: 36px;
      height: 36px;
      flex: 0 0 auto;
      place-items: center;
      border-radius: 50%;
      background: var(--fmpl-ink);
      color: #fff;
      font-size: 17px;
      transition: background 180ms ease, transform 180ms ease;
    }

    #fm-page-links .fmpl-card:hover .fmpl-arrow,
    #fm-page-links .fmpl-card:focus-visible .fmpl-arrow {
      background: var(--fmpl-accent-dark);
      transform: translateX(3px);
    }

    #fm-page-links .fmpl-card[aria-disabled="true"] .fmpl-arrow {
      display: none;
    }

    #fm-page-links .fmpl-pending {
      display: none;
      margin-top: 8px;
      color: #8a6849;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 0.04em;
    }

    #fm-page-links .fmpl-card[aria-disabled="true"] .fmpl-pending {
      display: block;
    }

    @media (max-width: 900px) {
      #fm-page-links {
        padding: 54px 20px;
      }

      #fm-page-links .fmpl-heading {
        align-items: start;
        flex-direction: column;
        gap: 12px;
      }

      #fm-page-links .fmpl-intro {
        max-width: 620px;
        text-align: left;
      }

      #fm-page-links .fmpl-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 560px) {
      #fm-page-links {
        padding: 44px 14px;
      }

      #fm-page-links .fmpl-grid {
        grid-template-columns: 1fr;
        gap: 12px;
      }

      #fm-page-links .fmpl-card {
        min-height: 176px;
        padding: 20px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      #fm-page-links .fmpl-card,
      #fm-page-links .fmpl-card::after,
      #fm-page-links .fmpl-arrow {
        transition: none;
      }
    }
  